← Back to plugin index

Expert Mode Redis State Repository

Description

State repository that stores all values in a Redis service.

Caution: This plugin supports a very wide range of configuration options and not all of them have been tested to work with Airlock IAM.
It is recommended to use as few Redis config options as possible: this minimizes the possible need for manual changes for future versions of Redis. Please refer to the property documentations for example configurations.

Type name
ExpertModeRedisStateRepository
Class
com.airlock.iam.common.application.configuration.state.ExpertModeRedisStateRepositoryConfig
May be used by
Properties
YAML Configuration (yamlConfig)
Description

The configuration of the built-in Redisson Redis client in YAML format. Please consult the Redisson Configuration Documentation for details on the available configuration options.

A configuration file which contains the YAML configuration can be used as an alternative to this configuration (see below).

Note:

  • Cluster mode is currently not supported
  • Configuring read-only Redis nodes does do not improve performance, because Airlock IAM does not use any read-only operations.

Attributes
String
Mandatory
Multi-line-text
Example
singleServerConfig:
  address: "redis://127.0.0.1:6379"
Example
sentinelServersConfig:
  masterName: "mymaster"
  connectTimeout: 10000
  sentinelAddresses:
  - "redis://127.0.0.1:26379"
  - "redis://127.0.0.1:26389"
Example
replicatedServersConfig:
  connectTimeout: 10000
  nodeAddresses:
  - "redis://redishost1:2812"
  - "redis://redishost2:2815"
  - "redis://redishost3:2813"
Encryption (encryption)
Description

Encryption settings defining whether and how state information in Redis is encrypted. IAM state contains sensitive information. State encryption prevents other systems from reading and modifying IAM state information.

To enable state encryption with non-encrypted state already present, use the "Migrating State Encryption" plugin.

Attributes
Plugin-Link
Mandatory
Assignable plugins
Namespace (namespace)
Description

A string that will be used as a namespace for the keys in Redis.

This is useful if, for example, multiple IAM instances share the same Redis instance and one must ensure that their Redis keys don't interfere with each other

When changing this setting after state has already been stored in Redis, that state will be lost and the corresponding sessions will be terminated.

Attributes
String
Optional
Validation RegEx: ^[A-Za-z0-9]+$
Default value
default
YAML Template (with default values)

type: ExpertModeRedisStateRepository
id: ExpertModeRedisStateRepository-xxxxxx
displayName: 
comment: 
properties:
  encryption:
  namespace: default
  yamlConfig: