Skip to content

Commit

Permalink
Add vnc_api method set_user_roles (and only set_user_roles)
Browse files Browse the repository at this point in the history
This allows to manually set the roles of the user in the HTTP header.

Conflicts:
	src/api-lib/vnc_api.py

Partial-Bug: 1546057
(cherry picked from commit e18b36e)

Change-Id: I1aa133431e42b4aeb02944ea1420bf13b232f98d
  • Loading branch information
Antoine Eiche committed Feb 18, 2016
1 parent 26a7e03 commit 364bb09
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion src/api-lib/vnc_api.py
Expand Up @@ -281,7 +281,7 @@ def __init__(self, username=None, password=None, tenant_name=None,
if 'user' in self._user_info:
self._headers['X-API-USER'] = self._user_info['user']
if 'role' in self._user_info:
self._headers['X-API-ROLE'] = self._user_info['role']
self.set_user_roles([self._user_info['role']])

#self._http = HTTPClient(self._web_host, self._web_port,
# network_timeout = 300)
Expand Down Expand Up @@ -814,4 +814,12 @@ def resource_list(self, obj_type, parent_id=None, parent_fq_name=None,
return resource_objs
#end resource_list

def set_user_roles(self, roles):
"""Park user roles for forwarding to API server for RBAC.
:param roles: list of roles
"""
self._headers['X-API-ROLE'] = (',').join(roles)
#end set_user_roles

#end class VncApi

0 comments on commit 364bb09

Please sign in to comment.