ClientArgs

data class ClientArgs(val alwaysDisplayInConsole: Output<Boolean>? = null, val assertionConsumerPostUrl: Output<String>? = null, val assertionConsumerRedirectUrl: Output<String>? = null, val authenticationFlowBindingOverrides: Output<ClientAuthenticationFlowBindingOverridesArgs>? = null, val baseUrl: Output<String>? = null, val canonicalizationMethod: Output<String>? = null, val clientId: Output<String>? = null, val clientSignatureRequired: Output<Boolean>? = null, val consentRequired: Output<Boolean>? = null, val description: Output<String>? = null, val enabled: Output<Boolean>? = null, val encryptAssertions: Output<Boolean>? = null, val encryptionCertificate: Output<String>? = null, val extraConfig: Output<Map<String, String>>? = null, val forceNameIdFormat: Output<Boolean>? = null, val forcePostBinding: Output<Boolean>? = null, val frontChannelLogout: Output<Boolean>? = null, val fullScopeAllowed: Output<Boolean>? = null, val idpInitiatedSsoRelayState: Output<String>? = null, val idpInitiatedSsoUrlName: Output<String>? = null, val includeAuthnStatement: Output<Boolean>? = null, val loginTheme: Output<String>? = null, val logoutServicePostBindingUrl: Output<String>? = null, val logoutServiceRedirectBindingUrl: Output<String>? = null, val masterSamlProcessingUrl: Output<String>? = null, val name: Output<String>? = null, val nameIdFormat: Output<String>? = null, val realmId: Output<String>? = null, val rootUrl: Output<String>? = null, val signAssertions: Output<Boolean>? = null, val signDocuments: Output<Boolean>? = null, val signatureAlgorithm: Output<String>? = null, val signatureKeyName: Output<String>? = null, val signingCertificate: Output<String>? = null, val signingPrivateKey: Output<String>? = null, val validRedirectUris: Output<List<String>>? = null) : ConvertibleToJava<ClientArgs>

Allows for creating and managing Keycloak clients that use the SAML protocol. Clients are entities that can use Keycloak for user authentication. Typically, clients are applications that redirect users to Keycloak for authentication in order to take advantage of Keycloak's user sessions for SSO.

Import

Clients can be imported using the format {{realm_id}}/{{client_keycloak_id}}, where client_keycloak_id is the unique ID that Keycloak assigns to the client upon creation. This value can be found in the URI when editing this client in the GUI, and is typically a GUID. Example: bash

$ pulumi import keycloak:saml/client:Client saml_client my-realm/dcbc4c73-e478-4928-ae2e-d5e420223352

Constructors

Link copied to clipboard
constructor(alwaysDisplayInConsole: Output<Boolean>? = null, assertionConsumerPostUrl: Output<String>? = null, assertionConsumerRedirectUrl: Output<String>? = null, authenticationFlowBindingOverrides: Output<ClientAuthenticationFlowBindingOverridesArgs>? = null, baseUrl: Output<String>? = null, canonicalizationMethod: Output<String>? = null, clientId: Output<String>? = null, clientSignatureRequired: Output<Boolean>? = null, consentRequired: Output<Boolean>? = null, description: Output<String>? = null, enabled: Output<Boolean>? = null, encryptAssertions: Output<Boolean>? = null, encryptionCertificate: Output<String>? = null, extraConfig: Output<Map<String, String>>? = null, forceNameIdFormat: Output<Boolean>? = null, forcePostBinding: Output<Boolean>? = null, frontChannelLogout: Output<Boolean>? = null, fullScopeAllowed: Output<Boolean>? = null, idpInitiatedSsoRelayState: Output<String>? = null, idpInitiatedSsoUrlName: Output<String>? = null, includeAuthnStatement: Output<Boolean>? = null, loginTheme: Output<String>? = null, logoutServicePostBindingUrl: Output<String>? = null, logoutServiceRedirectBindingUrl: Output<String>? = null, masterSamlProcessingUrl: Output<String>? = null, name: Output<String>? = null, nameIdFormat: Output<String>? = null, realmId: Output<String>? = null, rootUrl: Output<String>? = null, signAssertions: Output<Boolean>? = null, signDocuments: Output<Boolean>? = null, signatureAlgorithm: Output<String>? = null, signatureKeyName: Output<String>? = null, signingCertificate: Output<String>? = null, signingPrivateKey: Output<String>? = null, validRedirectUris: Output<List<String>>? = null)

Properties

Link copied to clipboard
val alwaysDisplayInConsole: Output<Boolean>? = null

Always list this client in the Account UI, even if the user does not have an active session.

Link copied to clipboard
val assertionConsumerPostUrl: Output<String>? = null

SAML POST Binding URL for the client's assertion consumer service (login responses).

Link copied to clipboard

SAML Redirect Binding URL for the client's assertion consumer service (login responses).

Link copied to clipboard

Override realm authentication flow bindings

