新浪博客

Liberty: The request you have made requires authentication. (HTTP 401)

2016-11-17 15:41阅读:

Liberty: The request you have made requires authentication. (HTTP 401)


Openstack Keystone 在执行查询命令时候报错
这个错误困扰我很久了,一直不死心,终于在今天解决,展现如下的错误:
root@Linux-node1 ~]# export OS_TENANT_NAME=default
[root@Linux-node1 ~]# export OS_USERNAME=keystone
[root@Linux-node1 ~]# export OS_PASSWORD=1111.aaa
[root@Linux-node1 ~]# export OS_SERVICE_TOKEN=26c91c9f42014f4a71fa
[root@Linux-node1 ~]# export OS_AUTH_URL=http://Linux-node1.openstack:35357/v3
[root@Linux-node1 ~]# export OS_IDENTITY_API_VERSION=3
[root@Linux-node1 ~]# openstack service create --debug --name keystone --description 'OpenStack Identity' identity
WARNING: openstackclient.common.utils is deprecated and will be removed after Jun 2017. Please use osc_lib.utils
START with options: [u'service', u'create', u'--debug', u'--name', u'keystone', u'--description', u'OpenStack Identity', u'
identity']
options: Namespace(access_key='', access_secret='***', access_token='***', access_token_endpoint='', access_token_type='', auth_type='', auth_url='http://Linux-node1.openstack:35357/v3', authorization_code='', cacert=None, cert='', client_id='', client_secret='***', cloud='', consumer_key='', consumer_secret='***', debug=True, default_domain='default', default_domain_id='', default_domain_name='', deferred_help=False, discovery_endpoint='', domain_id='', domain_name='', endpoint='', identity_provider='', identity_provider_url='', insecure=None, interface='', key='', log_file=None, old_profile=None, openid_scope='', os_beta_command=False, os_compute_api_version='', os_data_processing_api_version='1.1', os_identity_api_version='3', os_image_api_version='', os_network_api_version='', os_object_api_version='', os_project_id=None, os_project_name=None, os_volume_api_version='', passcode='', password='***', profile=None, project_domain_id='', project_domain_name='', project_id='', project_name='default', protocol='', redirect_uri='', region_name='', timing=False, token='***', trust_id='', url='', user_domain_id='', user_domain_name='', user_id='', username='keystone', verbose_level=3, verify=None)
Auth plugin password selected
auth_config_hook(): {'auth_type': 'password', 'beta_command': False, u'compute_api_version': u'2', 'key': None, u'database_api_version': u'1.0', u'metering_api_version': u'2', 'auth_url': 'http://Linux-node1.openstack:35357/v3', u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', 'networks': [], u'image_api_version': u'2', 'verify': True, u'dns_api_version': u'2', u'object_store_api_version': u'1', u'status': u'active', 'verbose_level': 3, 'region_name': '', 'api_timeout': None, u'baremetal_api_version': u'1', 'auth': {'project_name': 'default', 'user_domain_id': 'default', 'project_domain_id': 'default'}, 'default_domain': 'default', 'debug': True, u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', u'orchestration_api_version': u'1', 'timing': False, 'password': '1111.aaa', 'cacert': None, u'key_manager_api_version': u'v1', 'data_processing_api_version': '1.1', 'deferred_help': False, u'identity_api_version': '3', u'volume_api_version': u'2', 'username': 'keystone', 'cert': None, u'secgroup_source': u'neutron', u'container_api_version': u'1', u'interface': None, u'disable_vendor_agent': {}}
defaults: {u'auth_type': 'password', u'status': u'active', u'compute_api_version': u'2', 'key': None, u'database_api_version': u'1.0', 'api_timeout': None, u'baremetal_api_version': u'1', u'image_api_version': u'2', u'metering_api_version': u'2', u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', u'orchestration_api_version': u'1', 'cacert': None, u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', u'key_manager_api_version': u'v1', 'verify': True, u'identity_api_version': u'2.0', u'volume_api_version': u'2', 'cert': None, u'secgroup_source': u'neutron', u'container_api_version': u'1', u'dns_api_version': u'2', u'object_store_api_version': u'1', u'interface': None, u'disable_vendor_agent': {}}
cloud cfg: {'auth_type': 'password', 'beta_command': False, u'compute_api_version': u'2', u'orchestration_api_version': u'1', u'database_api_version': u'1.0', u'metering_api_version': u'2', 'auth_url': 'http://Linux-node1.openstack:35357/v3', u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', 'networks': [], u'image_api_version': u'2', 'verify': True, u'dns_api_version': u'2', u'object_store_api_version': u'1', u'status': u'active', 'verbose_level': 3, 'region_name': '', 'api_timeout': None, u'baremetal_api_version': u'1', 'auth': {'username': 'keystone', 'project_name': 'default', 'user_domain_id': 'default', 'auth_url': 'http://Linux-node1.openstack:35357/v3', 'password': '***', 'project_domain_id': 'default'}, 'default_domain': 'default', u'container_api_version': u'1', u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', 'key': None, 'timing': False, 'password': '***', 'cacert': None, u'key_manager_api_version': u'v1', 'data_processing_api_version': '1.1', 'deferred_help': False, u'identity_api_version': '3', u'volume_api_version': u'2', 'username': 'keystone', 'cert': None, u'secgroup_source': u'neutron', 'debug': True, u'interface': None, u'disable_vendor_agent': {}}
compute API version 2, cmd group openstack.compute.v2
network API version 2, cmd group openstack.network.v2
image API version 2, cmd group openstack.image.v2
volume API version 2, cmd group openstack.volume.v2
identity API version 3, cmd group openstack.identity.v3
object_store API version 1, cmd group openstack.object_store.v1
data_processing API version 1.1, cmd group openstack.data_processing.v1
Auth plugin password selected
auth_config_hook(): {'auth_type': 'password', 'beta_command': False, u'compute_api_version': u'2', 'key': None, u'database_api_version': u'1.0', u'metering_api_version': u'2', 'auth_url': 'http://Linux-node1.openstack:35357/v3', u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', 'networks': [], u'image_api_version': u'2', 'verify': True, u'dns_api_version': u'2', u'object_store_api_version': u'1', u'status': u'active', 'verbose_level': 3, 'region_name': '', 'api_timeout': None, u'baremetal_api_version': u'1', 'auth': {'project_name': 'default', 'user_domain_id': 'default', 'project_domain_id': 'default'}, 'default_domain': 'default', 'debug': True, u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', u'orchestration_api_version': u'1', 'timing': False, 'password': '1111.aaa', 'cacert': None, u'key_manager_api_version': u'v1', 'data_processing_api_version': '1.1', 'deferred_help': False, u'identity_api_version': '3', u'volume_api_version': u'2', 'username': 'keystone', 'cert': None, u'secgroup_source': u'neutron', u'container_api_version': u'1', u'interface': None, u'disable_vendor_agent': {}}
Auth plugin password selected
auth_config_hook(): {'auth_type': 'password', 'beta_command': False, u'compute_api_version': u'2', 'key': None, u'database_api_version': u'1.0', u'metering_api_version': u'2', 'auth_url': 'http://Linux-node1.openstack:35357/v3', u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', 'networks': [], u'image_api_version': u'2', 'verify': True, u'dns_api_version': u'2', u'object_store_api_version': u'1', u'status': u'active', 'verbose_level': 3, 'region_name': '', 'api_timeout': None, u'baremetal_api_version': u'1', 'auth': {'project_name': 'default', 'user_domain_id': 'default', 'project_domain_id': 'default'}, 'default_domain': 'default', 'debug': True, u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', u'orchestration_api_version': u'1', 'timing': False, 'password': '1111.aaa', 'cacert': None, u'key_manager_api_version': u'v1', 'data_processing_api_version': '1.1', 'deferred_help': False, u'identity_api_version': '3', u'volume_api_version': u'2', 'username': 'keystone', 'cert': None, u'secgroup_source': u'neutron', u'container_api_version': u'1', u'interface': None, u'disable_vendor_agent': {}}
command: service create -> openstackclient.identity.v3.service.CreateService
Using auth plugin: password
Using parameters {'username': 'keystone', 'project_name': 'default', 'user_domain_id': 'default', 'auth_url': 'http://Linux-node1.openstack:35357/v3', 'password': '***', 'project_domain_id': 'default'}
Get auth_ref
REQ: curl -g -i -X GET http://Linux-node1.openstack:35357/v3 -H 'Accept: application/json' -H 'User-Agent: osc-lib keystoneauth1/2.12.1 python-requests/2.10.0 CPython/2.7.5'
Starting new HTTP connection (1): Linux-node1.openstack
'GET /v3 HTTP/1.1' 200 261
RESP: [200] Date: Thu, 17 Nov 2016 04:42:52 GMT Server: Apache/2.4.6 (CentOS) mod_wsgi/3.4 Python/2.7.5 Vary: X-Auth-Token x-openstack-request-id: req-d4360b84-4e76-4463-a904-6f489654913c Content-Length: 261 Keep-Alive: timeout=5, max=100 Connection: Keep-Alive Content-Type: application/json
RESP BODY: {'version': {'status': 'stable', 'updated': '2016-10-06T00:00:00Z', 'media-types': [{'base': 'application/json', 'type': 'application/vnd.openstack.identity-v3+json'}], 'id': 'v3.7', 'links': [{'href': 'http://Linux-node1.openstack:35357/v3/', 'rel': 'self'}]}}
Making authentication request to http://Linux-node1.openstack:35357/v3/auth/tokens
'POST /v3/auth/tokens HTTP/1.1' 401 114
Request returned failure status: 401
The request you have made requires authentication. (HTTP 401) (Request-ID: req-48a3f2b8-1c74-4c3e-875f-09a6a0812364)
Traceback (most recent call last):
File '/usr/lib/python2.7/site-packages/cliff/app.py', line 367, in run_subcommand
self.prepare_to_run_command(cmd)
File '/usr/lib/python2.7/site-packages/openstackclient/shell.py', line 196, in prepare_to_run_command
return super(OpenStackShell, self).prepare_to_run_command(cmd)
File '/usr/lib/python2.7/site-packages/osc_lib/shell.py', line 434, in prepare_to_run_command
self.client_manager.auth_ref
File '/usr/lib/python2.7/site-packages/osc_lib/clientmanager.py', line 198, in auth_ref
self._auth_ref = self.auth.get_auth_ref(self.session)
File '/usr/lib/python2.7/site-packages/keystoneauth1/identity/generic/base.py', line 181, in get_auth_ref
return self._plugin.get_auth_ref(session, **kwargs)
File '/usr/lib/python2.7/site-packages/keystoneauth1/identity/v3/base.py', line 167, in get_auth_ref
authenticated=False, log=False, **rkwargs)
File '/usr/lib/python2.7/site-packages/keystoneauth1/session.py', line 675, in post
return self.request(url, 'POST', **kwargs)
File '/usr/lib/python2.7/site-packages/osc_lib/session.py', line 40, in request
resp = super(TimingSession, self).request(url, method, **kwargs)
File '/usr/lib/python2.7/site-packages/positional/__init__.py', line 101, in inner
return wrapped(*args, **kwargs)
File '/usr/lib/python2.7/site-packages/keystoneauth1/session.py', line 570, in request
raise exceptions.from_response(resp, method, url)
Unauthorized: The request you have made requires authentication. (HTTP 401) (Request-ID: req-48a3f2b8-1c74-4c3e-875f-09a6a0812364)
clean_up CreateService: The request you have made requires authentication. (HTTP 401) (Request-ID: req-48a3f2b8-1c74-4c3e-875f-09a6a0812364)
Traceback (most recent call last):
File '/usr/lib/python2.7/site-packages/osc_lib/shell.py', line 135, in run
ret_val = super(OpenStackShell, self).run(argv)
File '/usr/lib/python2.7/site-packages/cliff/app.py', line 255, in run
result = self.run_subcommand(remainder)
File '/usr/lib/python2.7/site-packages/osc_lib/shell.py', line 180, in run_subcommand
ret_value = super(OpenStackShell, self).run_subcommand(argv)
File '/usr/lib/python2.7/site-packages/cliff/app.py', line 367, in run_subcommand
self.prepare_to_run_command(cmd)
File '/usr/lib/python2.7/site-packages/openstackclient/shell.py', line 196, in prepare_to_run_command
return super(OpenStackShell, self).prepare_to_run_command(cmd)
File '/usr/lib/python2.7/site-packages/osc_lib/shell.py', line 434, in prepare_to_run_command
self.client_manager.auth_ref
File '/usr/lib/python2.7/site-packages/osc_lib/clientmanager.py', line 198, in auth_ref
self._auth_ref = self.auth.get_auth_ref(self.session)
File '/usr/lib/python2.7/site-packages/keystoneauth1/identity/generic/base.py', line 181, in get_auth_ref
return self._plugin.get_auth_ref(session, **kwargs)
File '/usr/lib/python2.7/site-packages/keystoneauth1/identity/v3/base.py', line 167, in get_auth_ref
authenticated=False, log=False, **rkwargs)
File '/usr/lib/python2.7/site-packages/keystoneauth1/session.py', line 675, in post
return self.request(url, 'POST', **kwargs)
File '/usr/lib/python2.7/site-packages/osc_lib/session.py', line 40, in request
resp = super(TimingSession, self).request(url, method, **kwargs)
File '/usr/lib/python2.7/site-packages/positional/__init__.py', line 101, in inner
return wrapped(*args, **kwargs)
File '/usr/lib/python2.7/site-packages/keystoneauth1/session.py', line 570, in request
raise exceptions.from_response(resp, method, url)
Unauthorized: The request you have made requires authentication. (HTTP 401) (Request-ID: req-48a3f2b8-1c74-4c3e-875f-09a6a0812364)


