
Change-Id: Id4f645de23b9f0aec1914edbaef11cdb6e6dc0af Story: 2006166 Task: 37337 Depends-On: https://review.opendev.org/692861 Signed-off-by: Don Penney <don.penney@windriver.com>
49 lines
1.8 KiB
Python
49 lines
1.8 KiB
Python
# Copyright (c) 2015 Huawei Tech. Co., Ltd.
|
|
# All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
#
|
|
# Copyright (c) 2017 Wind River Systems, Inc.
|
|
#
|
|
# The right to copy, distribute, modify, or otherwise make use
|
|
# of this software may be licensed only pursuant to the terms
|
|
# of an applicable Wind River license agreement.
|
|
#
|
|
|
|
|
|
from pecan import request
|
|
|
|
import dcmanager.common.context as k_context
|
|
|
|
|
|
def extract_context_from_environ():
|
|
context_paras = {'auth_token': 'HTTP_X_AUTH_TOKEN',
|
|
'user': 'HTTP_X_USER_ID',
|
|
'project': 'HTTP_X_TENANT_ID',
|
|
'user_name': 'HTTP_X_USER_NAME',
|
|
'tenant_name': 'HTTP_X_PROJECT_NAME',
|
|
'domain': 'HTTP_X_DOMAIN_ID',
|
|
'roles': 'HTTP_X_ROLE',
|
|
'user_domain': 'HTTP_X_USER_DOMAIN_ID',
|
|
'project_domain': 'HTTP_X_PROJECT_DOMAIN_ID',
|
|
'request_id': 'openstack.request_id'}
|
|
|
|
environ = request.environ
|
|
|
|
for key in context_paras:
|
|
context_paras[key] = environ.get(context_paras[key])
|
|
role = environ.get('HTTP_X_ROLE')
|
|
|
|
context_paras['is_admin'] = 'admin' in role.split(',')
|
|
return k_context.RequestContext(**context_paras)
|