Link copied to clipboard
val baseUrl: Output<String>? = null

When specified, this URL will be used whenever Keycloak needs to link to this client.

Link copied to clipboard
val canonicalizationMethod: Output<String>? = null

The Canonicalization Method for XML signatures. Should be one of "EXCLUSIVE", "EXCLUSIVE_WITH_COMMENTS", "INCLUSIVE", or "INCLUSIVE_WITH_COMMENTS". Defaults to "EXCLUSIVE".

Link copied to clipboard
val clientId: Output<String>? = null

The unique ID of this client, referenced in the URI during authentication and in issued tokens.

Link copied to clipboard
val clientSignatureRequired: Output<Boolean>? = null

When true, Keycloak will expect that documents originating from a client will be signed using the certificate and/or key configured via signing_certificate and signing_private_key. Defaults to true.

Link copied to clipboard
val consentRequired: Output<Boolean>? = null

When true, users have to consent to client access. Defaults to false.

Link copied to clipboard
val description: Output<String>? = null

The description of this client in the GUI.

Link copied to clipboard
val enabled: Output<Boolean>? = null

When false, this client will not be able to initiate a login or obtain access tokens. Defaults to true.

Link copied to clipboard
val encryptAssertions: Output<Boolean>? = null

When true, the SAML assertions will be encrypted by Keycloak using the client's public key. Defaults to false.

Link copied to clipboard
val encryptionCertificate: Output<String>? = null

If assertions for the client are encrypted, this certificate will be used for encryption.

Link copied to clipboard
val extraConfig: Output<Map<String, String>>? = null
Link copied to clipboard
val forceNameIdFormat: Output<Boolean>? = null

Ignore requested NameID subject format and use the one defined in name_id_format instead. Defaults to false.

Link copied to clipboard
val forcePostBinding: Output<Boolean>? = null

When true, Keycloak will always respond to an authentication request via the SAML POST Binding. Defaults to true.

Link copied to clipboard
val frontChannelLogout: Output<Boolean>? = null

When true, this client will require a browser redirect in order to perform a logout. Defaults to true.

Link copied to clipboard
val fullScopeAllowed: Output<Boolean>? = null

Allow to include all roles mappings in the access token

Link copied to clipboard
val idpInitiatedSsoRelayState: Output<String>? = null

Relay state you want to send with SAML request when you want to do IDP Initiated SSO.

Link copied to clipboard
val idpInitiatedSsoUrlName: Output<String>? = null

URL fragment name to reference client when you want to do IDP Initiated SSO.

Link copied to clipboard
val includeAuthnStatement: Output<Boolean>? = null

When true, an AuthnStatement will be included in the SAML response. Defaults to true.

Link copied to clipboard
val loginTheme: Output<String>? = null

The login theme of this client.

Link copied to clipboard
val logoutServicePostBindingUrl: Output<String>? = null

SAML POST Binding URL for the client's single logout service.

Link copied to clipboard

SAML Redirect Binding URL for the client's single logout service.

Link copied to clipboard
val masterSamlProcessingUrl: Output<String>? = null

When specified, this URL will be used for all SAML requests.

Link copied to clipboard
val name: Output<String>? = null

The display name of this client in the GUI.

Link copied to clipboard
val nameIdFormat: Output<String>? = null

Sets the Name ID format for the subject.

Link copied to clipboard
val realmId: Output<String>? = null

The realm this client is attached to.

Link copied to clipboard
val rootUrl: Output<String>? = null

When specified, this value is prepended to all relative URLs.

Link copied to clipboard
val signAssertions: Output<Boolean>? = null

When true, the SAML assertions will be signed by Keycloak using the realm's private key, and embedded within the SAML XML Auth response. Defaults to false.

Link copied to clipboard
val signatureAlgorithm: Output<String>? = null

The signature algorithm used to sign documents. Should be one of "RSA_SHA1", "RSA_SHA256", "RSA_SHA256_MGF1, "RSA_SHA512", "RSA_SHA512_MGF1" or "DSA_SHA1".

Link copied to clipboard
val signatureKeyName: Output<String>? = null

The value of the KeyName element within the signed SAML document. Should be one of "NONE", "KEY_ID", or "CERT_SUBJECT". Defaults to "KEY_ID".

Link copied to clipboard
val signDocuments: Output<Boolean>? = null

When true, the SAML document will be signed by Keycloak using the realm's private key. Defaults to true.

Link copied to clipboard
val signingCertificate: Output<String>? = null

If documents or assertions from the client are signed, this certificate will be used to verify the signature.

Link copied to clipboard
val signingPrivateKey: Output<String>? = null

If documents or assertions from the client are signed, this private key will be used to verify the signature.

Link copied to clipboard
val validRedirectUris: Output<List<String>>? = null

When specified, Keycloak will use this list to validate given Assertion Consumer URLs specified in the authentication request.

Functions

Link copied to clipboard
open override fun toJava(): ClientArgs