@pulumi/keycloak 5.3.0 → 5.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/attributeImporterIdentityProviderMapper.d.ts +46 -63
- package/attributeImporterIdentityProviderMapper.js +25 -33
- package/attributeImporterIdentityProviderMapper.js.map +1 -1
- package/attributeToRoleIdentityMapper.d.ts +10 -2
- package/attributeToRoleIdentityMapper.js +10 -2
- package/attributeToRoleIdentityMapper.js.map +1 -1
- package/authentication/bindings.d.ts +2 -0
- package/authentication/bindings.js +2 -0
- package/authentication/bindings.js.map +1 -1
- package/authentication/execution.d.ts +8 -2
- package/authentication/execution.js +8 -2
- package/authentication/execution.js.map +1 -1
- package/authentication/executionConfig.d.ts +12 -2
- package/authentication/executionConfig.js +12 -2
- package/authentication/executionConfig.js.map +1 -1
- package/authentication/flow.d.ts +16 -2
- package/authentication/flow.js +16 -2
- package/authentication/flow.js.map +1 -1
- package/authentication/subflow.d.ts +18 -2
- package/authentication/subflow.js +18 -2
- package/authentication/subflow.js.map +1 -1
- package/customIdentityProviderMapping.d.ts +13 -5
- package/customIdentityProviderMapping.js +10 -2
- package/customIdentityProviderMapping.js.map +1 -1
- package/customUserFederation.d.ts +51 -50
- package/customUserFederation.js +27 -14
- package/customUserFederation.js.map +1 -1
- package/defaultGroups.d.ts +19 -27
- package/defaultGroups.js +19 -9
- package/defaultGroups.js.map +1 -1
- package/defaultRoles.d.ts +13 -2
- package/defaultRoles.js +13 -2
- package/defaultRoles.js.map +1 -1
- package/genericClientProtocolMapper.d.ts +40 -37
- package/genericClientProtocolMapper.js +25 -13
- package/genericClientProtocolMapper.js.map +1 -1
- package/genericClientRoleMapper.d.ts +22 -2
- package/genericClientRoleMapper.js +22 -2
- package/genericClientRoleMapper.js.map +1 -1
- package/genericProtocolMapper.d.ts +8 -2
- package/genericProtocolMapper.js +8 -2
- package/genericProtocolMapper.js.map +1 -1
- package/genericRoleMapper.d.ts +22 -2
- package/genericRoleMapper.js +22 -2
- package/genericRoleMapper.js.map +1 -1
- package/getAuthenticationExecution.d.ts +4 -0
- package/getAuthenticationExecution.js +4 -0
- package/getAuthenticationExecution.js.map +1 -1
- package/getAuthenticationFlow.d.ts +4 -0
- package/getAuthenticationFlow.js +4 -0
- package/getAuthenticationFlow.js.map +1 -1
- package/getClientDescriptionConverter.d.ts +4 -0
- package/getClientDescriptionConverter.js +4 -0
- package/getClientDescriptionConverter.js.map +1 -1
- package/getGroup.d.ts +4 -62
- package/getGroup.js +4 -50
- package/getGroup.js.map +1 -1
- package/getRealm.d.ts +32 -10
- package/getRealm.js +32 -4
- package/getRealm.js.map +1 -1
- package/getRealmKeys.d.ts +8 -28
- package/getRealmKeys.js +8 -4
- package/getRealmKeys.js.map +1 -1
- package/getRole.d.ts +4 -65
- package/getRole.js +4 -44
- package/getRole.js.map +1 -1
- package/getUser.d.ts +4 -0
- package/getUser.js +4 -0
- package/getUser.js.map +1 -1
- package/getUserRealmRoles.d.ts +4 -0
- package/getUserRealmRoles.js +4 -0
- package/getUserRealmRoles.js.map +1 -1
- package/group.d.ts +35 -58
- package/group.js +35 -16
- package/group.js.map +1 -1
- package/groupMemberships.d.ts +27 -43
- package/groupMemberships.js +27 -16
- package/groupMemberships.js.map +1 -1
- package/groupPermissions.d.ts +13 -0
- package/groupPermissions.js +13 -0
- package/groupPermissions.js.map +1 -1
- package/groupRoles.d.ts +32 -91
- package/groupRoles.js +32 -55
- package/groupRoles.js.map +1 -1
- package/hardcodedAttributeIdentityProviderMapper.d.ts +2 -0
- package/hardcodedAttributeIdentityProviderMapper.js +2 -0
- package/hardcodedAttributeIdentityProviderMapper.js.map +1 -1
- package/hardcodedRoleIdentityMapper.d.ts +2 -0
- package/hardcodedRoleIdentityMapper.js +2 -0
- package/hardcodedRoleIdentityMapper.js.map +1 -1
- package/identityProviderTokenExchangeScopePermission.d.ts +10 -2
- package/identityProviderTokenExchangeScopePermission.js +10 -2
- package/identityProviderTokenExchangeScopePermission.js.map +1 -1
- package/ldap/customMapper.d.ts +10 -2
- package/ldap/customMapper.js +10 -2
- package/ldap/customMapper.js.map +1 -1
- package/ldap/fullNameMapper.d.ts +41 -54
- package/ldap/fullNameMapper.js +32 -18
- package/ldap/fullNameMapper.js.map +1 -1
- package/ldap/groupMapper.d.ts +55 -164
- package/ldap/groupMapper.js +46 -20
- package/ldap/groupMapper.js.map +1 -1
- package/ldap/hardcodedAttributeMapper.d.ts +10 -2
- package/ldap/hardcodedAttributeMapper.js +10 -2
- package/ldap/hardcodedAttributeMapper.js.map +1 -1
- package/ldap/hardcodedGroupMapper.d.ts +10 -2
- package/ldap/hardcodedGroupMapper.js +10 -2
- package/ldap/hardcodedGroupMapper.js.map +1 -1
- package/ldap/hardcodedRoleMapper.d.ts +29 -64
- package/ldap/hardcodedRoleMapper.js +17 -52
- package/ldap/hardcodedRoleMapper.js.map +1 -1
- package/ldap/msadLdsUserAccountControlMapper.d.ts +10 -2
- package/ldap/msadLdsUserAccountControlMapper.js +10 -2
- package/ldap/msadLdsUserAccountControlMapper.js.map +1 -1
- package/ldap/msadUserAccountControlMapper.d.ts +34 -32
- package/ldap/msadUserAccountControlMapper.js +25 -14
- package/ldap/msadUserAccountControlMapper.js.map +1 -1
- package/ldap/roleMapper.d.ts +10 -2
- package/ldap/roleMapper.js +10 -2
- package/ldap/roleMapper.js.map +1 -1
- package/ldap/userAttributeMapper.d.ts +60 -45
- package/ldap/userAttributeMapper.js +30 -15
- package/ldap/userAttributeMapper.js.map +1 -1
- package/ldap/userFederation.d.ts +125 -95
- package/ldap/userFederation.js +53 -20
- package/ldap/userFederation.js.map +1 -1
- package/oidc/googleIdentityProvider.d.ts +8 -2
- package/oidc/googleIdentityProvider.js +8 -2
- package/oidc/googleIdentityProvider.js.map +1 -1
- package/oidc/identityProvider.d.ts +8 -2
- package/oidc/identityProvider.js +8 -2
- package/oidc/identityProvider.js.map +1 -1
- package/openid/audienceProtocolMapper.d.ts +62 -45
- package/openid/audienceProtocolMapper.js +38 -21
- package/openid/audienceProtocolMapper.js.map +1 -1
- package/openid/audienceResolveProtocolMapper.d.ts +17 -3
- package/openid/audienceResolveProtocolMapper.js +17 -3
- package/openid/audienceResolveProtocolMapper.js.map +1 -1
- package/openid/audienceResolveProtocolMappter.d.ts +17 -3
- package/openid/audienceResolveProtocolMappter.js +17 -3
- package/openid/audienceResolveProtocolMappter.js.map +1 -1
- package/openid/client.d.ts +48 -431
- package/openid/client.js +48 -14
- package/openid/client.js.map +1 -1
- package/openid/clientAuthorizationPermission.d.ts +6 -2
- package/openid/clientAuthorizationPermission.js +6 -2
- package/openid/clientAuthorizationPermission.js.map +1 -1
- package/openid/clientDefaultScopes.d.ts +17 -33
- package/openid/clientDefaultScopes.js +17 -6
- package/openid/clientDefaultScopes.js.map +1 -1
- package/openid/clientOptionalScopes.d.ts +17 -34
- package/openid/clientOptionalScopes.js +17 -7
- package/openid/clientOptionalScopes.js.map +1 -1
- package/openid/clientPolicy.d.ts +2 -0
- package/openid/clientPolicy.js +2 -0
- package/openid/clientPolicy.js.map +1 -1
- package/openid/clientScope.d.ts +27 -67
- package/openid/clientScope.js +27 -13
- package/openid/clientScope.js.map +1 -1
- package/openid/clientServiceAccountRealmRole.d.ts +8 -2
- package/openid/clientServiceAccountRealmRole.js +8 -2
- package/openid/clientServiceAccountRealmRole.js.map +1 -1
- package/openid/clientServiceAccountRole.d.ts +8 -2
- package/openid/clientServiceAccountRole.js +8 -2
- package/openid/clientServiceAccountRole.js.map +1 -1
- package/openid/fullNameProtocolMapper.d.ts +49 -61
- package/openid/fullNameProtocolMapper.js +37 -22
- package/openid/fullNameProtocolMapper.js.map +1 -1
- package/openid/getClient.d.ts +32 -14
- package/openid/getClient.js +32 -2
- package/openid/getClient.js.map +1 -1
- package/openid/getClientAuthorizationPolicy.d.ts +4 -0
- package/openid/getClientAuthorizationPolicy.js +4 -0
- package/openid/getClientAuthorizationPolicy.js.map +1 -1
- package/openid/getClientScope.d.ts +4 -0
- package/openid/getClientScope.js +4 -0
- package/openid/getClientScope.js.map +1 -1
- package/openid/getClientServiceAccountUser.d.ts +4 -0
- package/openid/getClientServiceAccountUser.js +4 -0
- package/openid/getClientServiceAccountUser.js.map +1 -1
- package/openid/groupMembershipProtocolMapper.d.ts +53 -81
- package/openid/groupMembershipProtocolMapper.js +41 -24
- package/openid/groupMembershipProtocolMapper.js.map +1 -1
- package/openid/hardcodedClaimProtocolMapper.d.ts +66 -66
- package/openid/hardcodedClaimProtocolMapper.js +42 -24
- package/openid/hardcodedClaimProtocolMapper.js.map +1 -1
- package/openid/hardcodedRoleProtocolMapper.d.ts +48 -43
- package/openid/hardcodedRoleProtocolMapper.js +36 -22
- package/openid/hardcodedRoleProtocolMapper.js.map +1 -1
- package/openid/scriptProtocolMapper.d.ts +17 -3
- package/openid/scriptProtocolMapper.js +17 -3
- package/openid/scriptProtocolMapper.js.map +1 -1
- package/openid/userAttributeProtocolMapper.d.ts +73 -72
- package/openid/userAttributeProtocolMapper.js +43 -24
- package/openid/userAttributeProtocolMapper.js.map +1 -1
- package/openid/userClientRoleProtocolMapper.d.ts +17 -3
- package/openid/userClientRoleProtocolMapper.js +17 -3
- package/openid/userClientRoleProtocolMapper.js.map +1 -1
- package/openid/userPropertyProtocolMapper.d.ts +66 -67
- package/openid/userPropertyProtocolMapper.js +42 -25
- package/openid/userPropertyProtocolMapper.js.map +1 -1
- package/openid/userRealmRoleProtocolMapper.d.ts +73 -63
- package/openid/userRealmRoleProtocolMapper.js +43 -24
- package/openid/userRealmRoleProtocolMapper.js.map +1 -1
- package/openid/userSessionNoteProtocolMapper.d.ts +17 -3
- package/openid/userSessionNoteProtocolMapper.js +17 -3
- package/openid/userSessionNoteProtocolMapper.js.map +1 -1
- package/package.json +1 -1
- package/realm.d.ts +30 -509
- package/realm.js +0 -83
- package/realm.js.map +1 -1
- package/realmEvents.d.ts +20 -74
- package/realmEvents.js +20 -11
- package/realmEvents.js.map +1 -1
- package/realmKeystoreAesGenerated.d.ts +8 -2
- package/realmKeystoreAesGenerated.js +8 -2
- package/realmKeystoreAesGenerated.js.map +1 -1
- package/realmKeystoreEcdsaGenerated.d.ts +8 -2
- package/realmKeystoreEcdsaGenerated.js +8 -2
- package/realmKeystoreEcdsaGenerated.js.map +1 -1
- package/realmKeystoreHmacGenerated.d.ts +8 -2
- package/realmKeystoreHmacGenerated.js +8 -2
- package/realmKeystoreHmacGenerated.js.map +1 -1
- package/realmKeystoreJavaGenerated.d.ts +8 -2
- package/realmKeystoreJavaGenerated.js +8 -2
- package/realmKeystoreJavaGenerated.js.map +1 -1
- package/realmKeystoreRsa.d.ts +6 -2
- package/realmKeystoreRsa.js +6 -2
- package/realmKeystoreRsa.js.map +1 -1
- package/realmKeystoreRsaGenerated.d.ts +8 -2
- package/realmKeystoreRsaGenerated.js +8 -2
- package/realmKeystoreRsaGenerated.js.map +1 -1
- package/realmUserProfile.d.ts +2 -0
- package/realmUserProfile.js +2 -0
- package/realmUserProfile.js.map +1 -1
- package/requiredAction.d.ts +8 -2
- package/requiredAction.js +8 -2
- package/requiredAction.js.map +1 -1
- package/role.d.ts +58 -125
- package/role.js +58 -71
- package/role.js.map +1 -1
- package/saml/client.d.ts +46 -327
- package/saml/client.js +46 -12
- package/saml/client.js.map +1 -1
- package/saml/clientDefaultScope.d.ts +5 -1
- package/saml/clientDefaultScope.js +5 -1
- package/saml/clientDefaultScope.js.map +1 -1
- package/saml/clientScope.d.ts +10 -2
- package/saml/clientScope.js +10 -2
- package/saml/clientScope.js.map +1 -1
- package/saml/getClient.d.ts +4 -0
- package/saml/getClient.js +4 -0
- package/saml/getClient.js.map +1 -1
- package/saml/getClientInstallationProvider.d.ts +4 -0
- package/saml/getClientInstallationProvider.js +4 -0
- package/saml/getClientInstallationProvider.js.map +1 -1
- package/saml/identityProvider.d.ts +163 -117
- package/saml/identityProvider.js +52 -21
- package/saml/identityProvider.js.map +1 -1
- package/saml/scriptProtocolMapper.d.ts +13 -3
- package/saml/scriptProtocolMapper.js +13 -3
- package/saml/scriptProtocolMapper.js.map +1 -1
- package/saml/userAttributeProtocolMapper.d.ts +32 -91
- package/saml/userAttributeProtocolMapper.js +32 -19
- package/saml/userAttributeProtocolMapper.js.map +1 -1
- package/saml/userPropertyProtocolMapper.d.ts +32 -91
- package/saml/userPropertyProtocolMapper.js +32 -19
- package/saml/userPropertyProtocolMapper.js.map +1 -1
- package/types/input.d.ts +74 -183
- package/types/output.d.ts +44 -207
- package/user.d.ts +36 -112
- package/user.js +36 -22
- package/user.js.map +1 -1
- package/userGroups.d.ts +9 -1
- package/userGroups.js +9 -1
- package/userGroups.js.map +1 -1
- package/userRoles.d.ts +11 -2
- package/userRoles.js +11 -2
- package/userRoles.js.map +1 -1
- package/userTemplateImporterIdentityProviderMapper.d.ts +10 -2
- package/userTemplateImporterIdentityProviderMapper.js +10 -2
- package/userTemplateImporterIdentityProviderMapper.js.map +1 -1
- package/usersPermissions.d.ts +10 -25
- package/usersPermissions.js +10 -25
- package/usersPermissions.js.map +1 -1
package/openid/client.d.ts
CHANGED
|
@@ -2,43 +2,77 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
2
2
|
import * as inputs from "../types/input";
|
|
3
3
|
import * as outputs from "../types/output";
|
|
4
4
|
/**
|
|
5
|
+
* ## # keycloak.openid.Client
|
|
6
|
+
*
|
|
5
7
|
* Allows for creating and managing Keycloak clients that use the OpenID Connect protocol.
|
|
6
8
|
*
|
|
7
9
|
* Clients are entities that can use Keycloak for user authentication. Typically,
|
|
8
10
|
* clients are applications that redirect users to Keycloak for authentication
|
|
9
11
|
* in order to take advantage of Keycloak's user sessions for SSO.
|
|
10
12
|
*
|
|
11
|
-
*
|
|
13
|
+
* ### Example Usage
|
|
12
14
|
*
|
|
15
|
+
* <!--Start PulumiCodeChooser -->
|
|
13
16
|
* ```typescript
|
|
14
17
|
* import * as pulumi from "@pulumi/pulumi";
|
|
15
18
|
* import * as keycloak from "@pulumi/keycloak";
|
|
16
19
|
*
|
|
17
20
|
* const realm = new keycloak.Realm("realm", {
|
|
18
|
-
* realm: "my-realm",
|
|
19
21
|
* enabled: true,
|
|
22
|
+
* realm: "my-realm",
|
|
20
23
|
* });
|
|
21
24
|
* const openidClient = new keycloak.openid.Client("openidClient", {
|
|
22
|
-
*
|
|
25
|
+
* accessType: "CONFIDENTIAL",
|
|
23
26
|
* clientId: "test-client",
|
|
24
27
|
* enabled: true,
|
|
25
|
-
*
|
|
28
|
+
* realmId: realm.id,
|
|
26
29
|
* validRedirectUris: ["http://localhost:8080/openid-callback"],
|
|
27
|
-
* loginTheme: "keycloak",
|
|
28
|
-
* extraConfig: {
|
|
29
|
-
* key1: "value1",
|
|
30
|
-
* key2: "value2",
|
|
31
|
-
* },
|
|
32
30
|
* });
|
|
33
31
|
* ```
|
|
32
|
+
* <!--End PulumiCodeChooser -->
|
|
34
33
|
*
|
|
35
|
-
*
|
|
34
|
+
* ### Argument Reference
|
|
36
35
|
*
|
|
37
|
-
*
|
|
36
|
+
* The following arguments are supported:
|
|
38
37
|
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
38
|
+
* - `realmId` - (Required) The realm this client is attached to.
|
|
39
|
+
* - `clientId` - (Required) The unique ID of this client, referenced in the URI during authentication and in issued tokens.
|
|
40
|
+
* - `name` - (Optional) The display name of this client in the GUI.
|
|
41
|
+
* - `enabled` - (Optional) When false, this client will not be able to initiate a login or obtain access tokens. Defaults to `true`.
|
|
42
|
+
* - `description` - (Optional) The description of this client in the GUI.
|
|
43
|
+
* - `accessType` - (Required) Specifies the type of client, which can be one of the following:
|
|
44
|
+
* - `CONFIDENTIAL` - Used for server-side clients that require both client ID and secret when authenticating.
|
|
45
|
+
* This client should be used for applications using the Authorization Code or Client Credentials grant flows.
|
|
46
|
+
* - `PUBLIC` - Used for browser-only applications that do not require a client secret, and instead rely only on authorized redirect
|
|
47
|
+
* URIs for security. This client should be used for applications using the Implicit grant flow.
|
|
48
|
+
* - `BEARER-ONLY` - Used for services that never initiate a login. This client will only allow bearer token requests.
|
|
49
|
+
* - `clientSecret` - (Optional) The secret for clients with an `accessType` of `CONFIDENTIAL` or `BEARER-ONLY`. This value is sensitive and
|
|
50
|
+
* should be treated with the same care as a password. If omitted, Keycloak will generate a GUID for this attribute.
|
|
51
|
+
* - `standardFlowEnabled` - (Optional) When `true`, the OAuth2 Authorization Code Grant will be enabled for this client. Defaults to `false`.
|
|
52
|
+
* - `implicitFlowEnabled` - (Optional) When `true`, the OAuth2 Implicit Grant will be enabled for this client. Defaults to `false`.
|
|
53
|
+
* - `directAccessGrantsEnabled` - (Optional) When `true`, the OAuth2 Resource Owner Password Grant will be enabled for this client. Defaults to `false`.
|
|
54
|
+
* - `serviceAccountsEnabled` - (Optional) When `true`, the OAuth2 Client Credentials grant will be enabled for this client. Defaults to `false`.
|
|
55
|
+
* - `validRedirectUris` - (Optional) A list of valid URIs a browser is permitted to redirect to after a successful login or logout. Simple
|
|
56
|
+
* wildcards in the form of an asterisk can be used here. This attribute must be set if either `standardFlowEnabled` or `implicitFlowEnabled`
|
|
57
|
+
* is set to `true`.
|
|
58
|
+
* - `webOrigins` - (Optional) A list of allowed CORS origins. `+` can be used to permit all valid redirect URIs, and `*` can be used to permit all origins.
|
|
59
|
+
* - `adminUrl` - (Optional) URL to the admin interface of the client.
|
|
60
|
+
* - `baseUrl` - (Optional) Default URL to use when the auth server needs to redirect or link back to the client.
|
|
61
|
+
* - `pkceCodeChallengeMethod` - (Optional) The challenge method to use for Proof Key for Code Exchange. Can be either `plain` or `S256` or set to empty value ``.
|
|
62
|
+
* - `fullScopeAllowed` - (Optional) - Allow to include all roles mappings in the access token.
|
|
63
|
+
*
|
|
64
|
+
* ### Attributes Reference
|
|
65
|
+
*
|
|
66
|
+
* In addition to the arguments listed above, the following computed attributes are exported:
|
|
67
|
+
*
|
|
68
|
+
* - `serviceAccountUserId` - When service accounts are enabled for this client, this attribute is the unique ID for the Keycloak user that represents this service account.
|
|
69
|
+
*
|
|
70
|
+
* ### Import
|
|
71
|
+
*
|
|
72
|
+
* Clients can be imported using the format `{{realm_id}}/{{client_keycloak_id}}`, where `clientKeycloakId` is the unique ID that Keycloak
|
|
73
|
+
* 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.
|
|
74
|
+
*
|
|
75
|
+
* Example:
|
|
42
76
|
*/
|
|
43
77
|
export declare class Client extends pulumi.CustomResource {
|
|
44
78
|
/**
|
|
@@ -56,194 +90,53 @@ export declare class Client extends pulumi.CustomResource {
|
|
|
56
90
|
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
57
91
|
*/
|
|
58
92
|
static isInstance(obj: any): obj is Client;
|
|
59
|
-
/**
|
|
60
|
-
* The amount of time in seconds before an access token expires. This will override the default for the realm.
|
|
61
|
-
*/
|
|
62
93
|
readonly accessTokenLifespan: pulumi.Output<string>;
|
|
63
|
-
/**
|
|
64
|
-
* Specifies the type of client, which can be one of the following:
|
|
65
|
-
*/
|
|
66
94
|
readonly accessType: pulumi.Output<string>;
|
|
67
|
-
/**
|
|
68
|
-
* URL to the admin interface of the client.
|
|
69
|
-
*/
|
|
70
95
|
readonly adminUrl: pulumi.Output<string>;
|
|
71
|
-
/**
|
|
72
|
-
* Override realm authentication flow bindings
|
|
73
|
-
*/
|
|
74
96
|
readonly authenticationFlowBindingOverrides: pulumi.Output<outputs.openid.ClientAuthenticationFlowBindingOverrides | undefined>;
|
|
75
|
-
/**
|
|
76
|
-
* When this block is present, fine-grained authorization will be enabled for this client. The client's `accessType` must be `CONFIDENTIAL`, and `serviceAccountsEnabled` must be `true`. This block has the following arguments:
|
|
77
|
-
*/
|
|
78
97
|
readonly authorization: pulumi.Output<outputs.openid.ClientAuthorization | undefined>;
|
|
79
|
-
/**
|
|
80
|
-
* Specifying whether a "revokeOfflineAccess" event is included in the Logout Token when the Backchannel Logout URL is used. Keycloak will revoke offline sessions when receiving a Logout Token with this event.
|
|
81
|
-
*/
|
|
82
98
|
readonly backchannelLogoutRevokeOfflineSessions: pulumi.Output<boolean | undefined>;
|
|
83
|
-
/**
|
|
84
|
-
* When `true`, a sid (session ID) claim will be included in the logout token when the backchannel logout URL is used. Defaults to `true`.
|
|
85
|
-
*/
|
|
86
99
|
readonly backchannelLogoutSessionRequired: pulumi.Output<boolean | undefined>;
|
|
87
|
-
/**
|
|
88
|
-
* The URL that will cause the client to log itself out when a logout request is sent to this realm. If omitted, no logout request will be sent to the client is this case.
|
|
89
|
-
*/
|
|
90
100
|
readonly backchannelLogoutUrl: pulumi.Output<string | undefined>;
|
|
91
|
-
/**
|
|
92
|
-
* Default URL to use when the auth server needs to redirect or link back to the client.
|
|
93
|
-
*/
|
|
94
101
|
readonly baseUrl: pulumi.Output<string>;
|
|
95
|
-
/**
|
|
96
|
-
* Defaults to `client-secret`. The authenticator type for clients with an `accessType` of `CONFIDENTIAL` or `BEARER-ONLY`. A default Keycloak installation will have the following available types:
|
|
97
|
-
* - `client-secret` (Default) Use client id and client secret to authenticate client.
|
|
98
|
-
* - `client-jwt` Use signed JWT to authenticate client. Set signing algorithm in `extraConfig` with `attributes.token.endpoint.auth.signing.alg = <alg>`
|
|
99
|
-
* - `client-x509` Use x509 certificate to authenticate client. Set Subject DN in `extraConfig` with `attributes.x509.subjectdn = <subjectDn>`
|
|
100
|
-
* - `client-secret-jwt` Use signed JWT with client secret to authenticate client. Set signing algorithm in `extraConfig` with `attributes.token.endpoint.auth.signing.alg = <alg>`
|
|
101
|
-
*/
|
|
102
102
|
readonly clientAuthenticatorType: pulumi.Output<string | undefined>;
|
|
103
|
-
/**
|
|
104
|
-
* The Client ID for this client, referenced in the URI during authentication and in issued tokens.
|
|
105
|
-
*/
|
|
106
103
|
readonly clientId: pulumi.Output<string>;
|
|
107
|
-
/**
|
|
108
|
-
* Time a client session is allowed to be idle before it expires. Tokens are invalidated when a client session is expired. If not set it uses the standard SSO Session Idle value.
|
|
109
|
-
*/
|
|
110
104
|
readonly clientOfflineSessionIdleTimeout: pulumi.Output<string>;
|
|
111
|
-
/**
|
|
112
|
-
* Max time before a client session is expired. Tokens are invalidated when a client session is expired. If not set, it uses the standard SSO Session Max value.
|
|
113
|
-
*/
|
|
114
105
|
readonly clientOfflineSessionMaxLifespan: pulumi.Output<string>;
|
|
115
|
-
/**
|
|
116
|
-
* The secret for clients with an `accessType` of `CONFIDENTIAL` or `BEARER-ONLY`. This value is sensitive and should be treated with the same care as a password. If omitted, this will be generated by Keycloak.
|
|
117
|
-
*/
|
|
118
106
|
readonly clientSecret: pulumi.Output<string>;
|
|
119
|
-
/**
|
|
120
|
-
* Time a client offline session is allowed to be idle before it expires. Offline tokens are invalidated when a client offline session is expired. If not set it uses the Offline Session Idle value.
|
|
121
|
-
*/
|
|
122
107
|
readonly clientSessionIdleTimeout: pulumi.Output<string>;
|
|
123
|
-
/**
|
|
124
|
-
* Max time before a client offline session is expired. Offline tokens are invalidated when a client offline session is expired. If not set, it uses the Offline Session Max value.
|
|
125
|
-
*/
|
|
126
108
|
readonly clientSessionMaxLifespan: pulumi.Output<string>;
|
|
127
|
-
/**
|
|
128
|
-
* When `true`, users have to consent to client access. Defaults to `false`.
|
|
129
|
-
*/
|
|
130
109
|
readonly consentRequired: pulumi.Output<boolean>;
|
|
131
|
-
/**
|
|
132
|
-
* The text to display on the consent screen about permissions specific to this client. This is applicable only when `displayOnConsentScreen` is `true`.
|
|
133
|
-
*/
|
|
134
110
|
readonly consentScreenText: pulumi.Output<string>;
|
|
135
|
-
/**
|
|
136
|
-
* The description of this client in the GUI.
|
|
137
|
-
*/
|
|
138
111
|
readonly description: pulumi.Output<string>;
|
|
139
|
-
/**
|
|
140
|
-
* When `true`, the OAuth2 Resource Owner Password Grant will be enabled for this client. Defaults to `false`.
|
|
141
|
-
*/
|
|
142
112
|
readonly directAccessGrantsEnabled: pulumi.Output<boolean>;
|
|
143
|
-
/**
|
|
144
|
-
* When `true`, the consent screen will display information about the client itself. Defaults to `false`. This is applicable only when `consentRequired` is `true`.
|
|
145
|
-
*/
|
|
146
113
|
readonly displayOnConsentScreen: pulumi.Output<boolean>;
|
|
147
|
-
/**
|
|
148
|
-
* When `false`, this client will not be able to initiate a login or obtain access tokens. Defaults to `true`.
|
|
149
|
-
*/
|
|
150
114
|
readonly enabled: pulumi.Output<boolean | undefined>;
|
|
151
|
-
/**
|
|
152
|
-
* When `true`, the parameter `sessionState` will not be included in OpenID Connect Authentication Response.
|
|
153
|
-
*/
|
|
154
115
|
readonly excludeSessionStateFromAuthResponse: pulumi.Output<boolean>;
|
|
155
116
|
readonly extraConfig: pulumi.Output<{
|
|
156
117
|
[key: string]: any;
|
|
157
118
|
} | undefined>;
|
|
158
|
-
/**
|
|
159
|
-
* When `true`, frontchannel logout will be enabled for this client. Specify the url with `frontchannelLogoutUrl`. Defaults to `false`.
|
|
160
|
-
*/
|
|
161
119
|
readonly frontchannelLogoutEnabled: pulumi.Output<boolean>;
|
|
162
|
-
/**
|
|
163
|
-
* The frontchannel logout url. This is applicable only when `frontchannelLogoutEnabled` is `true`.
|
|
164
|
-
*/
|
|
165
120
|
readonly frontchannelLogoutUrl: pulumi.Output<string | undefined>;
|
|
166
|
-
/**
|
|
167
|
-
* Allow to include all roles mappings in the access token.
|
|
168
|
-
*/
|
|
169
121
|
readonly fullScopeAllowed: pulumi.Output<boolean | undefined>;
|
|
170
|
-
/**
|
|
171
|
-
* When `true`, the OAuth2 Implicit Grant will be enabled for this client. Defaults to `false`.
|
|
172
|
-
*/
|
|
173
122
|
readonly implicitFlowEnabled: pulumi.Output<boolean>;
|
|
174
|
-
/**
|
|
175
|
-
* When `true`, the client with the specified `clientId` is assumed to already exist, and it will be imported into state instead of being created. This attribute is useful when dealing with clients that Keycloak creates automatically during realm creation, such as `account` and `admin-cli`. Note, that the client will not be removed during destruction if `import` is `true`.
|
|
176
|
-
*/
|
|
177
123
|
readonly import: pulumi.Output<boolean | undefined>;
|
|
178
|
-
/**
|
|
179
|
-
* The client login theme. This will override the default theme for the realm.
|
|
180
|
-
*/
|
|
181
124
|
readonly loginTheme: pulumi.Output<string | undefined>;
|
|
182
|
-
/**
|
|
183
|
-
* The display name of this client in the GUI.
|
|
184
|
-
*/
|
|
185
125
|
readonly name: pulumi.Output<string>;
|
|
186
|
-
/**
|
|
187
|
-
* Enables support for OAuth 2.0 Device Authorization Grant, which means that client is an application on device that has limited input capabilities or lack a suitable browser.
|
|
188
|
-
*/
|
|
189
126
|
readonly oauth2DeviceAuthorizationGrantEnabled: pulumi.Output<boolean | undefined>;
|
|
190
|
-
/**
|
|
191
|
-
* The maximum amount of time a client has to finish the device code flow before it expires.
|
|
192
|
-
*/
|
|
193
127
|
readonly oauth2DeviceCodeLifespan: pulumi.Output<string | undefined>;
|
|
194
|
-
/**
|
|
195
|
-
* The minimum amount of time in seconds that the client should wait between polling requests to the token endpoint.
|
|
196
|
-
*/
|
|
197
128
|
readonly oauth2DevicePollingInterval: pulumi.Output<string | undefined>;
|
|
198
|
-
/**
|
|
199
|
-
* The challenge method to use for Proof Key for Code Exchange. Can be either `plain` or `S256` or set to empty value ``.
|
|
200
|
-
*/
|
|
201
129
|
readonly pkceCodeChallengeMethod: pulumi.Output<string | undefined>;
|
|
202
|
-
/**
|
|
203
|
-
* The realm this client is attached to.
|
|
204
|
-
*/
|
|
205
130
|
readonly realmId: pulumi.Output<string>;
|
|
206
|
-
/**
|
|
207
|
-
* (Computed) When authorization is enabled for this client, this attribute is the unique ID for the client (the same value as the `.id` attribute).
|
|
208
|
-
*/
|
|
209
131
|
readonly resourceServerId: pulumi.Output<string>;
|
|
210
|
-
/**
|
|
211
|
-
* When specified, this URL is prepended to any relative URLs found within `validRedirectUris`, `webOrigins`, and `adminUrl`. NOTE: Due to limitations in the Keycloak API, when the `rootUrl` attribute is used, the `validRedirectUris`, `webOrigins`, and `adminUrl` attributes will be required.
|
|
212
|
-
*/
|
|
213
132
|
readonly rootUrl: pulumi.Output<string>;
|
|
214
|
-
/**
|
|
215
|
-
* (Computed) When service accounts are enabled for this client, this attribute is the unique ID for the Keycloak user that represents this service account.
|
|
216
|
-
*/
|
|
217
133
|
readonly serviceAccountUserId: pulumi.Output<string>;
|
|
218
|
-
/**
|
|
219
|
-
* When `true`, the OAuth2 Client Credentials grant will be enabled for this client. Defaults to `false`.
|
|
220
|
-
*/
|
|
221
134
|
readonly serviceAccountsEnabled: pulumi.Output<boolean>;
|
|
222
|
-
/**
|
|
223
|
-
* When `true`, the OAuth2 Authorization Code Grant will be enabled for this client. Defaults to `false`.
|
|
224
|
-
*/
|
|
225
135
|
readonly standardFlowEnabled: pulumi.Output<boolean>;
|
|
226
|
-
/**
|
|
227
|
-
* If this is `true`, a refreshToken will be created and added to the token response. If this is `false` then no refreshToken will be generated. Defaults to `true`.
|
|
228
|
-
*/
|
|
229
136
|
readonly useRefreshTokens: pulumi.Output<boolean | undefined>;
|
|
230
|
-
/**
|
|
231
|
-
* If this is `true`, a refreshToken will be created and added to the token response if the clientCredentials grant is used and a user session will be created. If this is `false` then no refreshToken will be generated and the associated user session will be removed, in accordance with OAuth 2.0 RFC6749 Section 4.4.3. Defaults to `false`.
|
|
232
|
-
*/
|
|
233
137
|
readonly useRefreshTokensClientCredentials: pulumi.Output<boolean | undefined>;
|
|
234
|
-
/**
|
|
235
|
-
* A list of valid URIs a browser is permitted to redirect to after a successful logout.
|
|
236
|
-
*/
|
|
237
138
|
readonly validPostLogoutRedirectUris: pulumi.Output<string[]>;
|
|
238
|
-
/**
|
|
239
|
-
* A list of valid URIs a browser is permitted to redirect to after a successful login or logout. Simple
|
|
240
|
-
* wildcards in the form of an asterisk can be used here. This attribute must be set if either `standardFlowEnabled` or `implicitFlowEnabled`
|
|
241
|
-
* is set to `true`.
|
|
242
|
-
*/
|
|
243
139
|
readonly validRedirectUris: pulumi.Output<string[]>;
|
|
244
|
-
/**
|
|
245
|
-
* A list of allowed CORS origins. To permit all valid redirect URIs, add `+`. Note that this will not include the `*` wildcard. To permit all origins, explicitly add `*`."
|
|
246
|
-
*/
|
|
247
140
|
readonly webOrigins: pulumi.Output<string[]>;
|
|
248
141
|
/**
|
|
249
142
|
* Create a Client resource with the given unique name, arguments, and options.
|
|
@@ -258,379 +151,103 @@ export declare class Client extends pulumi.CustomResource {
|
|
|
258
151
|
* Input properties used for looking up and filtering Client resources.
|
|
259
152
|
*/
|
|
260
153
|
export interface ClientState {
|
|
261
|
-
/**
|
|
262
|
-
* The amount of time in seconds before an access token expires. This will override the default for the realm.
|
|
263
|
-
*/
|
|
264
154
|
accessTokenLifespan?: pulumi.Input<string>;
|
|
265
|
-
/**
|
|
266
|
-
* Specifies the type of client, which can be one of the following:
|
|
267
|
-
*/
|
|
268
155
|
accessType?: pulumi.Input<string>;
|
|
269
|
-
/**
|
|
270
|
-
* URL to the admin interface of the client.
|
|
271
|
-
*/
|
|
272
156
|
adminUrl?: pulumi.Input<string>;
|
|
273
|
-
/**
|
|
274
|
-
* Override realm authentication flow bindings
|
|
275
|
-
*/
|
|
276
157
|
authenticationFlowBindingOverrides?: pulumi.Input<inputs.openid.ClientAuthenticationFlowBindingOverrides>;
|
|
277
|
-
/**
|
|
278
|
-
* When this block is present, fine-grained authorization will be enabled for this client. The client's `accessType` must be `CONFIDENTIAL`, and `serviceAccountsEnabled` must be `true`. This block has the following arguments:
|
|
279
|
-
*/
|
|
280
158
|
authorization?: pulumi.Input<inputs.openid.ClientAuthorization>;
|
|
281
|
-
/**
|
|
282
|
-
* Specifying whether a "revokeOfflineAccess" event is included in the Logout Token when the Backchannel Logout URL is used. Keycloak will revoke offline sessions when receiving a Logout Token with this event.
|
|
283
|
-
*/
|
|
284
159
|
backchannelLogoutRevokeOfflineSessions?: pulumi.Input<boolean>;
|
|
285
|
-
/**
|
|
286
|
-
* When `true`, a sid (session ID) claim will be included in the logout token when the backchannel logout URL is used. Defaults to `true`.
|
|
287
|
-
*/
|
|
288
160
|
backchannelLogoutSessionRequired?: pulumi.Input<boolean>;
|
|
289
|
-
/**
|
|
290
|
-
* The URL that will cause the client to log itself out when a logout request is sent to this realm. If omitted, no logout request will be sent to the client is this case.
|
|
291
|
-
*/
|
|
292
161
|
backchannelLogoutUrl?: pulumi.Input<string>;
|
|
293
|
-
/**
|
|
294
|
-
* Default URL to use when the auth server needs to redirect or link back to the client.
|
|
295
|
-
*/
|
|
296
162
|
baseUrl?: pulumi.Input<string>;
|
|
297
|
-
/**
|
|
298
|
-
* Defaults to `client-secret`. The authenticator type for clients with an `accessType` of `CONFIDENTIAL` or `BEARER-ONLY`. A default Keycloak installation will have the following available types:
|
|
299
|
-
* - `client-secret` (Default) Use client id and client secret to authenticate client.
|
|
300
|
-
* - `client-jwt` Use signed JWT to authenticate client. Set signing algorithm in `extraConfig` with `attributes.token.endpoint.auth.signing.alg = <alg>`
|
|
301
|
-
* - `client-x509` Use x509 certificate to authenticate client. Set Subject DN in `extraConfig` with `attributes.x509.subjectdn = <subjectDn>`
|
|
302
|
-
* - `client-secret-jwt` Use signed JWT with client secret to authenticate client. Set signing algorithm in `extraConfig` with `attributes.token.endpoint.auth.signing.alg = <alg>`
|
|
303
|
-
*/
|
|
304
163
|
clientAuthenticatorType?: pulumi.Input<string>;
|
|
305
|
-
/**
|
|
306
|
-
* The Client ID for this client, referenced in the URI during authentication and in issued tokens.
|
|
307
|
-
*/
|
|
308
164
|
clientId?: pulumi.Input<string>;
|
|
309
|
-
/**
|
|
310
|
-
* Time a client session is allowed to be idle before it expires. Tokens are invalidated when a client session is expired. If not set it uses the standard SSO Session Idle value.
|
|
311
|
-
*/
|
|
312
165
|
clientOfflineSessionIdleTimeout?: pulumi.Input<string>;
|
|
313
|
-
/**
|
|
314
|
-
* Max time before a client session is expired. Tokens are invalidated when a client session is expired. If not set, it uses the standard SSO Session Max value.
|
|
315
|
-
*/
|
|
316
166
|
clientOfflineSessionMaxLifespan?: pulumi.Input<string>;
|
|
317
|
-
/**
|
|
318
|
-
* The secret for clients with an `accessType` of `CONFIDENTIAL` or `BEARER-ONLY`. This value is sensitive and should be treated with the same care as a password. If omitted, this will be generated by Keycloak.
|
|
319
|
-
*/
|
|
320
167
|
clientSecret?: pulumi.Input<string>;
|
|
321
|
-
/**
|
|
322
|
-
* Time a client offline session is allowed to be idle before it expires. Offline tokens are invalidated when a client offline session is expired. If not set it uses the Offline Session Idle value.
|
|
323
|
-
*/
|
|
324
168
|
clientSessionIdleTimeout?: pulumi.Input<string>;
|
|
325
|
-
/**
|
|
326
|
-
* Max time before a client offline session is expired. Offline tokens are invalidated when a client offline session is expired. If not set, it uses the Offline Session Max value.
|
|
327
|
-
*/
|
|
328
169
|
clientSessionMaxLifespan?: pulumi.Input<string>;
|
|
329
|
-
/**
|
|
330
|
-
* When `true`, users have to consent to client access. Defaults to `false`.
|
|
331
|
-
*/
|
|
332
170
|
consentRequired?: pulumi.Input<boolean>;
|
|
333
|
-
/**
|
|
334
|
-
* The text to display on the consent screen about permissions specific to this client. This is applicable only when `displayOnConsentScreen` is `true`.
|
|
335
|
-
*/
|
|
336
171
|
consentScreenText?: pulumi.Input<string>;
|
|
337
|
-
/**
|
|
338
|
-
* The description of this client in the GUI.
|
|
339
|
-
*/
|
|
340
172
|
description?: pulumi.Input<string>;
|
|
341
|
-
/**
|
|
342
|
-
* When `true`, the OAuth2 Resource Owner Password Grant will be enabled for this client. Defaults to `false`.
|
|
343
|
-
*/
|
|
344
173
|
directAccessGrantsEnabled?: pulumi.Input<boolean>;
|
|
345
|
-
/**
|
|
346
|
-
* When `true`, the consent screen will display information about the client itself. Defaults to `false`. This is applicable only when `consentRequired` is `true`.
|
|
347
|
-
*/
|
|
348
174
|
displayOnConsentScreen?: pulumi.Input<boolean>;
|
|
349
|
-
/**
|
|
350
|
-
* When `false`, this client will not be able to initiate a login or obtain access tokens. Defaults to `true`.
|
|
351
|
-
*/
|
|
352
175
|
enabled?: pulumi.Input<boolean>;
|
|
353
|
-
/**
|
|
354
|
-
* When `true`, the parameter `sessionState` will not be included in OpenID Connect Authentication Response.
|
|
355
|
-
*/
|
|
356
176
|
excludeSessionStateFromAuthResponse?: pulumi.Input<boolean>;
|
|
357
177
|
extraConfig?: pulumi.Input<{
|
|
358
178
|
[key: string]: any;
|
|
359
179
|
}>;
|
|
360
|
-
/**
|
|
361
|
-
* When `true`, frontchannel logout will be enabled for this client. Specify the url with `frontchannelLogoutUrl`. Defaults to `false`.
|
|
362
|
-
*/
|
|
363
180
|
frontchannelLogoutEnabled?: pulumi.Input<boolean>;
|
|
364
|
-
/**
|
|
365
|
-
* The frontchannel logout url. This is applicable only when `frontchannelLogoutEnabled` is `true`.
|
|
366
|
-
*/
|
|
367
181
|
frontchannelLogoutUrl?: pulumi.Input<string>;
|
|
368
|
-
/**
|
|
369
|
-
* Allow to include all roles mappings in the access token.
|
|
370
|
-
*/
|
|
371
182
|
fullScopeAllowed?: pulumi.Input<boolean>;
|
|
372
|
-
/**
|
|
373
|
-
* When `true`, the OAuth2 Implicit Grant will be enabled for this client. Defaults to `false`.
|
|
374
|
-
*/
|
|
375
183
|
implicitFlowEnabled?: pulumi.Input<boolean>;
|
|
376
|
-
/**
|
|
377
|
-
* When `true`, the client with the specified `clientId` is assumed to already exist, and it will be imported into state instead of being created. This attribute is useful when dealing with clients that Keycloak creates automatically during realm creation, such as `account` and `admin-cli`. Note, that the client will not be removed during destruction if `import` is `true`.
|
|
378
|
-
*/
|
|
379
184
|
import?: pulumi.Input<boolean>;
|
|
380
|
-
/**
|
|
381
|
-
* The client login theme. This will override the default theme for the realm.
|
|
382
|
-
*/
|
|
383
185
|
loginTheme?: pulumi.Input<string>;
|
|
384
|
-
/**
|
|
385
|
-
* The display name of this client in the GUI.
|
|
386
|
-
*/
|
|
387
186
|
name?: pulumi.Input<string>;
|
|
388
|
-
/**
|
|
389
|
-
* Enables support for OAuth 2.0 Device Authorization Grant, which means that client is an application on device that has limited input capabilities or lack a suitable browser.
|
|
390
|
-
*/
|
|
391
187
|
oauth2DeviceAuthorizationGrantEnabled?: pulumi.Input<boolean>;
|
|
392
|
-
/**
|
|
393
|
-
* The maximum amount of time a client has to finish the device code flow before it expires.
|
|
394
|
-
*/
|
|
395
188
|
oauth2DeviceCodeLifespan?: pulumi.Input<string>;
|
|
396
|
-
/**
|
|
397
|
-
* The minimum amount of time in seconds that the client should wait between polling requests to the token endpoint.
|
|
398
|
-
*/
|
|
399
189
|
oauth2DevicePollingInterval?: pulumi.Input<string>;
|
|
400
|
-
/**
|
|
401
|
-
* The challenge method to use for Proof Key for Code Exchange. Can be either `plain` or `S256` or set to empty value ``.
|
|
402
|
-
*/
|
|
403
190
|
pkceCodeChallengeMethod?: pulumi.Input<string>;
|
|
404
|
-
/**
|
|
405
|
-
* The realm this client is attached to.
|
|
406
|
-
*/
|
|
407
191
|
realmId?: pulumi.Input<string>;
|
|
408
|
-
/**
|
|
409
|
-
* (Computed) When authorization is enabled for this client, this attribute is the unique ID for the client (the same value as the `.id` attribute).
|
|
410
|
-
*/
|
|
411
192
|
resourceServerId?: pulumi.Input<string>;
|
|
412
|
-
/**
|
|
413
|
-
* When specified, this URL is prepended to any relative URLs found within `validRedirectUris`, `webOrigins`, and `adminUrl`. NOTE: Due to limitations in the Keycloak API, when the `rootUrl` attribute is used, the `validRedirectUris`, `webOrigins`, and `adminUrl` attributes will be required.
|
|
414
|
-
*/
|
|
415
193
|
rootUrl?: pulumi.Input<string>;
|
|
416
|
-
/**
|
|
417
|
-
* (Computed) When service accounts are enabled for this client, this attribute is the unique ID for the Keycloak user that represents this service account.
|
|
418
|
-
*/
|
|
419
194
|
serviceAccountUserId?: pulumi.Input<string>;
|
|
420
|
-
/**
|
|
421
|
-
* When `true`, the OAuth2 Client Credentials grant will be enabled for this client. Defaults to `false`.
|
|
422
|
-
*/
|
|
423
195
|
serviceAccountsEnabled?: pulumi.Input<boolean>;
|
|
424
|
-
/**
|
|
425
|
-
* When `true`, the OAuth2 Authorization Code Grant will be enabled for this client. Defaults to `false`.
|
|
426
|
-
*/
|
|
427
196
|
standardFlowEnabled?: pulumi.Input<boolean>;
|
|
428
|
-
/**
|
|
429
|
-
* If this is `true`, a refreshToken will be created and added to the token response. If this is `false` then no refreshToken will be generated. Defaults to `true`.
|
|
430
|
-
*/
|
|
431
197
|
useRefreshTokens?: pulumi.Input<boolean>;
|
|
432
|
-
/**
|
|
433
|
-
* If this is `true`, a refreshToken will be created and added to the token response if the clientCredentials grant is used and a user session will be created. If this is `false` then no refreshToken will be generated and the associated user session will be removed, in accordance with OAuth 2.0 RFC6749 Section 4.4.3. Defaults to `false`.
|
|
434
|
-
*/
|
|
435
198
|
useRefreshTokensClientCredentials?: pulumi.Input<boolean>;
|
|
436
|
-
/**
|
|
437
|
-
* A list of valid URIs a browser is permitted to redirect to after a successful logout.
|
|
438
|
-
*/
|
|
439
199
|
validPostLogoutRedirectUris?: pulumi.Input<pulumi.Input<string>[]>;
|
|
440
|
-
/**
|
|
441
|
-
* A list of valid URIs a browser is permitted to redirect to after a successful login or logout. Simple
|
|
442
|
-
* wildcards in the form of an asterisk can be used here. This attribute must be set if either `standardFlowEnabled` or `implicitFlowEnabled`
|
|
443
|
-
* is set to `true`.
|
|
444
|
-
*/
|
|
445
200
|
validRedirectUris?: pulumi.Input<pulumi.Input<string>[]>;
|
|
446
|
-
/**
|
|
447
|
-
* A list of allowed CORS origins. To permit all valid redirect URIs, add `+`. Note that this will not include the `*` wildcard. To permit all origins, explicitly add `*`."
|
|
448
|
-
*/
|
|
449
201
|
webOrigins?: pulumi.Input<pulumi.Input<string>[]>;
|
|
450
202
|
}
|
|
451
203
|
/**
|
|
452
204
|
* The set of arguments for constructing a Client resource.
|
|
453
205
|
*/
|
|
454
206
|
export interface ClientArgs {
|
|
455
|
-
/**
|
|
456
|
-
* The amount of time in seconds before an access token expires. This will override the default for the realm.
|
|
457
|
-
*/
|
|
458
207
|
accessTokenLifespan?: pulumi.Input<string>;
|
|
459
|
-
/**
|
|
460
|
-
* Specifies the type of client, which can be one of the following:
|
|
461
|
-
*/
|
|
462
208
|
accessType: pulumi.Input<string>;
|
|
463
|
-
/**
|
|
464
|
-
* URL to the admin interface of the client.
|
|
465
|
-
*/
|
|
466
209
|
adminUrl?: pulumi.Input<string>;
|
|
467
|
-
/**
|
|
468
|
-
* Override realm authentication flow bindings
|
|
469
|
-
*/
|
|
470
210
|
authenticationFlowBindingOverrides?: pulumi.Input<inputs.openid.ClientAuthenticationFlowBindingOverrides>;
|
|
471
|
-
/**
|
|
472
|
-
* When this block is present, fine-grained authorization will be enabled for this client. The client's `accessType` must be `CONFIDENTIAL`, and `serviceAccountsEnabled` must be `true`. This block has the following arguments:
|
|
473
|
-
*/
|
|
474
211
|
authorization?: pulumi.Input<inputs.openid.ClientAuthorization>;
|
|
475
|
-
/**
|
|
476
|
-
* Specifying whether a "revokeOfflineAccess" event is included in the Logout Token when the Backchannel Logout URL is used. Keycloak will revoke offline sessions when receiving a Logout Token with this event.
|
|
477
|
-
*/
|
|
478
212
|
backchannelLogoutRevokeOfflineSessions?: pulumi.Input<boolean>;
|
|
479
|
-
/**
|
|
480
|
-
* When `true`, a sid (session ID) claim will be included in the logout token when the backchannel logout URL is used. Defaults to `true`.
|
|
481
|
-
*/
|
|
482
213
|
backchannelLogoutSessionRequired?: pulumi.Input<boolean>;
|
|
483
|
-
/**
|
|
484
|
-
* The URL that will cause the client to log itself out when a logout request is sent to this realm. If omitted, no logout request will be sent to the client is this case.
|
|
485
|
-
*/
|
|
486
214
|
backchannelLogoutUrl?: pulumi.Input<string>;
|
|
487
|
-
/**
|
|
488
|
-
* Default URL to use when the auth server needs to redirect or link back to the client.
|
|
489
|
-
*/
|
|
490
215
|
baseUrl?: pulumi.Input<string>;
|
|
491
|
-
/**
|
|
492
|
-
* Defaults to `client-secret`. The authenticator type for clients with an `accessType` of `CONFIDENTIAL` or `BEARER-ONLY`. A default Keycloak installation will have the following available types:
|
|
493
|
-
* - `client-secret` (Default) Use client id and client secret to authenticate client.
|
|
494
|
-
* - `client-jwt` Use signed JWT to authenticate client. Set signing algorithm in `extraConfig` with `attributes.token.endpoint.auth.signing.alg = <alg>`
|
|
495
|
-
* - `client-x509` Use x509 certificate to authenticate client. Set Subject DN in `extraConfig` with `attributes.x509.subjectdn = <subjectDn>`
|
|
496
|
-
* - `client-secret-jwt` Use signed JWT with client secret to authenticate client. Set signing algorithm in `extraConfig` with `attributes.token.endpoint.auth.signing.alg = <alg>`
|
|
497
|
-
*/
|
|
498
216
|
clientAuthenticatorType?: pulumi.Input<string>;
|
|
499
|
-
/**
|
|
500
|
-
* The Client ID for this client, referenced in the URI during authentication and in issued tokens.
|
|
501
|
-
*/
|
|
502
217
|
clientId: pulumi.Input<string>;
|
|
503
|
-
/**
|
|
504
|
-
* Time a client session is allowed to be idle before it expires. Tokens are invalidated when a client session is expired. If not set it uses the standard SSO Session Idle value.
|
|
505
|
-
*/
|
|
506
218
|
clientOfflineSessionIdleTimeout?: pulumi.Input<string>;
|
|
507
|
-
/**
|
|
508
|
-
* Max time before a client session is expired. Tokens are invalidated when a client session is expired. If not set, it uses the standard SSO Session Max value.
|
|
509
|
-
*/
|
|
510
219
|
clientOfflineSessionMaxLifespan?: pulumi.Input<string>;
|
|
511
|
-
/**
|
|
512
|
-
* The secret for clients with an `accessType` of `CONFIDENTIAL` or `BEARER-ONLY`. This value is sensitive and should be treated with the same care as a password. If omitted, this will be generated by Keycloak.
|
|
513
|
-
*/
|
|
514
220
|
clientSecret?: pulumi.Input<string>;
|
|
515
|
-
/**
|
|
516
|
-
* Time a client offline session is allowed to be idle before it expires. Offline tokens are invalidated when a client offline session is expired. If not set it uses the Offline Session Idle value.
|
|
517
|
-
*/
|
|
518
221
|
clientSessionIdleTimeout?: pulumi.Input<string>;
|
|
519
|
-
/**
|
|
520
|
-
* Max time before a client offline session is expired. Offline tokens are invalidated when a client offline session is expired. If not set, it uses the Offline Session Max value.
|
|
521
|
-
*/
|
|
522
222
|
clientSessionMaxLifespan?: pulumi.Input<string>;
|
|
523
|
-
/**
|
|
524
|
-
* When `true`, users have to consent to client access. Defaults to `false`.
|
|
525
|
-
*/
|
|
526
223
|
consentRequired?: pulumi.Input<boolean>;
|
|
527
|
-
/**
|
|
528
|
-
* The text to display on the consent screen about permissions specific to this client. This is applicable only when `displayOnConsentScreen` is `true`.
|
|
529
|
-
*/
|
|
530
224
|
consentScreenText?: pulumi.Input<string>;
|
|
531
|
-
/**
|
|
532
|
-
* The description of this client in the GUI.
|
|
533
|
-
*/
|
|
534
225
|
description?: pulumi.Input<string>;
|
|
535
|
-
/**
|
|
536
|
-
* When `true`, the OAuth2 Resource Owner Password Grant will be enabled for this client. Defaults to `false`.
|
|
537
|
-
*/
|
|
538
226
|
directAccessGrantsEnabled?: pulumi.Input<boolean>;
|
|
539
|
-
/**
|
|
540
|
-
* When `true`, the consent screen will display information about the client itself. Defaults to `false`. This is applicable only when `consentRequired` is `true`.
|
|
541
|
-
*/
|
|
542
227
|
displayOnConsentScreen?: pulumi.Input<boolean>;
|
|
543
|
-
/**
|
|
544
|
-
* When `false`, this client will not be able to initiate a login or obtain access tokens. Defaults to `true`.
|
|
545
|
-
*/
|
|
546
228
|
enabled?: pulumi.Input<boolean>;
|
|
547
|
-
/**
|
|
548
|
-
* When `true`, the parameter `sessionState` will not be included in OpenID Connect Authentication Response.
|
|
549
|
-
*/
|
|
550
229
|
excludeSessionStateFromAuthResponse?: pulumi.Input<boolean>;
|
|
551
230
|
extraConfig?: pulumi.Input<{
|
|
552
231
|
[key: string]: any;
|
|
553
232
|
}>;
|
|
554
|
-
/**
|
|
555
|
-
* When `true`, frontchannel logout will be enabled for this client. Specify the url with `frontchannelLogoutUrl`. Defaults to `false`.
|
|
556
|
-
*/
|
|
557
233
|
frontchannelLogoutEnabled?: pulumi.Input<boolean>;
|
|
558
|
-
/**
|
|
559
|
-
* The frontchannel logout url. This is applicable only when `frontchannelLogoutEnabled` is `true`.
|
|
560
|
-
*/
|
|
561
234
|
frontchannelLogoutUrl?: pulumi.Input<string>;
|
|
562
|
-
/**
|
|
563
|
-
* Allow to include all roles mappings in the access token.
|
|
564
|
-
*/
|
|
565
235
|
fullScopeAllowed?: pulumi.Input<boolean>;
|
|
566
|
-
/**
|
|
567
|
-
* When `true`, the OAuth2 Implicit Grant will be enabled for this client. Defaults to `false`.
|
|
568
|
-
*/
|
|
569
236
|
implicitFlowEnabled?: pulumi.Input<boolean>;
|
|
570
|
-
/**
|
|
571
|
-
* When `true`, the client with the specified `clientId` is assumed to already exist, and it will be imported into state instead of being created. This attribute is useful when dealing with clients that Keycloak creates automatically during realm creation, such as `account` and `admin-cli`. Note, that the client will not be removed during destruction if `import` is `true`.
|
|
572
|
-
*/
|
|
573
237
|
import?: pulumi.Input<boolean>;
|
|
574
|
-
/**
|
|
575
|
-
* The client login theme. This will override the default theme for the realm.
|
|
576
|
-
*/
|
|
577
238
|
loginTheme?: pulumi.Input<string>;
|
|
578
|
-
/**
|
|
579
|
-
* The display name of this client in the GUI.
|
|
580
|
-
*/
|
|
581
239
|
name?: pulumi.Input<string>;
|
|
582
|
-
/**
|
|
583
|
-
* Enables support for OAuth 2.0 Device Authorization Grant, which means that client is an application on device that has limited input capabilities or lack a suitable browser.
|
|
584
|
-
*/
|
|
585
240
|
oauth2DeviceAuthorizationGrantEnabled?: pulumi.Input<boolean>;
|
|
586
|
-
/**
|
|
587
|
-
* The maximum amount of time a client has to finish the device code flow before it expires.
|
|
588
|
-
*/
|
|
589
241
|
oauth2DeviceCodeLifespan?: pulumi.Input<string>;
|
|
590
|
-
/**
|
|
591
|
-
* The minimum amount of time in seconds that the client should wait between polling requests to the token endpoint.
|
|
592
|
-
*/
|
|
593
242
|
oauth2DevicePollingInterval?: pulumi.Input<string>;
|
|
594
|
-
/**
|
|
595
|
-
* The challenge method to use for Proof Key for Code Exchange. Can be either `plain` or `S256` or set to empty value ``.
|
|
596
|
-
*/
|
|
597
243
|
pkceCodeChallengeMethod?: pulumi.Input<string>;
|
|
598
|
-
/**
|
|
599
|
-
* The realm this client is attached to.
|
|
600
|
-
*/
|
|
601
244
|
realmId: pulumi.Input<string>;
|
|
602
|
-
/**
|
|
603
|
-
* When specified, this URL is prepended to any relative URLs found within `validRedirectUris`, `webOrigins`, and `adminUrl`. NOTE: Due to limitations in the Keycloak API, when the `rootUrl` attribute is used, the `validRedirectUris`, `webOrigins`, and `adminUrl` attributes will be required.
|
|
604
|
-
*/
|
|
605
245
|
rootUrl?: pulumi.Input<string>;
|
|
606
|
-
/**
|
|
607
|
-
* When `true`, the OAuth2 Client Credentials grant will be enabled for this client. Defaults to `false`.
|
|
608
|
-
*/
|
|
609
246
|
serviceAccountsEnabled?: pulumi.Input<boolean>;
|
|
610
|
-
/**
|
|
611
|
-
* When `true`, the OAuth2 Authorization Code Grant will be enabled for this client. Defaults to `false`.
|
|
612
|
-
*/
|
|
613
247
|
standardFlowEnabled?: pulumi.Input<boolean>;
|
|
614
|
-
/**
|
|
615
|
-
* If this is `true`, a refreshToken will be created and added to the token response. If this is `false` then no refreshToken will be generated. Defaults to `true`.
|
|
616
|
-
*/
|
|
617
248
|
useRefreshTokens?: pulumi.Input<boolean>;
|
|
618
|
-
/**
|
|
619
|
-
* If this is `true`, a refreshToken will be created and added to the token response if the clientCredentials grant is used and a user session will be created. If this is `false` then no refreshToken will be generated and the associated user session will be removed, in accordance with OAuth 2.0 RFC6749 Section 4.4.3. Defaults to `false`.
|
|
620
|
-
*/
|
|
621
249
|
useRefreshTokensClientCredentials?: pulumi.Input<boolean>;
|
|
622
|
-
/**
|
|
623
|
-
* A list of valid URIs a browser is permitted to redirect to after a successful logout.
|
|
624
|
-
*/
|
|
625
250
|
validPostLogoutRedirectUris?: pulumi.Input<pulumi.Input<string>[]>;
|
|
626
|
-
/**
|
|
627
|
-
* A list of valid URIs a browser is permitted to redirect to after a successful login or logout. Simple
|
|
628
|
-
* wildcards in the form of an asterisk can be used here. This attribute must be set if either `standardFlowEnabled` or `implicitFlowEnabled`
|
|
629
|
-
* is set to `true`.
|
|
630
|
-
*/
|
|
631
251
|
validRedirectUris?: pulumi.Input<pulumi.Input<string>[]>;
|
|
632
|
-
/**
|
|
633
|
-
* A list of allowed CORS origins. To permit all valid redirect URIs, add `+`. Note that this will not include the `*` wildcard. To permit all origins, explicitly add `*`."
|
|
634
|
-
*/
|
|
635
252
|
webOrigins?: pulumi.Input<pulumi.Input<string>[]>;
|
|
636
253
|
}
|