Package-level declarations

Types

Link copied to clipboard
class AttributeImporterIdentityProviderMapper : KotlinCustomResource

Allows for creating and managing an attribute importer identity provider mapper within Keycloak. The attribute importer mapper can be used to map attributes from externally defined users to attributes or properties of the imported Keycloak user:

data class AttributeImporterIdentityProviderMapperArgs(val attributeFriendlyName: Output<String>? = null, val attributeName: Output<String>? = null, val claimName: Output<String>? = null, val extraConfig: Output<Map<String, String>>? = null, val identityProviderAlias: Output<String>? = null, val name: Output<String>? = null, val realm: Output<String>? = null, val userAttribute: Output<String>? = null) : ConvertibleToJava<AttributeImporterIdentityProviderMapperArgs>

Allows for creating and managing an attribute importer identity provider mapper within Keycloak. The attribute importer mapper can be used to map attributes from externally defined users to attributes or properties of the imported Keycloak user:

Link copied to clipboard
class AttributeToRoleIdentityMapper : KotlinCustomResource

Allows for creating and managing an attribute to role identity provider mapper within Keycloak.

Link copied to clipboard
data class AttributeToRoleIdentityMapperArgs(val attributeFriendlyName: Output<String>? = null, val attributeName: Output<String>? = null, val attributeValue: Output<String>? = null, val claimName: Output<String>? = null, val claimValue: Output<String>? = null, val extraConfig: Output<Map<String, String>>? = null, val identityProviderAlias: Output<String>? = null, val name: Output<String>? = null, val realm: Output<String>? = null, val role: Output<String>? = null) : ConvertibleToJava<AttributeToRoleIdentityMapperArgs>

Allows for creating and managing an attribute to role identity provider mapper within Keycloak.

Link copied to clipboard
class CustomIdentityProviderMapping : KotlinCustomResource
Link copied to clipboard
data class CustomIdentityProviderMappingArgs(val extraConfig: Output<Map<String, String>>? = null, val identityProviderAlias: Output<String>? = null, val identityProviderMapper: Output<String>? = null, val name: Output<String>? = null, val realm: Output<String>? = null) : ConvertibleToJava<CustomIdentityProviderMappingArgs>
Link copied to clipboard
class CustomUserFederation : KotlinCustomResource

Allows for creating and managing custom user federation providers within Keycloak. A custom user federation provider is an implementation of Keycloak's User Storage SPI. An example of this implementation can be found here.

