diff --git a/src/api-lib/vnc_api.py b/src/api-lib/vnc_api.py index 0771a217457..de87f41a5a2 100644 --- a/src/api-lib/vnc_api.py +++ b/src/api-lib/vnc_api.py @@ -275,7 +275,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) @@ -808,4 +808,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