1 # Copyright 2020 Canonical Ltd.
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
17 default: opensourcemano/keystone:latest
18 description: The docker image to install.
22 The username for accessing the registry specified in image.
27 The password associated with image_username for accessing
28 the registry specified in image.
33 The maximum file size, in megabytes.
35 If there is a reverse proxy in front of Keystone, it may
36 need to be configured to handle the requested size.
38 ingress_whitelist_source_range:
41 A comma-separated list of CIDRs to store in the
42 ingress.kubernetes.io/whitelist-source-range annotation.
44 This can be used to lock down access to
45 Keystone based on source IP address.
49 description: TLS Secret name
53 description: Ingress URL
57 description: Region ID to be created when starting the service
61 description: Keystone DB Password
65 description: Admin username to be created when starting the service
69 description: Admin password to be created when starting the service
73 description: Admin project to be created when starting the service
77 description: Service Username to be created when starting the service
81 description: Service Password to be created when starting the service
85 description: Service Project to be created when starting the service
89 description: User domain name (Hardcoded in the container start.sh script)
94 Project domain name (Hardcoded in the container start.sh script)
98 description: Boolean to enable/disable LDAP authentication
100 ldap_authentication_domain_name:
102 description: Name of the domain which use LDAP authentication
106 description: URL of the LDAP server
107 default: "ldap://localhost"
110 description: User to bind and search for users
114 description: Password to bind and search for users
119 Root of the tree in LDAP server in which Keystone will search for users
121 ldap_user_objectclass:
124 LDAP object class that Keystone will filter on within user_tree_dn to
125 find user objects. Any objects of other classes will be ignored.
126 default: inetOrgPerson
127 ldap_user_id_attribute:
130 This set of options define the mapping to LDAP attributes for the three
131 key user attributes supported by Keystone. The LDAP attribute chosen for
132 user_id must be something that is immutable for a user and no more than
133 64 characters in length. Notice that Distinguished Name (DN) may be
134 longer than 64 characters and thus is not suitable. An uid, or mail may
137 ldap_user_name_attribute:
140 This set of options define the mapping to LDAP attributes for the three
141 key user attributes supported by Keystone. The LDAP attribute chosen for
142 user_id must be something that is immutable for a user and no more than
143 64 characters in length. Notice that Distinguished Name (DN) may be
144 longer than 64 characters and thus is not suitable. An uid, or mail may
147 ldap_user_pass_attribute:
150 This set of options define the mapping to LDAP attributes for the three
151 key user attributes supported by Keystone. The LDAP attribute chosen for
152 user_id must be something that is immutable for a user and no more than
153 64 characters in length. Notice that Distinguished Name (DN) may be
154 longer than 64 characters and thus is not suitable. An uid, or mail may
156 default: userPassword
160 This filter option allow additional filter (over and above
161 user_objectclass) to be included into the search of user. One common use
162 of this is to provide more efficient searching, where the recommended
163 search for user objects is (&(objectCategory=person)(objectClass=user)).
164 By specifying user_objectclass as user and user_filter as
165 objectCategory=person in the Keystone configuration file, this can be
168 ldap_user_enabled_attribute:
171 In Keystone, a user entity can be either enabled or disabled. Setting
172 the above option will give a mapping to an equivalent attribute in LDAP,
173 allowing your LDAP management tools to disable a user.
175 ldap_user_enabled_mask:
178 Some LDAP schemas, rather than having a dedicated attribute for user
179 enablement, use a bit within a general control attribute (such as
180 userAccountControl) to indicate this. Setting user_enabled_mask will
181 cause Keystone to look at only the status of this bit in the attribute
182 specified by user_enabled_attribute, with the bit set indicating the
185 ldap_user_enabled_default:
188 Most LDAP servers use a boolean or bit in a control field to indicate
189 enablement. However, some schemas might use an integer value in an
190 attribute. In this situation, set user_enabled_default to the integer
191 value that represents a user being enabled.
193 ldap_user_enabled_invert:
196 Some LDAP schemas have an “account locked” attribute, which is the
197 equivalent to account being “disabled.” In order to map this to the
198 Keystone enabled attribute, you can utilize the user_enabled_invert
199 setting in conjunction with user_enabled_attribute to map the lock
200 status to disabled in Keystone.
205 Enable Transport Layer Security (TLS) for providing a secure connection
206 from Keystone to LDAP (StartTLS, not LDAPS).
208 ldap_tls_cacert_base64:
211 CA certificate in Base64 format (if you have the PEM file, text inside
212 "-----BEGIN CERTIFICATE-----"/"-----END CERTIFICATE-----" tags).
217 Defines how the certificates are checked for validity in the client
218 (i.e., Keystone end) of the secure connection (this doesn’t affect what
219 level of checking the server is doing on the certificates it receives
220 from Keystone). Possible values are "demand", "never", and "allow". The
221 default of demand means the client always checks the certificate and
222 will drop the connection if it is not provided or invalid. never is the
223 opposite—it never checks it, nor requires it to be provided. allow means
224 that if it is not provided then the connection is allowed to continue,
225 but if it is provided it will be checked—and if invalid, the connection