Link copied to clipboard
data class CustomUserFederationArgs(val cachePolicy: Output<String>? = null, val changedSyncPeriod: Output<Int>? = null, val config: Output<Map<String, String>>? = null, val enabled: Output<Boolean>? = null, val fullSyncPeriod: Output<Int>? = null, val name: Output<String>? = null, val parentId: Output<String>? = null, val priority: Output<Int>? = null, val providerId: Output<String>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<CustomUserFederationArgs>

Allows for creating and managing custom user federation providers within Keycloak. A custom user federation provider is an implementation of Keycloak's User Storage SPI. An example of this implementation can be found here.

Link copied to clipboard
Link copied to clipboard
class DefaultGroups : KotlinCustomResource

Allows for managing a realm's default groups.

Link copied to clipboard
data class DefaultGroupsArgs(val groupIds: Output<List<String>>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<DefaultGroupsArgs>

Allows for managing a realm's default groups.

Link copied to clipboard
Link copied to clipboard
object DefaultGroupsMapper : ResourceMapper<DefaultGroups>
Link copied to clipboard
Link copied to clipboard
class DefaultRoles : KotlinCustomResource

Allows managing default realm roles within Keycloak. Note: This feature was added in Keycloak v13, so this resource will not work on older versions of Keycloak.

Link copied to clipboard
data class DefaultRolesArgs(val defaultRoles: Output<List<String>>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<DefaultRolesArgs>

Allows managing default realm roles within Keycloak. Note: This feature was added in Keycloak v13, so this resource will not work on older versions of Keycloak.

Link copied to clipboard
Link copied to clipboard
object DefaultRolesMapper : ResourceMapper<DefaultRoles>
Link copied to clipboard
Link copied to clipboard
class GenericClientProtocolMapper : KotlinCustomResource

!>WARNING: This resource is deprecated and will be removed in the next major version. Please use keycloak.GenericProtocolMapper instead. Allows for creating and managing protocol mappers for both types of clients (openid-connect and saml) within Keycloak. There are two uses cases for using this resource:

Link copied to clipboard
data class GenericClientProtocolMapperArgs(val clientId: Output<String>? = null, val clientScopeId: Output<String>? = null, val config: Output<Map<String, String>>? = null, val name: Output<String>? = null, val protocol: Output<String>? = null, val protocolMapper: Output<String>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<GenericClientProtocolMapperArgs>

!>WARNING: This resource is deprecated and will be removed in the next major version. Please use keycloak.GenericProtocolMapper instead. Allows for creating and managing protocol mappers for both types of clients (openid-connect and saml) within Keycloak. There are two uses cases for using this resource:

Link copied to clipboard
class GenericClientRoleMapper : KotlinCustomResource

!>WARNING: This resource is deprecated and will be removed in the next major version. Please use keycloak.GenericRoleMapper instead. Allow for creating and managing a client's scope mappings within Keycloak. By default, all the user role mappings of the user are added as claims within the token (OIDC) or assertion (SAML). When full_scope_allowed is set to false for a client, role scope mapping allows you to limit the roles that get declared inside an access token for a client.

Link copied to clipboard
data class GenericClientRoleMapperArgs(val clientId: Output<String>? = null, val clientScopeId: Output<String>? = null, val realmId: Output<String>? = null, val roleId: Output<String>? = null) : ConvertibleToJava<GenericClientRoleMapperArgs>

!>WARNING: This resource is deprecated and will be removed in the next major version. Please use keycloak.GenericRoleMapper instead. Allow for creating and managing a client's scope mappings within Keycloak. By default, all the user role mappings of the user are added as claims within the token (OIDC) or assertion (SAML). When full_scope_allowed is set to false for a client, role scope mapping allows you to limit the roles that get declared inside an access token for a client.

Link copied to clipboard
Link copied to clipboard
class GenericProtocolMapper : KotlinCustomResource

Allows for creating and managing protocol mappers for both types of clients (openid-connect and saml) within Keycloak. There are two uses cases for using this resource:

Link copied to clipboard
data class GenericProtocolMapperArgs(val clientId: Output<String>? = null, val clientScopeId: Output<String>? = null, val config: Output<Map<String, String>>? = null, val name: Output<String>? = null, val protocol: Output<String>? = null, val protocolMapper: Output<String>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<GenericProtocolMapperArgs>

Allows for creating and managing protocol mappers for both types of clients (openid-connect and saml) within Keycloak. There are two uses cases for using this resource:

Link copied to clipboard
Link copied to clipboard
class GenericRoleMapper : KotlinCustomResource

Allow for creating and managing a client's or client scope's role mappings within Keycloak. By default, all the user role mappings of the user are added as claims within the token (OIDC) or assertion (SAML). When full_scope_allowed is set to false for a client, role scope mapping allows you to limit the roles that get declared inside an access token for a client.

Link copied to clipboard
data class GenericRoleMapperArgs(val clientId: Output<String>? = null, val clientScopeId: Output<String>? = null, val realmId: Output<String>? = null, val roleId: Output<String>? = null) : ConvertibleToJava<GenericRoleMapperArgs>

Allow for creating and managing a client's or client scope's role mappings within Keycloak. By default, all the user role mappings of the user are added as claims within the token (OIDC) or assertion (SAML). When full_scope_allowed is set to false for a client, role scope mapping allows you to limit the roles that get declared inside an access token for a client.

Link copied to clipboard
object GenericRoleMapperMapper : ResourceMapper<GenericRoleMapper>
Link copied to clipboard
class Group : KotlinCustomResource

Allows for creating and managing Groups within Keycloak. Groups provide a logical wrapping for users within Keycloak. Users within a group can share attributes and roles, and group membership can be mapped to a claim. Attributes can also be defined on Groups. Groups can also be federated from external data sources, such as LDAP or Active Directory. This resource should not be used to manage groups that were created this way.

Link copied to clipboard
data class GroupArgs(val attributes: Output<Map<String, String>>? = null, val name: Output<String>? = null, val parentId: Output<String>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<GroupArgs>

Allows for creating and managing Groups within Keycloak. Groups provide a logical wrapping for users within Keycloak. Users within a group can share attributes and roles, and group membership can be mapped to a claim. Attributes can also be defined on Groups. Groups can also be federated from external data sources, such as LDAP or Active Directory. This resource should not be used to manage groups that were created this way.

Link copied to clipboard

Builder for GroupArgs.

Link copied to clipboard
object GroupMapper : ResourceMapper<Group>
Link copied to clipboard
class GroupMemberships : KotlinCustomResource

Allows for managing a Keycloak group's members. Note that this resource attempts to be an authoritative source over group members. When this resource takes control over a group's members, users that are manually added to the group will be removed, and users that are manually removed from the group will be added upon the next run of pulumi up. Also note that you should not use keycloak.GroupMemberships with a group has been assigned as a default group via keycloak.DefaultGroups. This resource should not be used to control membership of a group that has its members federated from an external source via group mapping. To non-exclusively manage the group's of a user, see the 1 This resource paginates its data loading on refresh by 50 items.

Link copied to clipboard
data class GroupMembershipsArgs(val groupId: Output<String>? = null, val members: Output<List<String>>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<GroupMembershipsArgs>

Allows for managing a Keycloak group's members. Note that this resource attempts to be an authoritative source over group members. When this resource takes control over a group's members, users that are manually added to the group will be removed, and users that are manually removed from the group will be added upon the next run of pulumi up. Also note that you should not use keycloak.GroupMemberships with a group has been assigned as a default group via keycloak.DefaultGroups. This resource should not be used to control membership of a group that has its members federated from an external source via group mapping. To non-exclusively manage the group's of a user, see the 1 This resource paginates its data loading on refresh by 50 items.

Link copied to clipboard
object GroupMembershipsMapper : ResourceMapper<GroupMemberships>
Link copied to clipboard
class GroupPermissions : KotlinCustomResource

Allows you to manage all group Scope Based Permissions https://www.keycloak.org/docs/latest/server_admin/#group. This is part of a preview Keycloak feature: admin_fine_grained_authz (see https://www.keycloak.org/docs/latest/server_admin/#_fine_grain_permissions). This feature can be enabled with the Keycloak option -Dkeycloak.profile.feature.admin_fine_grained_authz=enabled. See the example docker-compose.yml file for an example. When enabling Roles Permissions, Keycloak does several things automatically:

Link copied to clipboard
data class GroupPermissionsArgs(val groupId: Output<String>? = null, val manageMembersScope: Output<GroupPermissionsManageMembersScopeArgs>? = null, val manageMembershipScope: Output<GroupPermissionsManageMembershipScopeArgs>? = null, val manageScope: Output<GroupPermissionsManageScopeArgs>? = null, val realmId: Output<String>? = null, val viewMembersScope: Output<GroupPermissionsViewMembersScopeArgs>? = null, val viewScope: Output<GroupPermissionsViewScopeArgs>? = null) : ConvertibleToJava<GroupPermissionsArgs>

Allows you to manage all group Scope Based Permissions https://www.keycloak.org/docs/latest/server_admin/#group. This is part of a preview Keycloak feature: admin_fine_grained_authz (see https://www.keycloak.org/docs/latest/server_admin/#_fine_grain_permissions). This feature can be enabled with the Keycloak option -Dkeycloak.profile.feature.admin_fine_grained_authz=enabled. See the example docker-compose.yml file for an example. When enabling Roles Permissions, Keycloak does several things automatically:

Link copied to clipboard
object GroupPermissionsMapper : ResourceMapper<GroupPermissions>
Link copied to clipboard

Builder for Group.

Link copied to clipboard
class GroupRoles : KotlinCustomResource

Allows you to manage roles assigned to a Keycloak group. If exhaustive is true, this resource attempts to be an authoritative source over group roles: roles that are manually added to the group will be removed, and roles that are manually removed from the group will be added upon the next run of pulumi up. If exhaustive is false, this resource is a partial assignation of roles to a group. As a result, you can get multiple keycloak.GroupRoles for the same group_id. Note that when assigning composite roles to a group, you may see a non-empty plan following a pulumi up if you assign a role and a composite that includes that role to the same group.

Link copied to clipboard
data class GroupRolesArgs(val exhaustive: Output<Boolean>? = null, val groupId: Output<String>? = null, val realmId: Output<String>? = null, val roleIds: Output<List<String>>? = null) : ConvertibleToJava<GroupRolesArgs>

Allows you to manage roles assigned to a Keycloak group. If exhaustive is true, this resource attempts to be an authoritative source over group roles: roles that are manually added to the group will be removed, and roles that are manually removed from the group will be added upon the next run of pulumi up. If exhaustive is false, this resource is a partial assignation of roles to a group. As a result, you can get multiple keycloak.GroupRoles for the same group_id. Note that when assigning composite roles to a group, you may see a non-empty plan following a pulumi up if you assign a role and a composite that includes that role to the same group.

Link copied to clipboard
Link copied to clipboard
object GroupRolesMapper : ResourceMapper<GroupRoles>
Link copied to clipboard
Link copied to clipboard
class HardcodedAttributeIdentityProviderMapper : KotlinCustomResource

Allows for creating and managing hardcoded attribute mappers for Keycloak identity provider. The identity provider hardcoded attribute mapper will set the specified value to the IDP attribute.

data class HardcodedAttributeIdentityProviderMapperArgs(val attributeName: Output<String>? = null, val attributeValue: Output<String>? = null, val extraConfig: Output<Map<String, String>>? = null, val identityProviderAlias: Output<String>? = null, val name: Output<String>? = null, val realm: Output<String>? = null, val userSession: Output<Boolean>? = null) : ConvertibleToJava<HardcodedAttributeIdentityProviderMapperArgs>

Allows for creating and managing hardcoded attribute mappers for Keycloak identity provider. The identity provider hardcoded attribute mapper will set the specified value to the IDP attribute.

Link copied to clipboard
class HardcodedAttributeMapper : KotlinCustomResource

Allows for creating and managing hardcoded attribute mappers for Keycloak users federated via LDAP. The user model hardcoded attribute mapper will set the specified value to the attribute.

Link copied to clipboard
data class HardcodedAttributeMapperArgs(val attributeName: Output<String>? = null, val attributeValue: Output<String>? = null, val ldapUserFederationId: Output<String>? = null, val name: Output<String>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<HardcodedAttributeMapperArgs>

Allows for creating and managing hardcoded attribute mappers for Keycloak users federated via LDAP. The user model hardcoded attribute mapper will set the specified value to the attribute.

Link copied to clipboard
class HardcodedGroupIdentityProviderMapper : KotlinCustomResource

Allows for creating and managing hardcoded group mappers for Keycloak identity provider. The identity provider hardcoded group mapper grants a specified Keycloak group to each Keycloak user from the identity provider.

Link copied to clipboard
data class HardcodedGroupIdentityProviderMapperArgs(val extraConfig: Output<Map<String, String>>? = null, val group: Output<String>? = null, val identityProviderAlias: Output<String>? = null, val name: Output<String>? = null, val realm: Output<String>? = null) : ConvertibleToJava<HardcodedGroupIdentityProviderMapperArgs>

Allows for creating and managing hardcoded group mappers for Keycloak identity provider. The identity provider hardcoded group mapper grants a specified Keycloak group to each Keycloak user from the identity provider.

Link copied to clipboard
class HardcodedRoleIdentityMapper : KotlinCustomResource

Allows for creating and managing hardcoded role mappers for Keycloak identity provider. The identity provider hardcoded role mapper grants a specified Keycloak role to each Keycloak user from the LDAP provider.

Link copied to clipboard
data class HardcodedRoleIdentityMapperArgs(val extraConfig: Output<Map<String, String>>? = null, val identityProviderAlias: Output<String>? = null, val name: Output<String>? = null, val realm: Output<String>? = null, val role: Output<String>? = null) : ConvertibleToJava<HardcodedRoleIdentityMapperArgs>

Allows for creating and managing hardcoded role mappers for Keycloak identity provider. The identity provider hardcoded role mapper grants a specified Keycloak role to each Keycloak user from the LDAP provider.

data class IdentityProviderTokenExchangeScopePermissionArgs(val clients: Output<List<String>>? = null, val policyType: Output<String>? = null, val providerAlias: Output<String>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<IdentityProviderTokenExchangeScopePermissionArgs>
Link copied to clipboard
Link copied to clipboard
class KeycloakProvider : KotlinProviderResource

The provider type for the keycloak package. By default, resources use package-wide configuration settings, however an explicit Provider instance may be created and passed during resource construction to achieve fine-grained programmatic control over provider settings. See the documentation for more information.

Link copied to clipboard
object KeycloakProviderMapper : ResourceMapper<KeycloakProvider>
Link copied to clipboard
data class ProviderArgs(val additionalHeaders: Output<Map<String, String>>? = null, val basePath: Output<String>? = null, val clientId: Output<String>? = null, val clientSecret: Output<String>? = null, val clientTimeout: Output<Int>? = null, val initialLogin: Output<Boolean>? = null, val password: Output<String>? = null, val realm: Output<String>? = null, val redHatSso: Output<Boolean>? = null, val rootCaCertificate: Output<String>? = null, val tlsInsecureSkipVerify: Output<Boolean>? = null, val url: Output<String>? = null, val username: Output<String>? = null) : ConvertibleToJava<ProviderArgs>

The provider type for the keycloak package. By default, resources use package-wide configuration settings, however an explicit Provider instance may be created and passed during resource construction to achieve fine-grained programmatic control over provider settings. See the documentation for more information.

Link copied to clipboard
Link copied to clipboard
class Realm : KotlinCustomResource

Allows for creating and managing Realms within Keycloak. A realm manages a logical collection of users, credentials, roles, and groups. Users log in to realms and can be federated from multiple sources.

Link copied to clipboard
data class RealmArgs(val accessCodeLifespan: Output<String>? = null, val accessCodeLifespanLogin: Output<String>? = null, val accessCodeLifespanUserAction: Output<String>? = null, val accessTokenLifespan: Output<String>? = null, val accessTokenLifespanForImplicitFlow: Output<String>? = null, val accountTheme: Output<String>? = null, val actionTokenGeneratedByAdminLifespan: Output<String>? = null, val actionTokenGeneratedByUserLifespan: Output<String>? = null, val adminTheme: Output<String>? = null, val attributes: Output<Map<String, String>>? = null, val browserFlow: Output<String>? = null, val clientAuthenticationFlow: Output<String>? = null, val clientSessionIdleTimeout: Output<String>? = null, val clientSessionMaxLifespan: Output<String>? = null, val defaultDefaultClientScopes: Output<List<String>>? = null, val defaultOptionalClientScopes: Output<List<String>>? = null, val defaultSignatureAlgorithm: Output<String>? = null, val directGrantFlow: Output<String>? = null, val displayName: Output<String>? = null, val displayNameHtml: Output<String>? = null, val dockerAuthenticationFlow: Output<String>? = null, val duplicateEmailsAllowed: Output<Boolean>? = null, val editUsernameAllowed: Output<Boolean>? = null, val emailTheme: Output<String>? = null, val enabled: Output<Boolean>? = null, val firstBrokerLoginFlow: Output<String>? = null, val internalId: Output<String>? = null, val internationalization: Output<RealmInternationalizationArgs>? = null, val loginTheme: Output<String>? = null, val loginWithEmailAllowed: Output<Boolean>? = null, val oauth2DeviceCodeLifespan: Output<String>? = null, val oauth2DevicePollingInterval: Output<Int>? = null, val offlineSessionIdleTimeout: Output<String>? = null, val offlineSessionMaxLifespan: Output<String>? = null, val offlineSessionMaxLifespanEnabled: Output<Boolean>? = null, val organizationsEnabled: Output<Boolean>? = null, val otpPolicy: Output<RealmOtpPolicyArgs>? = null, val passwordPolicy: Output<String>? = null, val realm: Output<String>? = null, val refreshTokenMaxReuse: Output<Int>? = null, val registrationAllowed: Output<Boolean>? = null, val registrationEmailAsUsername: Output<Boolean>? = null, val registrationFlow: Output<String>? = null, val rememberMe: Output<Boolean>? = null, val resetCredentialsFlow: Output<String>? = null, val resetPasswordAllowed: Output<Boolean>? = null, val revokeRefreshToken: Output<Boolean>? = null, val securityDefenses: Output<RealmSecurityDefensesArgs>? = null, val smtpServer: Output<RealmSmtpServerArgs>? = null, val sslRequired: Output<String>? = null, val ssoSessionIdleTimeout: Output<String>? = null, val ssoSessionIdleTimeoutRememberMe: Output<String>? = null, val ssoSessionMaxLifespan: Output<String>? = null, val ssoSessionMaxLifespanRememberMe: Output<String>? = null, val userManagedAccess: Output<Boolean>? = null, val verifyEmail: Output<Boolean>? = null, val webAuthnPasswordlessPolicy: Output<RealmWebAuthnPasswordlessPolicyArgs>? = null, val webAuthnPolicy: Output<RealmWebAuthnPolicyArgs>? = null) : ConvertibleToJava<RealmArgs>

Allows for creating and managing Realms within Keycloak. A realm manages a logical collection of users, credentials, roles, and groups. Users log in to realms and can be federated from multiple sources.

Link copied to clipboard

Builder for RealmArgs.

Link copied to clipboard
class RealmDefaultClientScopes : KotlinCustomResource

Allows you to manage the set of default client scopes for a Keycloak realm, which are used when new clients are created. Note that this resource attempts to be an authoritative source over the default client scopes for a Keycloak realm, so any Keycloak defaults and manual adjustments will be overwritten.

Link copied to clipboard
data class RealmDefaultClientScopesArgs(val defaultScopes: Output<List<String>>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RealmDefaultClientScopesArgs>

Allows you to manage the set of default client scopes for a Keycloak realm, which are used when new clients are created. Note that this resource attempts to be an authoritative source over the default client scopes for a Keycloak realm, so any Keycloak defaults and manual adjustments will be overwritten.

Link copied to clipboard
class RealmEvents : KotlinCustomResource

Allows for managing Realm Events settings within Keycloak.

Link copied to clipboard
data class RealmEventsArgs(val adminEventsDetailsEnabled: Output<Boolean>? = null, val adminEventsEnabled: Output<Boolean>? = null, val enabledEventTypes: Output<List<String>>? = null, val eventsEnabled: Output<Boolean>? = null, val eventsExpiration: Output<Int>? = null, val eventsListeners: Output<List<String>>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RealmEventsArgs>

Allows for managing Realm Events settings within Keycloak.

Link copied to clipboard
Link copied to clipboard
object RealmEventsMapper : ResourceMapper<RealmEvents>
Link copied to clipboard
Link copied to clipboard
class RealmKeystoreAesGenerated : KotlinCustomResource

Allows for creating and managing aes-generated Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
data class RealmKeystoreAesGeneratedArgs(val active: Output<Boolean>? = null, val enabled: Output<Boolean>? = null, val name: Output<String>? = null, val priority: Output<Int>? = null, val realmId: Output<String>? = null, val secretSize: Output<Int>? = null) : ConvertibleToJava<RealmKeystoreAesGeneratedArgs>

Allows for creating and managing aes-generated Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
class RealmKeystoreEcdsaGenerated : KotlinCustomResource

Allows for creating and managing acdsa_generated Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
data class RealmKeystoreEcdsaGeneratedArgs(val active: Output<Boolean>? = null, val ellipticCurveKey: Output<String>? = null, val enabled: Output<Boolean>? = null, val name: Output<String>? = null, val priority: Output<Int>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RealmKeystoreEcdsaGeneratedArgs>

Allows for creating and managing acdsa_generated Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
class RealmKeystoreHmacGenerated : KotlinCustomResource

Allows for creating and managing hmac-generated Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
data class RealmKeystoreHmacGeneratedArgs(val active: Output<Boolean>? = null, val algorithm: Output<String>? = null, val enabled: Output<Boolean>? = null, val name: Output<String>? = null, val priority: Output<Int>? = null, val realmId: Output<String>? = null, val secretSize: Output<Int>? = null) : ConvertibleToJava<RealmKeystoreHmacGeneratedArgs>

Allows for creating and managing hmac-generated Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
class RealmKeystoreJavaGenerated : KotlinCustomResource

Allows for creating and managing java-keystore Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
data class RealmKeystoreJavaGeneratedArgs(val active: Output<Boolean>? = null, val algorithm: Output<String>? = null, val enabled: Output<Boolean>? = null, val keyAlias: Output<String>? = null, val keyPassword: Output<String>? = null, val keystore: Output<String>? = null, val keystorePassword: Output<String>? = null, val name: Output<String>? = null, val priority: Output<Int>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RealmKeystoreJavaGeneratedArgs>

Allows for creating and managing java-keystore Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
class RealmKeystoreRsa : KotlinCustomResource

Allows for creating and managing rsa Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
data class RealmKeystoreRsaArgs(val active: Output<Boolean>? = null, val algorithm: Output<String>? = null, val certificate: Output<String>? = null, val enabled: Output<Boolean>? = null, val name: Output<String>? = null, val priority: Output<Int>? = null, val privateKey: Output<String>? = null, val providerId: Output<String>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RealmKeystoreRsaArgs>

Allows for creating and managing rsa Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
class RealmKeystoreRsaGenerated : KotlinCustomResource

Allows for creating and managing rsa-generated Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
data class RealmKeystoreRsaGeneratedArgs(val active: Output<Boolean>? = null, val algorithm: Output<String>? = null, val enabled: Output<Boolean>? = null, val keySize: Output<Int>? = null, val name: Output<String>? = null, val priority: Output<Int>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RealmKeystoreRsaGeneratedArgs>

Allows for creating and managing rsa-generated Realm keystores within Keycloak. A realm keystore manages generated key pairs that are used by Keycloak to perform cryptographic signatures and encryption.

Link copied to clipboard
object RealmKeystoreRsaMapper : ResourceMapper<RealmKeystoreRsa>
Link copied to clipboard
class RealmLocalization : KotlinCustomResource
Link copied to clipboard
data class RealmLocalizationArgs(val locale: Output<String>? = null, val realmId: Output<String>? = null, val texts: Output<Map<String, String>>? = null) : ConvertibleToJava<RealmLocalizationArgs>
Link copied to clipboard
object RealmLocalizationMapper : ResourceMapper<RealmLocalization>
Link copied to clipboard
object RealmMapper : ResourceMapper<Realm>
Link copied to clipboard
class RealmOptionalClientScopes : KotlinCustomResource

Allows you to manage the set of optional client scopes for a Keycloak realm, which are used when new clients are created. Note that this resource attempts to be an authoritative source over the optional client scopes for a Keycloak realm, so any Keycloak defaults and manual adjustments will be overwritten.

Link copied to clipboard
data class RealmOptionalClientScopesArgs(val optionalScopes: Output<List<String>>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RealmOptionalClientScopesArgs>

Allows you to manage the set of optional client scopes for a Keycloak realm, which are used when new clients are created. Note that this resource attempts to be an authoritative source over the optional client scopes for a Keycloak realm, so any Keycloak defaults and manual adjustments will be overwritten.

Link copied to clipboard

Builder for Realm.

Link copied to clipboard
class RealmUserProfile : KotlinCustomResource

Allows for managing Realm User Profiles within Keycloak. A user profile defines a schema for representing user attributes and how they are managed within a realm. Information for Keycloak versions < 24: The realm linked to the keycloak.RealmUserProfile resource must have the user profile feature enabled. It can be done via the administration UI, or by setting the userProfileEnabled realm attribute to true.

Link copied to clipboard
data class RealmUserProfileArgs(val attributes: Output<List<RealmUserProfileAttributeArgs>>? = null, val groups: Output<List<RealmUserProfileGroupArgs>>? = null, val realmId: Output<String>? = null, val unmanagedAttributePolicy: Output<String>? = null) : ConvertibleToJava<RealmUserProfileArgs>

Allows for managing Realm User Profiles within Keycloak. A user profile defines a schema for representing user attributes and how they are managed within a realm. Information for Keycloak versions < 24: The realm linked to the keycloak.RealmUserProfile resource must have the user profile feature enabled. It can be done via the administration UI, or by setting the userProfileEnabled realm attribute to true.

Link copied to clipboard
object RealmUserProfileMapper : ResourceMapper<RealmUserProfile>
Link copied to clipboard
class RequiredAction : KotlinCustomResource

Allows for creating and managing required actions within Keycloak. Required actions specify actions required before the first login of all new users.

Link copied to clipboard
data class RequiredActionArgs(val alias: Output<String>? = null, val config: Output<Map<String, String>>? = null, val defaultAction: Output<Boolean>? = null, val enabled: Output<Boolean>? = null, val name: Output<String>? = null, val priority: Output<Int>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RequiredActionArgs>

Allows for creating and managing required actions within Keycloak. Required actions specify actions required before the first login of all new users.

Link copied to clipboard
Link copied to clipboard
object RequiredActionMapper : ResourceMapper<RequiredAction>
Link copied to clipboard
class Role : KotlinCustomResource

Allows for creating and managing roles within Keycloak. Roles allow you to define privileges within Keycloak and map them to users and groups.

Link copied to clipboard
data class RoleArgs(val attributes: Output<Map<String, String>>? = null, val clientId: Output<String>? = null, val compositeRoles: Output<List<String>>? = null, val description: Output<String>? = null, val import: Output<Boolean>? = null, val name: Output<String>? = null, val realmId: Output<String>? = null) : ConvertibleToJava<RoleArgs>

Allows for creating and managing roles within Keycloak. Roles allow you to define privileges within Keycloak and map them to users and groups.

Link copied to clipboard

Builder for RoleArgs.

Link copied to clipboard
object RoleMapper : ResourceMapper<Role>
Link copied to clipboard

Builder for Role.

Link copied to clipboard
class User : KotlinCustomResource

Allows for creating and managing Users within Keycloak. This resource was created primarily to enable the acceptance tests for the keycloak.Group resource. Creating users within Keycloak is not recommended. Instead, users should be federated from external sources by configuring user federation providers or identity providers.

Link copied to clipboard
data class UserArgs(val attributes: Output<Map<String, String>>? = null, val email: Output<String>? = null, val emailVerified: Output<Boolean>? = null, val enabled: Output<Boolean>? = null, val federatedIdentities: Output<List<UserFederatedIdentityArgs>>? = null, val firstName: Output<String>? = null, val import: Output<Boolean>? = null, val initialPassword: Output<UserInitialPasswordArgs>? = null, val lastName: Output<String>? = null, val realmId: Output<String>? = null, val requiredActions: Output<List<String>>? = null, val username: Output<String>? = null) : ConvertibleToJava<UserArgs>

Allows for creating and managing Users within Keycloak. This resource was created primarily to enable the acceptance tests for the keycloak.Group resource. Creating users within Keycloak is not recommended. Instead, users should be federated from external sources by configuring user federation providers or identity providers.

Link copied to clipboard

Builder for UserArgs.

Link copied to clipboard
class UserGroups : KotlinCustomResource

Allows for managing a Keycloak user's groups. If exhaustive is true, this resource attempts to be an authoritative source over user groups: groups that are manually added to the user will be removed, and groups that are manually removed from the user group will be added upon the next run of pulumi up. If exhaustive is false, this resource is a partial assignation of groups to a user. As a result, you can get multiple keycloak.UserGroups for the same user_id.

Link copied to clipboard
data class UserGroupsArgs(val exhaustive: Output<Boolean>? = null, val groupIds: Output<List<String>>? = null, val realmId: Output<String>? = null, val userId: Output<String>? = null) : ConvertibleToJava<UserGroupsArgs>

Allows for managing a Keycloak user's groups. If exhaustive is true, this resource attempts to be an authoritative source over user groups: groups that are manually added to the user will be removed, and groups that are manually removed from the user group will be added upon the next run of pulumi up. If exhaustive is false, this resource is a partial assignation of groups to a user. As a result, you can get multiple keycloak.UserGroups for the same user_id.

Link copied to clipboard
Link copied to clipboard
object UserGroupsMapper : ResourceMapper<UserGroups>
Link copied to clipboard
Link copied to clipboard
object UserMapper : ResourceMapper<User>
Link copied to clipboard

Builder for User.

Link copied to clipboard
class UserRoles : KotlinCustomResource

Allows you to manage roles assigned to a Keycloak user. If exhaustive is true, this resource attempts to be an authoritative source over user roles: roles that are manually added to the user will be removed, and roles that are manually removed from the user will be added upon the next run of pulumi up. If exhaustive is false, this resource is a partial assignation of roles to a user. As a result, you can use multiple keycloak.UserRoles for the same user_id. Note that when assigning composite roles to a user, you may see a non-empty plan following a pulumi up if you assign a role and a composite that includes that role to the same user.

Link copied to clipboard
data class UserRolesArgs(val exhaustive: Output<Boolean>? = null, val realmId: Output<String>? = null, val roleIds: Output<List<String>>? = null, val userId: Output<String>? = null) : ConvertibleToJava<UserRolesArgs>

Allows you to manage roles assigned to a Keycloak user. If exhaustive is true, this resource attempts to be an authoritative source over user roles: roles that are manually added to the user will be removed, and roles that are manually removed from the user will be added upon the next run of pulumi up. If exhaustive is false, this resource is a partial assignation of roles to a user. As a result, you can use multiple keycloak.UserRoles for the same user_id. Note that when assigning composite roles to a user, you may see a non-empty plan following a pulumi up if you assign a role and a composite that includes that role to the same user.

Link copied to clipboard
Link copied to clipboard
object UserRolesMapper : ResourceMapper<UserRoles>
Link copied to clipboard
Link copied to clipboard
class UsersPermissions : KotlinCustomResource

Allows you to manage fine-grained permissions for all users in a realm: https://www.keycloak.org/docs/latest/server_admin/#_users-permissions This is part of a preview Keycloak feature: admin_fine_grained_authz (see https://www.keycloak.org/docs/latest/server_admin/#_fine_grain_permissions). This feature can be enabled with the Keycloak option -Dkeycloak.profile.feature.admin_fine_grained_authz=enabled. See the example docker-compose.yml file for an example. When enabling fine-grained permissions for users, Keycloak does several things automatically:

Link copied to clipboard
data class UsersPermissionsArgs(val impersonateScope: Output<UsersPermissionsImpersonateScopeArgs>? = null, val manageGroupMembershipScope: Output<UsersPermissionsManageGroupMembershipScopeArgs>? = null, val manageScope: Output<UsersPermissionsManageScopeArgs>? = null, val mapRolesScope: Output<UsersPermissionsMapRolesScopeArgs>? = null, val realmId: Output<String>? = null, val userImpersonatedScope: Output<UsersPermissionsUserImpersonatedScopeArgs>? = null, val viewScope: Output<UsersPermissionsViewScopeArgs>? = null) : ConvertibleToJava<UsersPermissionsArgs>

Allows you to manage fine-grained permissions for all users in a realm: https://www.keycloak.org/docs/latest/server_admin/#_users-permissions This is part of a preview Keycloak feature: admin_fine_grained_authz (see https://www.keycloak.org/docs/latest/server_admin/#_fine_grain_permissions). This feature can be enabled with the Keycloak option -Dkeycloak.profile.feature.admin_fine_grained_authz=enabled. See the example docker-compose.yml file for an example. When enabling fine-grained permissions for users, Keycloak does several things automatically:

Link copied to clipboard
object UsersPermissionsMapper : ResourceMapper<UsersPermissions>
class UserTemplateImporterIdentityProviderMapper : KotlinCustomResource

Allows for creating and managing an username template importer identity provider mapper within Keycloak. The username template importer mapper can be used to map externally defined OIDC claims or SAML attributes with a template to the username of the imported Keycloak user:

data class UserTemplateImporterIdentityProviderMapperArgs(val extraConfig: Output<Map<String, String>>? = null, val identityProviderAlias: Output<String>? = null, val name: Output<String>? = null, val realm: Output<String>? = null, val template: Output<String>? = null) : ConvertibleToJava<UserTemplateImporterIdentityProviderMapperArgs>

Allows for creating and managing an username template importer identity provider mapper within Keycloak. The username template importer mapper can be used to map externally defined OIDC claims or SAML attributes with a template to the username of the imported Keycloak user:

Functions

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun group(name: String): Group
suspend fun group(name: String, block: suspend GroupResourceBuilder.() -> Unit): Group
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
suspend fun groupRoles(name: String, block: suspend GroupRolesResourceBuilder.() -> Unit): GroupRoles
Link copied to clipboard
Link copied to clipboard
fun realm(name: String): Realm
suspend fun realm(name: String, block: suspend RealmResourceBuilder.() -> Unit): Realm
Link copied to clipboard
suspend fun realmEvents(name: String, block: suspend RealmEventsResourceBuilder.() -> Unit): RealmEvents
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun role(name: String): Role
suspend fun role(name: String, block: suspend RoleResourceBuilder.() -> Unit): Role
Link copied to clipboard
fun user(name: String): User
suspend fun user(name: String, block: suspend UserResourceBuilder.() -> Unit): User
Link copied to clipboard
suspend fun userGroups(name: String, block: suspend UserGroupsResourceBuilder.() -> Unit): UserGroups
Link copied to clipboard
suspend fun userRoles(name: String, block: suspend UserRolesResourceBuilder.() -> Unit): UserRoles
Link copied to clipboard