这个命令在执行的时候加上了 --debug 看到的这个信息,注意加粗字体部分报错,及环境变量设置,
[root@Linux-node1 ~]# export OS_SERVICE_TOKEN=26c91c9f42014f4a71fa
[root@Linux-node1 ~]# export OS_AUTH_URL=http://Linux-node1.openstack:35357/v3
这里正确的环境变量应该是
export OS_TOKEN=26c91c9f42014f4a71fa
export OS_URL=http://Linux-node1.openstack:35357/v3
export OS_IDENTITY_API_VERSION=3
注意:Linux-node1.openstack 加到hosts文件中进行解析
记住在keystone.conf中的配置主机名要和这里环境变量的主机名一致
[database]
connection = mysql://root:1111.ooo@Linux-node1.openstack/keystone
root为mysql中能访问keystone数据库的用户名,1111.ooo为密码
修改正后再执行就修改了错误了,如下:
[root@Linux-node1 ~]# export OS_USERNAME=root
[root@Linux-node1 ~]# export OS_PASSWORD=1111.aaa
[root@Linux-node1 ~]# export OS_TOKEN=26c91c9f42014f4a71fa
[root@Linux-node1 ~]# export OS_URL=http://Linux-node1.openstack:35357/v3
[root@Linux-node1 ~]# export OS_IDENTITY_API_VERSION=3
[root@Linux-node1 ~]# openstack user list
WARNING: openstackclient.common.utils is deprecated and will be removed after Jun 2017. Please use osc_lib.utils
+----------------------------------+---------+
| ID | Name |
+----------------------------------+---------+
| 2cde17f34cab4560908208f41b00795e | admin |
| 5711b86a71194310a526295c5c2eade8 | neutron |
| 5e819a53a6dd4c5ea20539e9953867fb | glance |
| 7003e102d3524624a3f2f4e1c26a3b7c | ec2 |
| 839b226dce0742f8b51727e2de2d9f68 | swift |
| b9aad152670940deba2c5183e14c097d | nova |
+----------------------------------+---------+
[root@Linux-node1 ~]# openstack domain list
WARNING: openstackclient.common.utils is deprecated and will be removed after Jun 2017. Please use osc_lib.utils
+---------+---------+---------+--------------------+
| ID | Name | Enabled | Description |
+---------+---------+---------+--------------------+
| default | Default | True | The default domain |
+---------+---------+---------+--------------------+

我的更多文章

下载客户端阅读体验更佳

APP专享