Chapter 1. barbican
The following chapter contains information about the configuration options in the barbican
service.
1.1. barbican.conf
This section contains options for the /etc/barbican/barbican.conf
file.
1.1.1. DEFAULT
The following table outlines the options available under the [DEFAULT]
group in the /etc/barbican/barbican.conf
file.
.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Role used to identify an authenticated user as administrator. |
| boolean value | Allow unauthenticated users to access the API with read-only privileges. This only applies when using ContextMiddleware. |
| string value | File name for the paste.deploy config for api service |
| string value | Enable eventlet backdoor. Acceptable values are 0, <port>, and <start>:<end>, where 0 results in listening on a random tcp port number; <port> results in listening on the specified port number (and not enabling backdoor if that port is in use); and <start>:<end> results in listening on the smallest unused port number within the specified range of port numbers. The chosen port is displayed in the service’s log file. |
| string value | Enable eventlet backdoor, using the provided path as a unix socket that can receive connections. This option is mutually exclusive with backdoor_port in that only one should be provided. If both are provided then the existence of this option overrides the usage of that option. Inside the path {pid} will be replaced with the PID of the current process. |
| integer value | Timeout for client connections' socket operations. If an incoming connection is idle for this number of seconds it will be closed. A value of 0 means wait forever. |
| integer value | The pool size limit for connections expiration policy |
| integer value | The time-to-live in sec of idle connections in the pool |
| string value | The default exchange under which topics are scoped. May be overridden by an exchange name specified in the transport_url option. |
| boolean value | Create the Barbican database on service startup. |
| boolean value | If set to true, the logging level will be set to DEBUG instead of the default INFO level. |
| integer value | Default page size for the limit paging URL parameter. |
| list value | List of package logging levels in logger=LEVEL pairs. This option is ignored if log_config_append is set. |
| integer value | Size of executor thread pool when executor is threading or eventlet. |
| boolean value | Enables or disables fatal status of deprecations. |
| string value | Host name, for use in HATEOAS-style references Note: Typically this would be the load balanced endpoint that clients would use to communicate back with this service. If a deployment wants to derive host from wsgi request instead then make this blank. Blank is needed to override default config value which is http://localhost:9311 |
`instance_format = [instance: %(uuid)s] ` | string value | The format for an instance that is passed with the log message. |
`instance_uuid_format = [instance: %(uuid)s] ` | string value | The format for an instance UUID that is passed with the log message. |
| string value | The name of a logging configuration file. This file is appended to any existing logging configuration files. For details about logging configuration files, see the Python logging module documentation. Note that when logging configuration files are used then all logging configuration is set in the configuration file and other logging configuration options are ignored (for example, log-date-format). |
| string value | Defines the format string for %%(asctime)s in log records. Default: %(default)s . This option is ignored if log_config_append is set. |
| string value | (Optional) The base directory used for relative log_file paths. This option is ignored if log_config_append is set. |
| string value | (Optional) Name of log file to send logging output to. If no default is set, logging will go to stderr as defined by use_stderr. This option is ignored if log_config_append is set. |
| integer value | The amount of time before the log files are rotated. This option is ignored unless log_rotation_type is setto "interval". |
| string value | Rotation interval type. The time of the last file change (or the time when the service was started) is used when scheduling the next rotation. |
| string value | Log rotation type. |
| string value | Format string to use for log messages with context. Used by oslo_log.formatters.ContextFormatter |
| string value | Additional data to append to log message when logging level for the message is DEBUG. Used by oslo_log.formatters.ContextFormatter |
| string value | Format string to use for log messages when context is undefined. Used by oslo_log.formatters.ContextFormatter |
| string value | Prefix each line of exception output with this format. Used by oslo_log.formatters.ContextFormatter |
| string value | Defines the format string for %(user_identity)s that is used in logging_context_format_string. Used by oslo_log.formatters.ContextFormatter |
| integer value | Maximum allowed http request size against the barbican-api. |
| integer value | Maximum allowed secret size in bytes. |
| integer value | Maximum line size of message headers to be accepted. max_header_line may need to be increased when using large tokens (typically those generated when keystone is configured to use PKI tokens with big service catalogs). |
| integer value | Maximum page size for the limit paging URL parameter. |
| integer value | Maximum number of rotated log files. |
| integer value | Log file maximum size in MB. This option is ignored if "log_rotation_type" is not set to "size". |
| boolean value | Enables or disables publication of error events. |
| integer value | Maximum number of logged messages per rate_limit_interval. |
| string value | Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG or empty string. Logs with level greater or equal to rate_limit_except_level are not filtered. An empty string means that all levels are filtered. |
| integer value | Interval, number of seconds, of log rate limiting. |
| integer value | Size of RPC connection pool. |
| integer value | Seconds to wait for a response from a call. |
| boolean value | Some periodic tasks can be run in a separate process. Should we run them here? |
| string value | SQLAlchemy connection string for the reference implementation registry server. Any valid SQLAlchemy connection string is fine. See: http://www.sqlalchemy.org/docs/05/reference/sqlalchemy/connections.html#sqlalchemy.create_engine. Note: For absolute addresses, use //// slashes after sqlite:. |
| integer value |
Period in seconds after which SQLAlchemy should reestablish its connection to the database. MySQL uses a default |
| integer value | Maximum number of database connection retries during startup. Set to -1 to specify an infinite retry count. |
| string value | Accepts a class imported from the sqlalchemy.pool module, and handles the details of building the pool for you. If commented out, SQLAlchemy will select based on the database dialect. Other options are QueuePool (for SQLAlchemy-managed connections) and NullPool (to disabled SQLAlchemy management of connections). See http://docs.sqlalchemy.org/en/latest/core/pooling.html for more details |
| boolean value | Show SQLAlchemy pool-related debugging output in logs (sets DEBUG log level output) if specified. |
| integer value | The maximum overflow size of the pool used by SQLAlchemy. When the number of checked-out connections reaches the size set in sql_pool_size, additional connections will be returned up to this limit. It follows then that the total number of simultaneous connections the pool will allow is sql_pool_size + sql_pool_max_overflow. Can be set to -1 to indicate no overflow limit, so no limit will be placed on the total number of concurrent connections. Comment out to allow SQLAlchemy to select the default. |
| integer value | Size of pool used by SQLAlchemy. This is the largest number of connections that will be kept persistently in the pool. Can be set to 0 to indicate no size limit. To disable pooling, use a NullPool with sql_pool_class instead. Comment out to allow SQLAlchemy to select the default. |
| integer value | Interval between retries of opening a SQL connection. |
| string value | Syslog facility to receive log lines. This option is ignored if log_config_append is set. |
| integer value | Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X. |
| string value | The network address and optional user credentials for connecting to the messaging backend, in URL format. The expected format is: driver://[user:pass@]host:port[,[userN:passN@]hostN:portN]/virtual_host?query Example: rabbit://rabbitmq:password@127.0.0.1:5672// For full details on the fields in the URL see the documentation of oslo_messaging.TransportURL at https://docs.openstack.org/oslo.messaging/latest/reference/transport.html |
| boolean value | Enable journald for logging. If running in a systemd environment you may wish to enable journal support. Doing so will use the journal native protocol which includes structured metadata in addition to log messages.This option is ignored if log_config_append is set. |
| boolean value | Use JSON formatting for logging. This option is ignored if log_config_append is set. |
| boolean value | Use syslog for logging. Existing syslog format is DEPRECATED and will be changed later to honor RFC5424. This option is ignored if log_config_append is set. |
| boolean value | Log output to Windows Event Log. |
| boolean value | Log output to standard error. This option is ignored if log_config_append is set. |
| boolean value | Uses logging handler designed to watch file system. When log file is moved or removed this handler will open a new log file with specified path instantaneously. It makes sense only if log_file option is specified and Linux platform is used. This option is ignored if log_config_append is set. |
| integer value | Size of the pool of greenthreads used by wsgi |
| boolean value | If False, closes the client socket connection explicitly. |
| string value | A python format string that is used as the template to generate log lines. The following values can beformatted into it: client_ip, date_time, request_line, status_code, body_length, wall_seconds. |
1.1.2. certificate
The following table outlines the options available under the [certificate]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| multi valued | List of certificate plugins to load. |
| string value | Extension namespace to search for plugins. |
1.1.3. certificate_event
The following table outlines the options available under the [certificate_event]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| multi valued | List of certificate plugins to load. |
| string value | Extension namespace to search for eventing plugins. |
1.1.4. cors
The following table outlines the options available under the [cors]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Indicate that the actual request can include user credentials |
| list value | Indicate which header field names may be used during the actual request. |
| list value | Indicate which methods can be used during the actual request. |
| list value | Indicate whether this resource may be shared with the domain received in the requests "origin" header. Format: "<protocol>://<host>[:<port>]", no trailing slash. Example: https://horizon.example.com |
| list value | Indicate which headers are safe to expose to the API. Defaults to HTTP Simple Headers. |
| integer value | Maximum cache age of CORS preflight requests. |
1.1.5. crypto
The following table outlines the options available under the [crypto]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| multi valued | List of crypto plugins to load. |
| string value | Extension namespace to search for plugins. |
1.1.6. dogtag_plugin
The following table outlines the options available under the [dogtag_plugin]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | List of automatically approved enrollment profiles |
| string value | Time in days for CA entries to expire |
| string value | Hostname for the Dogtag instance |
| port value | Port for the Dogtag instance |
| string value | Path to the NSS certificate database |
| string value | Password for the NSS certificate databases |
| string value | Path to PEM file for authentication |
| string value | User friendly plugin name |
| string value | Working directory for Dogtag plugin |
| integer value | Retries when storing or generating secrets |
| string value | Profile for simple CMC requests |
1.1.7. keystone_authtoken
The following table outlines the options available under the [keystone_authtoken]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Config Section from which to load plugin specific options |
| string value | Authentication type to load |
| string value | (DEPRECATED FOR REMOVAL) Complete "public" Identity API endpoint. This endpoint should not be an "admin" endpoint, as it should be accessible by all end users. Unauthenticated clients are redirected to this endpoint to authenticate. Although this endpoint should ideally be unversioned, client support in the wild varies. If you’re using a versioned v2 endpoint here, then this should not be the same endpoint the service user utilizes for validating tokens, because normal end users may not be able to reach that endpoint. This option is deprecated in favor of www_authenticate_uri and will be removed in the S release. |
| string value | API version of the Identity API endpoint. |
| string value |
Request environment key where the Swift cache object is stored. When auth_token middleware is deployed with a Swift cache, use this option to have the middleware share a caching backend with swift. Otherwise, use the |
| string value | A PEM encoded Certificate Authority to use when verifying HTTPs connections. Defaults to system CAs. |
| string value | Required if identity server requires client certificate |
| boolean value | Do not handle authorization requests within the middleware, but delegate the authorization decision to downstream WSGI components. |
| string value | Used to control the use and type of token binding. Can be set to: "disabled" to not check token binding. "permissive" (default) to validate binding information if the bind type is of a form known to the server and ignore it if not. "strict" like "permissive" but if the bind type is unknown the token will be rejected. "required" any form of token binding is needed to be allowed. Finally the name of a binding method that must be present in tokens. |
| integer value | Request timeout value for communicating with Identity API server. |
| integer value | How many times are we trying to reconnect when communicating with Identity API Server. |
| boolean value | (Optional) Indicate whether to set the X-Service-Catalog header. If False, middleware will not ask for service catalog on token validation and will not set the X-Service-Catalog header. |
| boolean value | Verify HTTPS connections. |
| string value | Interface to use for the Identity API endpoint. Valid values are "public", "internal" or "admin"(default). |
| string value | Required if identity server requires client certificate |
| integer value | (Optional) Number of seconds that an operation will wait to get a memcached client connection from the pool. |
| integer value | (Optional) Number of seconds memcached server is considered dead before it is tried again. |
| integer value | (Optional) Maximum total number of open connections to every memcached server. |
| integer value | (Optional) Socket timeout in seconds for communicating with a memcached server. |
| integer value | (Optional) Number of seconds a connection to memcached is held unused in the pool before it is closed. |
| string value | (Optional, mandatory if memcache_security_strategy is defined) This string is used for key derivation. |
| string value | (Optional) If defined, indicate whether token data should be authenticated or authenticated and encrypted. If MAC, token data is authenticated (with HMAC) in the cache. If ENCRYPT, token data is encrypted and authenticated in the cache. If the value is not one of these options or empty, auth_token will raise an exception on initialization. |
| boolean value | (Optional) Use the advanced (eventlet safe) memcached client pool. The advanced pool will only work under python 2.x. |
| list value | Optionally specify a list of memcached server(s) to use for caching. If left undefined, tokens will instead be cached in-process. |
| string value | The region in which the identity server can be found. |
| list value | A choice of roles that must be present in a service token. Service tokens are allowed to request that an expired token can be used and so this check should tightly control that only actual services should be sending this token. Roles here are applied as an ANY check so any role in this list must be present. For backwards compatibility reasons this currently only affects the allow_expired check. |
| boolean value | For backwards compatibility reasons we must let valid service tokens pass that don’t pass the service_token_roles check as valid. Setting this true will become the default in a future release and should be enabled if possible. |
| string value | The name or type of the service as it appears in the service catalog. This is used to validate tokens that have restricted access rules. |
| integer value | In order to prevent excessive effort spent validating tokens, the middleware caches previously-seen tokens for a configurable duration (in seconds). Set to -1 to disable caching completely. |
| string value | Complete "public" Identity API endpoint. This endpoint should not be an "admin" endpoint, as it should be accessible by all end users. Unauthenticated clients are redirected to this endpoint to authenticate. Although this endpoint should ideally be unversioned, client support in the wild varies. If you’re using a versioned v2 endpoint here, then this should not be the same endpoint the service user utilizes for validating tokens, because normal end users may not be able to reach that endpoint. |
1.1.8. keystone_notifications
The following table outlines the options available under the [keystone_notifications]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | True enables requeue feature in case of notification processing error. Enable this only when underlying transport supports this feature. |
| string value | The default exchange under which topics are scoped. May be overridden by an exchange name specified in the transport_url option. |
| boolean value | True enables keystone notification listener functionality. |
| integer value | Define the number of max threads to be used for notification server processing functionality. |
| string value | Keystone notification queue topic name. This name needs to match one of values mentioned in Keystone deployment’s notification_topics configuration e.g. notification_topics=notifications, barbican_notificationsMultiple servers may listen on a topic and messages will be dispatched to one of the servers in a round-robin fashion. That’s why Barbican service should have its own dedicated notification queue so that it receives all of Keystone notifications. |
| string value | Version of tasks invoked via notifications |
1.1.9. kmip_plugin
The following table outlines the options available under the [kmip_plugin]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | File path to concatenated "certification authority" certificates |
| string value | File path to local client certificate |
| string value | Address of the KMIP server |
| string value | File path to local client certificate keyfile |
| string value | Password for authenticating with KMIP server |
| boolean value | Only support PKCS#1 encoding of asymmetric keys |
| string value | User friendly plugin name |
| port value | Port for the KMIP server |
| string value | SSL version, maps to the module ssl’s constants |
| string value | Username for authenticating with KMIP server |
1.1.10. oslo_messaging_amqp
The following table outlines the options available under the [oslo_messaging_amqp]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Indicates the addressing mode used by the driver. Permitted values: legacy - use legacy non-routable addressing routable - use routable addresses dynamic - use legacy addresses if the message bus does not support routing otherwise use routable addressing |
| string value | Appended to the address prefix when sending to a group of consumers. Used by the message bus to identify messages that should be delivered in a round-robin fashion across consumers. |
| string value | address prefix used when broadcasting to all servers |
| integer value | Increase the connection_retry_interval by this many seconds after each unsuccessful failover attempt. |
| integer value | Seconds to pause before attempting to re-connect. |
| integer value | Maximum limit for connection_retry_interval + connection_retry_backoff |
| string value | Name for the AMQP container. must be globally unique. Defaults to a generated UUID |
| string value | Exchange name used in notification addresses. Exchange name resolution precedence: Target.exchange if set else default_notification_exchange if set else control_exchange if set else notify |
| integer value | The deadline for a sent notification message delivery. Only used when caller does not provide a timeout expiry. |
| integer value | The maximum number of attempts to re-send a reply message which failed due to a recoverable error. |
| integer value | The deadline for an rpc reply message delivery. |
| string value | Exchange name used in RPC addresses. Exchange name resolution precedence: Target.exchange if set else default_rpc_exchange if set else control_exchange if set else rpc |
| integer value | The deadline for an rpc cast or call message delivery. Only used when caller does not provide a timeout expiry. |
| integer value | The duration to schedule a purge of idle sender links. Detach link after expiry. |
| string value | address prefix when sending to any server in group |
| integer value | Timeout for inactive connections (in seconds) |
| integer value | Time to pause between re-connecting an AMQP 1.0 link that failed due to a recoverable error. |
| string value | Appended to the address prefix when sending a fanout message. Used by the message bus to identify fanout messages. |
| string value | Address prefix for all generated Notification addresses |
| integer value | Window size for incoming Notification messages |
| multi valued | Send messages of this type pre-settled. Pre-settled messages will not receive acknowledgement from the peer. Note well: pre-settled messages may be silently discarded if the delivery fails. Permitted values: rpc-call - send RPC Calls pre-settled rpc-reply- send RPC Replies pre-settled rpc-cast - Send RPC Casts pre-settled notify - Send Notifications pre-settled |
| boolean value | Enable virtual host support for those message buses that do not natively support virtual hosting (such as qpidd). When set to true the virtual host name will be added to all message bus addresses, effectively creating a private subnet per virtual host. Set to False if the message bus supports virtual hosting using the hostname field in the AMQP 1.0 Open performative as the name of the virtual host. |
| integer value | Window size for incoming RPC Reply messages. |
| string value | Address prefix for all generated RPC addresses |
| integer value | Window size for incoming RPC Request messages |
`sasl_config_dir = ` | string value | Path to directory that contains the SASL configuration |
`sasl_config_name = ` | string value | Name of configuration file (without .conf suffix) |
`sasl_default_realm = ` | string value | SASL realm to use if no realm present in username |
`sasl_mechanisms = ` | string value | Space separated list of acceptable SASL mechanisms |
| string value | address prefix used when sending to a specific server |
| boolean value | Attempt to connect via SSL. If no other ssl-related parameters are given, it will use the system’s CA-bundle to verify the server’s certificate. |
`ssl_ca_file = ` | string value | CA certificate PEM file used to verify the server’s certificate |
`ssl_cert_file = ` | string value | Self-identifying certificate PEM file for client authentication |
`ssl_key_file = ` | string value | Private key PEM file used to sign ssl_cert_file certificate (optional) |
| string value | Password for decrypting ssl_key_file (if encrypted) |
| boolean value | By default SSL checks that the name in the server’s certificate matches the hostname in the transport_url. In some configurations it may be preferable to use the virtual hostname instead, for example if the server uses the Server Name Indication TLS extension (rfc6066) to provide a certificate per virtual host. Set ssl_verify_vhost to True if the server’s SSL certificate uses the virtual host name instead of the DNS name. |
| boolean value | Debug: dump AMQP frames to stdout |
| string value | Appended to the address prefix when sending to a particular RPC/Notification server. Used by the message bus to identify messages sent to a single destination. |
1.1.11. oslo_messaging_kafka
The following table outlines the options available under the [oslo_messaging_kafka]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | The compression codec for all data generated by the producer. If not set, compression will not be used. Note that the allowed values of this depend on the kafka version |
| integer value | (DEPRECATED FOR REMOVAL) The pool size limit for connections expiration policy |
| integer value | (DEPRECATED FOR REMOVAL) The time-to-live in sec of idle connections in the pool |
| string value | Group id for Kafka consumer. Consumers in one group will coordinate message consumption |
| boolean value | Enable asynchronous consumer commits |
| floating point value | Default timeout(s) for Kafka consumers |
| integer value | Max fetch bytes of Kafka consumer |
| integer value | The maximum number of records returned in a poll call |
| integer value | (DEPRECATED FOR REMOVAL) Pool Size for Kafka Consumers |
| integer value | Size of batch for the producer async send |
| floating point value | Upper bound on the delay for KafkaProducer batching in seconds |
| string value | Mechanism when security protocol is SASL |
| string value | Protocol used to communicate with brokers |
`ssl_cafile = ` | string value | CA certificate PEM file used to verify the server certificate |
1.1.12. oslo_messaging_notifications
The following table outlines the options available under the [oslo_messaging_notifications]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| multi valued | The Drivers(s) to handle sending notifications. Possible values are messaging, messagingv2, routing, log, test, noop |
| integer value | The maximum number of attempts to re-send a notification message which failed to be delivered due to a recoverable error. 0 - No retry, -1 - indefinite |
| list value | AMQP topic used for OpenStack notifications. |
| string value | A URL representing the messaging driver to use for notifications. If not set, we fall back to the same configuration used for RPC. |
1.1.13. oslo_messaging_rabbit
The following table outlines the options available under the [oslo_messaging_rabbit]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Auto-delete queues in AMQP. |
| boolean value | Use durable queues in AMQP. |
| integer value | Enable/Disable the RabbitMQ mandatory flag for direct send. The direct send is used as reply,so the MessageUndeliverable exception is raised in case the client queue does not exist. |
| boolean value | EXPERIMENTAL: Run the health check heartbeat threadthrough a native python thread. By default if thisoption isn’t provided the health check heartbeat willinherit the execution model from the parent process. Byexample if the parent process have monkey patched thestdlib by using eventlet/greenlet then the heartbeatwill be run through a green thread. |
| integer value | How often times during the heartbeat_timeout_threshold we check the heartbeat. |
| integer value | Number of seconds after which the Rabbit broker is considered down if heartbeat’s keep-alive fails (0 disables heartbeat). |
| string value | EXPERIMENTAL: Possible values are: gzip, bz2. If not set compression will not be used. This option may not be available in future versions. |
| string value | Determines how the next RabbitMQ node is chosen in case the one we are currently connected to becomes unavailable. Takes effect only if more than one RabbitMQ node is provided in config. |
| integer value | How long to wait a missing client before abandoning to send it its replies. This value should not be longer than rpc_response_timeout. |
| floating point value | How long to wait before reconnecting in response to an AMQP consumer cancel notification. |
| boolean value | Try to use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you must wipe the RabbitMQ database. In RabbitMQ 3.0, queue mirroring is no longer controlled by the x-ha-policy argument when declaring a queue. If you just want to make sure that all queues (except those with auto-generated names) are mirrored across all nodes, run: "rabbitmqctl set_policy HA ^(?!amq\.).* {"ha-mode": "all"} " |
| integer value | Maximum interval of RabbitMQ connection retries. Default is 30 seconds. |
| string value | The RabbitMQ login method. |
| integer value | Specifies the number of messages to prefetch. Setting to zero allows unlimited messages. |
| integer value | How long to backoff for between retries when connecting to RabbitMQ. |
| integer value | How frequently to retry connecting with RabbitMQ. |
| integer value | Positive integer representing duration in seconds for queue TTL (x-expires). Queues which are unused for the duration of the TTL are automatically deleted. The parameter affects only reply and fanout queues. |
| boolean value | Connect over SSL. |
`ssl_ca_file = ` | string value | SSL certification authority file (valid only if SSL enabled). |
`ssl_cert_file = ` | string value | SSL cert file (valid only if SSL enabled). |
`ssl_key_file = ` | string value | SSL key file (valid only if SSL enabled). |
`ssl_version = ` | string value | SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some distributions. |
1.1.14. oslo_middleware
The following table outlines the options available under the [oslo_middleware]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Whether the application is behind a proxy or not. This determines if the middleware should parse the headers or not. |
1.1.15. oslo_policy
The following table outlines the options available under the [oslo_policy]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value |
This option controls whether or not to enforce scope when evaluating policies. If |
| string value | Default rule. Enforced when a requested rule is not found. |
| multi valued | Directories where policy configuration files are stored. They can be relative to any directory in the search path defined by the config_dir option, or absolute paths. The file defined by policy_file must exist for these directories to be searched. Missing or empty directories are ignored. |
| string value | The relative or absolute path of a file that maps roles to permissions for a given service. Relative paths must be specified in relation to the configuration file setting this option. |
| string value | Content Type to send and receive data for REST based policy check |
| string value | Absolute path to ca cert file for REST based policy check |
| string value | Absolute path to client cert for REST based policy check |
| string value | Absolute path client key file REST based policy check |
| boolean value | server identity verification for REST based policy check |
1.1.16. p11_crypto_plugin
The following table outlines the options available under the [p11_crypto_plugin]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Generate IVs for CKM_AES_GCM mechanism. |
| boolean value | Always set CKA_SENSITIVE=CK_TRUE including CKA_EXTRACTABLE=CK_TRUE keys. |
| string value | Secret encryption mechanism |
| string value | HMAC Key Type |
| string value | HMAC Key Generation Algorithm |
| string value | HMAC key wrap mechanism |
| string value | Master HMAC Key label (as stored in the HSM) |
| string value | Path to vendor PKCS11 library |
| string value | Password to login to PKCS11 session |
| string value | Master KEK label (as stored in the HSM) |
| integer value | Master KEK length in bytes. |
| integer value | Project KEK Cache Item Limit |
| integer value | Project KEK Cache Time To Live, in seconds |
| integer value | Project KEK length in bytes. |
| string value | User friendly plugin name |
| boolean value | Flag for Read/Write Sessions |
`seed_file = ` | string value | File to pull entropy for seeding RNG |
| integer value | Amount of data to read from file for seed |
| integer value | (Optional) HSM Slot ID that contains the token device to be used. |
| string value | Token label used to identify the token to be used. Required when token_serial_number is not specified. |
| string value | Token serial number used to identify the token to be used. Required when the device has multiple tokens with the same label. |
1.1.17. queue
The following table outlines the options available under the [queue]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Number of asynchronous worker processes |
| boolean value | True enables queuing, False invokes workers synchronously |
| string value | Queue namespace |
| string value | Server name for RPC task processing server |
| string value | Queue topic name |
| string value | Version of tasks invoked via queue |
1.1.18. quotas
The following table outlines the options available under the [quotas]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| integer value | Number of CAs allowed per project |
| integer value | Number of consumers allowed per project |
| integer value | Number of containers allowed per project |
| integer value | Number of orders allowed per project |
| integer value | Number of secrets allowed per project |
1.1.19. retry_scheduler
The following table outlines the options available under the [retry_scheduler]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| floating point value | Seconds (float) to wait before starting retry scheduler |
| floating point value | Seconds (float) to wait between periodic schedule events |
1.1.20. secretstore
The following table outlines the options available under the [secretstore]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| boolean value | Flag to enable multiple secret store plugin backend support. Default is False |
| multi valued | List of secret store plugins to load. |
| string value | Extension namespace to search for plugins. |
| list value | List of suffix to use for looking up plugins which are supported with multiple backend support. |
1.1.21. simple_crypto_plugin
The following table outlines the options available under the [simple_crypto_plugin]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Key encryption key to be used by Simple Crypto Plugin |
| string value | User friendly plugin name |
1.1.22. snakeoil_ca_plugin
The following table outlines the options available under the [snakeoil_ca_plugin]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | Path to CA certificate chain file |
| string value | Path to CA certificate key file |
| string value | Path to CA certificate file |
| string value | Path to CA chain pkcs7 file |
| string value | Directory in which to store certs/keys for subcas |
1.1.23. ssl
The following table outlines the options available under the [ssl]
group in the /etc/barbican/barbican.conf
file.
Configuration option = Default value | Type | Description |
---|---|---|
| string value | CA certificate file to use to verify connecting clients. |
| string value | Certificate file to use when starting the server securely. |
| string value | Sets the list of available ciphers. value should be a string in the OpenSSL cipher list format. |
| string value | Private key file to use when starting the server securely. |
| string value | SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some distributions. |