Transcribes
Transcribes configuration using object syntax.
Each key under transcribes is a transcribe type (e.g., “user”, “group”). Transcribes are processed in alphabetical order (case-insensitive) for deterministic behavior.
Example:
transcribes { user { ldap { base = "ou=users,o=data" filter = "(objectClass=Person)" } indices { partial-match = "cn, sn, description" } } group { ldap { base = "ou=groups,o=data" filter = "(objectClass=groupOfNames)" } }}Legacy array syntax is deprecated but still supported:
transcribes = [ { type = "user", ldap { base = "ou=users,o=data" } }]transcribes.<type>.enabled
Section titled “transcribes.<type>.enabled”Enable or disable this transcribe. Can be set via environment variables:
SCRIBE_TRANSCRIBE_ENABLED(applies to all)SCRIBE_TRANSCRIBE_<TYPE>_ENABLED(per-type, e.g.,SCRIBE_TRANSCRIBE_USER_ENABLED)
Values: true, false, 1, 0, yes, no If readonly mode is active, this is always false.
| Property | Value |
|---|---|
| Default | true |
transcribes.<type>.enabled = truetranscribes.<type>.indices
Section titled “transcribes.<type>.indices”Index configuration for this transcribe. Indices defined here merge with root-level indices.*, with transcribe-level taking precedence. See Indices for all available options.
transcribes.<type>.indices.partial-match
Section titled “transcribes.<type>.indices.partial-match”Attributes for partial-match (contains/startsWith) queries. Increases write time and disk usage. Select carefully.
Example: "cn, sn, description"
| Property | Value |
|---|---|
| Default | null |
transcribes.<type>.indices.partial-match = nulltranscribes.<type>.indices.sortable
Section titled “transcribes.<type>.indices.sortable”Attributes for entry-level sorting (multi-valued only). Single-valued attributes use value-match indexes automatically.
Example: "cn, displayName, memberOf"
| Property | Value |
|---|---|
| Default | null |
transcribes.<type>.indices.sortable = nulltranscribes.<type>.indices.value-match
Section titled “transcribes.<type>.indices.value-match”Attributes for equality, range, and sorting queries. Baseline defaults (objectClass, cn, uid, mail, etc.) are automatically included for observed attributes.
Example: "cn, uid, mail, nrfMemberOf"
| Property | Value |
|---|---|
| Default | null |
transcribes.<type>.indices.value-match = nulltranscribes.<type>.ldap
Section titled “transcribes.<type>.ldap”Number of parallel workers for transcription. Higher values increase throughput but also database load.
Default: auto-derived from database pool size and number of transcribes.
transcription.workers = {auto}Buffer size (entries) waiting to be transcribed. Larger values smooth bursts but use more memory. Smaller values slow down sooner but reduce peak memory.
Default: auto-derived.
transcription.queue-capacity = {auto}LDAP configuration for this transcribe. Merged with the shared ldap {} configuration. See Ldap for all available options.
transcribes.<type>.ldap.attributes
Section titled “transcribes.<type>.ldap.attributes”Attributes to retrieve for each entry. Can be a comma-separated string or HOCON list.
Example:
attributes = "cn, sn, mail, telephoneNumber"| Property | Value |
|---|---|
| Default | null |
transcribes.<type>.ldap.attributes = nulltranscribes.<type>.ldap.base
Section titled “transcribes.<type>.ldap.base”Base DN to search for entries.
Example: "ou=users,o=data"
| Property | Value |
|---|---|
| Default | null |
transcribes.<type>.ldap.base = nulltranscribes.<type>.ldap.filter
Section titled “transcribes.<type>.ldap.filter”LDAP filter for searching entries.
Example: "(objectClass=Person)"
| Property | Value |
|---|---|
| Default | null |
transcribes.<type>.ldap.filter = nulltranscribes.<type>.ldap.scope
Section titled “transcribes.<type>.ldap.scope”Search scope.
Values: base, one, sub, subordinate_subtree
Default: sub
| Property | Value |
|---|---|
| Default | sub |
transcribes.<type>.ldap.scope = subtranscribes.<type>.max-task-concurrency
Section titled “transcribes.<type>.max-task-concurrency”Maximum concurrent tasks for this transcribe. Leave unset to derive from database connection pool. Set to 0 or negative to disable throttling (not recommended).
| Property | Value |
|---|---|
| Default | -1 |
transcribes.<type>.max-task-concurrency = -1