|
1 | 1 | [DEFAULT] |
2 | | -# Show more verbose log output (sets INFO log level output) |
3 | | -verbose = False |
4 | | - |
5 | | -# Show debugging output in logs (sets DEBUG log level output) |
6 | | -debug = False |
7 | | - |
8 | | -# Which backend store should Keystone use by default. |
9 | | -# Default: 'sqlite' |
10 | | -# Available choices are 'sqlite' [future will include LDAP, PAM, etc] |
11 | | -default_store = sqlite |
12 | | - |
13 | | -# Log to this file. Make sure you do not set the same log |
14 | | -# file for both the API and registry servers! |
15 | | -log_file = %DEST%/keystone/keystone.log |
16 | | - |
17 | | -# List of backends to be configured |
18 | | -backends = keystone.backends.sqlalchemy |
19 | | -#For LDAP support, add: ,keystone.backends.ldap |
| 2 | +public_port = 5000 |
| 3 | +admin_port = 35357 |
| 4 | +admin_token = %SERVICE_TOKEN% |
| 5 | +compute_port = 3000 |
| 6 | +verbose = True |
| 7 | +debug = True |
| 8 | +# commented out so devstack logs to stdout |
| 9 | +# log_file = %DEST%/keystone/keystone.log |
20 | 10 |
|
21 | | -# Dictionary Maps every service to a header.Missing services would get header |
22 | | -# X_(SERVICE_NAME) Key => Service Name, Value => Header Name |
23 | | -service_header_mappings = { |
24 | | - 'nova' : 'X-Server-Management-Url', |
25 | | - 'swift' : 'X-Storage-Url', |
26 | | - 'cdn' : 'X-CDN-Management-Url'} |
| 11 | +# ================= Syslog Options ============================ |
| 12 | +# Send logs to syslog (/dev/log) instead of to file specified |
| 13 | +# by `log-file` |
| 14 | +use_syslog = False |
27 | 15 |
|
28 | | -#List of extensions currently supported |
29 | | -extensions= osksadm,oskscatalog |
| 16 | +# Facility to use. If unset defaults to LOG_USER. |
| 17 | +# syslog_log_facility = LOG_LOCAL0 |
30 | 18 |
|
31 | | -# Address to bind the API server |
32 | | -# TODO Properties defined within app not available via pipeline. |
33 | | -service_host = 0.0.0.0 |
| 19 | +[sql] |
| 20 | +connection = %SQL_CONN% |
| 21 | +idle_timeout = 30 |
| 22 | +min_pool_size = 5 |
| 23 | +max_pool_size = 10 |
| 24 | +pool_timeout = 200 |
34 | 25 |
|
35 | | -# Port the bind the API server to |
36 | | -service_port = 5000 |
| 26 | +[identity] |
| 27 | +driver = keystone.identity.backends.sql.Identity |
37 | 28 |
|
38 | | -# SSL for API server |
39 | | -service_ssl = False |
| 29 | +[catalog] |
| 30 | +driver = keystone.catalog.backends.templated.TemplatedCatalog |
| 31 | +template_file = %KEYSTONE_DIR%/etc/default_catalog.templates |
40 | 32 |
|
41 | | -# Address to bind the Admin API server |
42 | | -admin_host = 0.0.0.0 |
| 33 | +[token] |
| 34 | +driver = keystone.token.backends.kvs.Token |
43 | 35 |
|
44 | | -# Port the bind the Admin API server to |
45 | | -admin_port = 35357 |
| 36 | +[policy] |
| 37 | +driver = keystone.policy.backends.simple.SimpleMatch |
46 | 38 |
|
47 | | -# SSL for API Admin server |
48 | | -admin_ssl = False |
| 39 | +[ec2] |
| 40 | +driver = keystone.contrib.ec2.backends.sql.Ec2 |
49 | 41 |
|
50 | | -# Keystone certificate file (modify as needed) |
51 | | -# Only required if *_ssl is set to True |
52 | | -certfile = /etc/keystone/ssl/certs/keystone.pem |
| 42 | +[filter:debug] |
| 43 | +paste.filter_factory = keystone.common.wsgi:Debug.factory |
53 | 44 |
|
54 | | -# Keystone private key file (modify as needed) |
55 | | -# Only required if *_ssl is set to True |
56 | | -keyfile = /etc/keystone/ssl/private/keystonekey.pem |
| 45 | +[filter:token_auth] |
| 46 | +paste.filter_factory = keystone.middleware:TokenAuthMiddleware.factory |
57 | 47 |
|
58 | | -# Keystone trusted CA certificates (modify as needed) |
59 | | -# Only required if *_ssl is set to True |
60 | | -ca_certs = /etc/keystone/ssl/certs/ca.pem |
| 48 | +[filter:admin_token_auth] |
| 49 | +paste.filter_factory = keystone.middleware:AdminTokenAuthMiddleware.factory |
61 | 50 |
|
62 | | -# Client certificate required |
63 | | -# Only relevant if *_ssl is set to True |
64 | | -cert_required = True |
| 51 | +[filter:json_body] |
| 52 | +paste.filter_factory = keystone.middleware:JsonBodyMiddleware.factory |
65 | 53 |
|
66 | | -#Role that allows to perform admin operations. |
67 | | -keystone_admin_role = admin |
| 54 | +[filter:crud_extension] |
| 55 | +paste.filter_factory = keystone.contrib.admin_crud:CrudExtension.factory |
68 | 56 |
|
69 | | -#Role that allows to perform service admin operations. |
70 | | -keystone_service_admin_role = KeystoneServiceAdmin |
| 57 | +[filter:ec2_extension] |
| 58 | +paste.filter_factory = keystone.contrib.ec2:Ec2Extension.factory |
71 | 59 |
|
72 | | -#Tells whether password user need to be hashed in the backend |
73 | | -hash_password = True |
| 60 | +[app:public_service] |
| 61 | +paste.app_factory = keystone.service:public_app_factory |
74 | 62 |
|
75 | | -[keystone.backends.sqlalchemy] |
76 | | -# SQLAlchemy connection string for the reference implementation registry |
77 | | -# server. Any valid SQLAlchemy connection string is fine. |
78 | | -# See: http://bit.ly/ideIpI |
79 | | -sql_connection = %SQL_CONN% |
80 | | -backend_entities = ['UserRoleAssociation', 'Endpoints', 'Role', 'Tenant', |
81 | | - 'User', 'Credentials', 'EndpointTemplates', 'Token', |
82 | | - 'Service'] |
| 63 | +[app:admin_service] |
| 64 | +paste.app_factory = keystone.service:admin_app_factory |
83 | 65 |
|
84 | | -# Period in seconds after which SQLAlchemy should reestablish its connection |
85 | | -# to the database. |
86 | | -sql_idle_timeout = 30 |
| 66 | +[pipeline:public_api] |
| 67 | +pipeline = token_auth admin_token_auth json_body debug ec2_extension public_service |
87 | 68 |
|
88 | | -[pipeline:admin] |
89 | | -pipeline = |
90 | | - urlrewritefilter |
91 | | - admin_api |
| 69 | +[pipeline:admin_api] |
| 70 | +pipeline = token_auth admin_token_auth json_body debug ec2_extension crud_extension admin_service |
92 | 71 |
|
93 | | -[pipeline:keystone-legacy-auth] |
94 | | -pipeline = |
95 | | - urlrewritefilter |
96 | | - legacy_auth |
97 | | - service_api |
| 72 | +[app:public_version_service] |
| 73 | +paste.app_factory = keystone.service:public_version_app_factory |
98 | 74 |
|
99 | | -[app:service_api] |
100 | | -paste.app_factory = keystone.server:service_app_factory |
| 75 | +[app:admin_version_service] |
| 76 | +paste.app_factory = keystone.service:admin_version_app_factory |
101 | 77 |
|
102 | | -[app:admin_api] |
103 | | -paste.app_factory = keystone.server:admin_app_factory |
| 78 | +[pipeline:public_version_api] |
| 79 | +pipeline = public_version_service |
104 | 80 |
|
105 | | -[filter:urlrewritefilter] |
106 | | -paste.filter_factory = keystone.middleware.url:filter_factory |
| 81 | +[pipeline:admin_version_api] |
| 82 | +pipeline = admin_version_service |
107 | 83 |
|
108 | | -[filter:legacy_auth] |
109 | | -paste.filter_factory = keystone.frontends.legacy_token_auth:filter_factory |
| 84 | +[composite:main] |
| 85 | +use = egg:Paste#urlmap |
| 86 | +/v2.0 = public_api |
| 87 | +/ = public_version_api |
110 | 88 |
|
111 | | -[filter:debug] |
112 | | -paste.filter_factory = keystone.common.wsgi:debug_filter_factory |
| 89 | +[composite:admin] |
| 90 | +use = egg:Paste#urlmap |
| 91 | +/v2.0 = admin_api |
| 92 | +/ = admin_version_service |
0 commit comments