@pulumi/keycloak 5.3.0 → 5.3.2

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.
Files changed (276) hide show
  1. package/attributeImporterIdentityProviderMapper.d.ts +45 -63
  2. package/attributeImporterIdentityProviderMapper.js +24 -33
  3. package/attributeImporterIdentityProviderMapper.js.map +1 -1
  4. package/attributeToRoleIdentityMapper.d.ts +14 -6
  5. package/attributeToRoleIdentityMapper.js +14 -6
  6. package/attributeToRoleIdentityMapper.js.map +1 -1
  7. package/authentication/bindings.d.ts +3 -3
  8. package/authentication/bindings.js +3 -3
  9. package/authentication/execution.d.ts +8 -4
  10. package/authentication/execution.js +8 -4
  11. package/authentication/execution.js.map +1 -1
  12. package/authentication/executionConfig.d.ts +10 -2
  13. package/authentication/executionConfig.js +10 -2
  14. package/authentication/executionConfig.js.map +1 -1
  15. package/authentication/flow.d.ts +14 -2
  16. package/authentication/flow.js +14 -2
  17. package/authentication/flow.js.map +1 -1
  18. package/authentication/subflow.d.ts +16 -2
  19. package/authentication/subflow.js +16 -2
  20. package/authentication/subflow.js.map +1 -1
  21. package/customIdentityProviderMapping.d.ts +12 -5
  22. package/customIdentityProviderMapping.js +12 -5
  23. package/customIdentityProviderMapping.js.map +1 -1
  24. package/customUserFederation.d.ts +48 -48
  25. package/customUserFederation.js +24 -12
  26. package/customUserFederation.js.map +1 -1
  27. package/defaultGroups.d.ts +19 -26
  28. package/defaultGroups.js +19 -8
  29. package/defaultGroups.js.map +1 -1
  30. package/defaultRoles.d.ts +12 -3
  31. package/defaultRoles.js +12 -3
  32. package/defaultRoles.js.map +1 -1
  33. package/genericClientProtocolMapper.d.ts +36 -34
  34. package/genericClientProtocolMapper.js +21 -10
  35. package/genericClientProtocolMapper.js.map +1 -1
  36. package/genericClientRoleMapper.d.ts +42 -15
  37. package/genericClientRoleMapper.js +42 -15
  38. package/genericClientRoleMapper.js.map +1 -1
  39. package/genericProtocolMapper.d.ts +9 -4
  40. package/genericProtocolMapper.js +9 -4
  41. package/genericProtocolMapper.js.map +1 -1
  42. package/genericRoleMapper.d.ts +42 -15
  43. package/genericRoleMapper.js +42 -15
  44. package/genericRoleMapper.js.map +1 -1
  45. package/getClientDescriptionConverter.d.ts +50 -50
  46. package/getClientDescriptionConverter.js +50 -50
  47. package/getGroup.d.ts +4 -62
  48. package/getGroup.js +4 -50
  49. package/getGroup.js.map +1 -1
  50. package/getRealm.d.ts +36 -10
  51. package/getRealm.js +36 -4
  52. package/getRealm.js.map +1 -1
  53. package/getRealmKeys.d.ts +8 -28
  54. package/getRealmKeys.js +8 -4
  55. package/getRealmKeys.js.map +1 -1
  56. package/getRole.d.ts +4 -65
  57. package/getRole.js +4 -44
  58. package/getRole.js.map +1 -1
  59. package/getUser.d.ts +2 -0
  60. package/getUser.js +2 -0
  61. package/getUser.js.map +1 -1
  62. package/getUserRealmRoles.d.ts +4 -0
  63. package/getUserRealmRoles.js +4 -0
  64. package/getUserRealmRoles.js.map +1 -1
  65. package/group.d.ts +37 -57
  66. package/group.js +37 -15
  67. package/group.js.map +1 -1
  68. package/groupMemberships.d.ts +28 -43
  69. package/groupMemberships.js +28 -16
  70. package/groupMemberships.js.map +1 -1
  71. package/groupPermissions.d.ts +13 -0
  72. package/groupPermissions.js +13 -0
  73. package/groupPermissions.js.map +1 -1
  74. package/groupRoles.d.ts +35 -90
  75. package/groupRoles.js +35 -54
  76. package/groupRoles.js.map +1 -1
  77. package/hardcodedAttributeIdentityProviderMapper.d.ts +4 -3
  78. package/hardcodedAttributeIdentityProviderMapper.js +4 -3
  79. package/hardcodedAttributeIdentityProviderMapper.js.map +1 -1
  80. package/hardcodedRoleIdentityMapper.d.ts +6 -4
  81. package/hardcodedRoleIdentityMapper.js +6 -4
  82. package/hardcodedRoleIdentityMapper.js.map +1 -1
  83. package/identityProviderTokenExchangeScopePermission.d.ts +13 -6
  84. package/identityProviderTokenExchangeScopePermission.js +13 -6
  85. package/identityProviderTokenExchangeScopePermission.js.map +1 -1
  86. package/ldap/customMapper.d.ts +14 -6
  87. package/ldap/customMapper.js +14 -6
  88. package/ldap/customMapper.js.map +1 -1
  89. package/ldap/fullNameMapper.d.ts +35 -48
  90. package/ldap/fullNameMapper.js +26 -12
  91. package/ldap/fullNameMapper.js.map +1 -1
  92. package/ldap/groupMapper.d.ts +47 -156
  93. package/ldap/groupMapper.js +38 -12
  94. package/ldap/groupMapper.js.map +1 -1
  95. package/ldap/hardcodedAttributeMapper.d.ts +12 -4
  96. package/ldap/hardcodedAttributeMapper.js +12 -4
  97. package/ldap/hardcodedAttributeMapper.js.map +1 -1
  98. package/ldap/hardcodedGroupMapper.d.ts +16 -5
  99. package/ldap/hardcodedGroupMapper.js +16 -5
  100. package/ldap/hardcodedGroupMapper.js.map +1 -1
  101. package/ldap/hardcodedRoleMapper.d.ts +31 -66
  102. package/ldap/hardcodedRoleMapper.js +19 -54
  103. package/ldap/hardcodedRoleMapper.js.map +1 -1
  104. package/ldap/msadLdsUserAccountControlMapper.d.ts +12 -4
  105. package/ldap/msadLdsUserAccountControlMapper.js +12 -4
  106. package/ldap/msadLdsUserAccountControlMapper.js.map +1 -1
  107. package/ldap/msadUserAccountControlMapper.d.ts +29 -27
  108. package/ldap/msadUserAccountControlMapper.js +20 -9
  109. package/ldap/msadUserAccountControlMapper.js.map +1 -1
  110. package/ldap/roleMapper.d.ts +12 -4
  111. package/ldap/roleMapper.js +12 -4
  112. package/ldap/roleMapper.js.map +1 -1
  113. package/ldap/userAttributeMapper.d.ts +54 -39
  114. package/ldap/userAttributeMapper.js +24 -9
  115. package/ldap/userAttributeMapper.js.map +1 -1
  116. package/ldap/userFederation.d.ts +117 -88
  117. package/ldap/userFederation.js +45 -13
  118. package/ldap/userFederation.js.map +1 -1
  119. package/oidc/googleIdentityProvider.d.ts +8 -4
  120. package/oidc/googleIdentityProvider.js +8 -4
  121. package/oidc/googleIdentityProvider.js.map +1 -1
  122. package/oidc/identityProvider.d.ts +7 -3
  123. package/oidc/identityProvider.js +7 -3
  124. package/oidc/identityProvider.js.map +1 -1
  125. package/openid/audienceProtocolMapper.d.ts +62 -43
  126. package/openid/audienceProtocolMapper.js +38 -19
  127. package/openid/audienceProtocolMapper.js.map +1 -1
  128. package/openid/audienceResolveProtocolMapper.d.ts +22 -7
  129. package/openid/audienceResolveProtocolMapper.js +22 -7
  130. package/openid/audienceResolveProtocolMapper.js.map +1 -1
  131. package/openid/audienceResolveProtocolMappter.d.ts +22 -7
  132. package/openid/audienceResolveProtocolMappter.js +22 -7
  133. package/openid/audienceResolveProtocolMappter.js.map +1 -1
  134. package/openid/client.d.ts +45 -429
  135. package/openid/client.js +45 -12
  136. package/openid/client.js.map +1 -1
  137. package/openid/clientAuthorizationPermission.d.ts +6 -2
  138. package/openid/clientAuthorizationPermission.js +6 -2
  139. package/openid/clientAuthorizationPermission.js.map +1 -1
  140. package/openid/clientDefaultScopes.d.ts +16 -31
  141. package/openid/clientDefaultScopes.js +16 -4
  142. package/openid/clientDefaultScopes.js.map +1 -1
  143. package/openid/clientOptionalScopes.d.ts +16 -32
  144. package/openid/clientOptionalScopes.js +16 -5
  145. package/openid/clientOptionalScopes.js.map +1 -1
  146. package/openid/clientPolicy.d.ts +5 -3
  147. package/openid/clientPolicy.js +5 -3
  148. package/openid/clientPolicy.js.map +1 -1
  149. package/openid/clientScope.d.ts +25 -66
  150. package/openid/clientScope.js +25 -12
  151. package/openid/clientScope.js.map +1 -1
  152. package/openid/clientServiceAccountRealmRole.d.ts +12 -4
  153. package/openid/clientServiceAccountRealmRole.js +12 -4
  154. package/openid/clientServiceAccountRealmRole.js.map +1 -1
  155. package/openid/clientServiceAccountRole.d.ts +14 -5
  156. package/openid/clientServiceAccountRole.js +14 -5
  157. package/openid/clientServiceAccountRole.js.map +1 -1
  158. package/openid/fullNameProtocolMapper.d.ts +49 -59
  159. package/openid/fullNameProtocolMapper.js +37 -20
  160. package/openid/fullNameProtocolMapper.js.map +1 -1
  161. package/openid/getClient.d.ts +30 -14
  162. package/openid/getClient.js +30 -2
  163. package/openid/getClient.js.map +1 -1
  164. package/openid/getClientAuthorizationPolicy.d.ts +8 -2
  165. package/openid/getClientAuthorizationPolicy.js +8 -2
  166. package/openid/getClientAuthorizationPolicy.js.map +1 -1
  167. package/openid/getClientScope.d.ts +4 -2
  168. package/openid/getClientScope.js +4 -2
  169. package/openid/getClientScope.js.map +1 -1
  170. package/openid/getClientServiceAccountUser.d.ts +4 -2
  171. package/openid/getClientServiceAccountUser.js +4 -2
  172. package/openid/getClientServiceAccountUser.js.map +1 -1
  173. package/openid/groupMembershipProtocolMapper.d.ts +51 -77
  174. package/openid/groupMembershipProtocolMapper.js +39 -20
  175. package/openid/groupMembershipProtocolMapper.js.map +1 -1
  176. package/openid/hardcodedClaimProtocolMapper.d.ts +64 -62
  177. package/openid/hardcodedClaimProtocolMapper.js +40 -20
  178. package/openid/hardcodedClaimProtocolMapper.js.map +1 -1
  179. package/openid/hardcodedRoleProtocolMapper.d.ts +56 -43
  180. package/openid/hardcodedRoleProtocolMapper.js +44 -22
  181. package/openid/hardcodedRoleProtocolMapper.js.map +1 -1
  182. package/openid/scriptProtocolMapper.d.ts +23 -7
  183. package/openid/scriptProtocolMapper.js +23 -7
  184. package/openid/scriptProtocolMapper.js.map +1 -1
  185. package/openid/userAttributeProtocolMapper.d.ts +71 -68
  186. package/openid/userAttributeProtocolMapper.js +41 -20
  187. package/openid/userAttributeProtocolMapper.js.map +1 -1
  188. package/openid/userClientRoleProtocolMapper.d.ts +23 -7
  189. package/openid/userClientRoleProtocolMapper.js +23 -7
  190. package/openid/userClientRoleProtocolMapper.js.map +1 -1
  191. package/openid/userPropertyProtocolMapper.d.ts +64 -63
  192. package/openid/userPropertyProtocolMapper.js +40 -21
  193. package/openid/userPropertyProtocolMapper.js.map +1 -1
  194. package/openid/userRealmRoleProtocolMapper.d.ts +71 -59
  195. package/openid/userRealmRoleProtocolMapper.js +41 -20
  196. package/openid/userRealmRoleProtocolMapper.js.map +1 -1
  197. package/openid/userSessionNoteProtocolMapper.d.ts +23 -7
  198. package/openid/userSessionNoteProtocolMapper.js +23 -7
  199. package/openid/userSessionNoteProtocolMapper.js.map +1 -1
  200. package/package.json +1 -1
  201. package/realm.d.ts +30 -509
  202. package/realm.js +0 -83
  203. package/realm.js.map +1 -1
  204. package/realmEvents.d.ts +15 -71
  205. package/realmEvents.js +15 -8
  206. package/realmEvents.js.map +1 -1
  207. package/realmKeystoreAesGenerated.d.ts +8 -3
  208. package/realmKeystoreAesGenerated.js +8 -3
  209. package/realmKeystoreAesGenerated.js.map +1 -1
  210. package/realmKeystoreEcdsaGenerated.d.ts +8 -3
  211. package/realmKeystoreEcdsaGenerated.js +8 -3
  212. package/realmKeystoreEcdsaGenerated.js.map +1 -1
  213. package/realmKeystoreHmacGenerated.d.ts +8 -3
  214. package/realmKeystoreHmacGenerated.js +8 -3
  215. package/realmKeystoreHmacGenerated.js.map +1 -1
  216. package/realmKeystoreJavaGenerated.d.ts +8 -3
  217. package/realmKeystoreJavaGenerated.js +8 -3
  218. package/realmKeystoreJavaGenerated.js.map +1 -1
  219. package/realmKeystoreRsa.d.ts +6 -2
  220. package/realmKeystoreRsa.js +6 -2
  221. package/realmKeystoreRsa.js.map +1 -1
  222. package/realmKeystoreRsaGenerated.d.ts +8 -3
  223. package/realmKeystoreRsaGenerated.js +8 -3
  224. package/realmKeystoreRsaGenerated.js.map +1 -1
  225. package/realmUserProfile.d.ts +1 -1
  226. package/realmUserProfile.js +1 -1
  227. package/requiredAction.d.ts +8 -3
  228. package/requiredAction.js +8 -3
  229. package/requiredAction.js.map +1 -1
  230. package/role.d.ts +57 -110
  231. package/role.js +57 -56
  232. package/role.js.map +1 -1
  233. package/saml/client.d.ts +9 -344
  234. package/saml/client.js +9 -29
  235. package/saml/client.js.map +1 -1
  236. package/saml/clientDefaultScope.d.ts +0 -33
  237. package/saml/clientDefaultScope.js +0 -33
  238. package/saml/clientDefaultScope.js.map +1 -1
  239. package/saml/clientScope.d.ts +10 -3
  240. package/saml/clientScope.js +10 -3
  241. package/saml/clientScope.js.map +1 -1
  242. package/saml/getClient.d.ts +2 -0
  243. package/saml/getClient.js +2 -0
  244. package/saml/getClient.js.map +1 -1
  245. package/saml/getClientInstallationProvider.d.ts +0 -62
  246. package/saml/getClientInstallationProvider.js +0 -62
  247. package/saml/getClientInstallationProvider.js.map +1 -1
  248. package/saml/identityProvider.d.ts +155 -111
  249. package/saml/identityProvider.js +44 -15
  250. package/saml/identityProvider.js.map +1 -1
  251. package/saml/scriptProtocolMapper.d.ts +15 -5
  252. package/saml/scriptProtocolMapper.js +15 -5
  253. package/saml/scriptProtocolMapper.js.map +1 -1
  254. package/saml/userAttributeProtocolMapper.d.ts +32 -91
  255. package/saml/userAttributeProtocolMapper.js +32 -19
  256. package/saml/userAttributeProtocolMapper.js.map +1 -1
  257. package/saml/userPropertyProtocolMapper.d.ts +32 -91
  258. package/saml/userPropertyProtocolMapper.js +32 -19
  259. package/saml/userPropertyProtocolMapper.js.map +1 -1
  260. package/types/input.d.ts +74 -231
  261. package/types/output.d.ts +44 -255
  262. package/user.d.ts +26 -104
  263. package/user.js +26 -14
  264. package/user.js.map +1 -1
  265. package/userGroups.d.ts +5 -33
  266. package/userGroups.js +5 -33
  267. package/userGroups.js.map +1 -1
  268. package/userRoles.d.ts +16 -6
  269. package/userRoles.js +16 -6
  270. package/userRoles.js.map +1 -1
  271. package/userTemplateImporterIdentityProviderMapper.d.ts +10 -3
  272. package/userTemplateImporterIdentityProviderMapper.js +10 -3
  273. package/userTemplateImporterIdentityProviderMapper.js.map +1 -1
  274. package/usersPermissions.d.ts +10 -25
  275. package/usersPermissions.js +10 -25
  276. package/usersPermissions.js.map +1 -1
@@ -1,14 +1,16 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  /**
3
- * Allows for creating and managing user property protocol mappers for SAML clients within Keycloak.
3
+ * ## # keycloak.saml.UserPropertyProtocolMapper
4
4
  *
5
- * SAML user property protocol mappers allow you to map properties of the Keycloak
6
- * user model to an attribute in a SAML assertion.
5
+ * Allows for creating and managing user property protocol mappers for
6
+ * SAML clients within Keycloak.
7
7
  *
8
- * Protocol mappers can be defined for a single client, or they can be defined for a client scope which can be shared between
9
- * multiple different clients.
8
+ * SAML user property protocol mappers allow you to map properties of the Keycloak
9
+ * user model to an attribute in a SAML assertion. Protocol mappers
10
+ * can be defined for a single client, or they can be defined for a client scope which
11
+ * can be shared between multiple different clients.
10
12
  *
11
- * ## Example Usage
13
+ * ### Example Usage (Client)
12
14
  *
13
15
  * ```typescript
14
16
  * import * as pulumi from "@pulumi/pulumi";
@@ -18,30 +20,41 @@ import * as pulumi from "@pulumi/pulumi";
18
20
  * realm: "my-realm",
19
21
  * enabled: true,
20
22
  * });
21
- * const samlClient = new keycloak.saml.Client("samlClient", {
22
- * realmId: realm.id,
23
- * clientId: "saml-client",
23
+ * const samlClient = new keycloak.saml.Client("saml_client", {
24
+ * realmId: test.id,
25
+ * clientId: "test-saml-client",
26
+ * name: "test-saml-client",
24
27
  * });
25
- * const samlUserPropertyMapper = new keycloak.saml.UserPropertyProtocolMapper("samlUserPropertyMapper", {
26
- * realmId: realm.id,
28
+ * const samlUserPropertyMapper = new keycloak.saml.UserPropertyProtocolMapper("saml_user_property_mapper", {
29
+ * realmId: test.id,
27
30
  * clientId: samlClient.id,
31
+ * name: "email-user-property-mapper",
28
32
  * userProperty: "email",
29
33
  * samlAttributeName: "email",
30
34
  * samlAttributeNameFormat: "Unspecified",
31
35
  * });
32
36
  * ```
33
37
  *
34
- * ## Import
38
+ * ### Argument Reference
35
39
  *
36
- * Protocol mappers can be imported using one of the following formats- Client`{{realm_id}}/client/{{client_keycloak_id}}/{{protocol_mapper_id}}` - Client Scope`{{realm_id}}/client-scope/{{client_scope_keycloak_id}}/{{protocol_mapper_id}}` Examplebash
40
+ * The following arguments are supported:
37
41
  *
38
- * ```sh
39
- * $ pulumi import keycloak:saml/userPropertyProtocolMapper:UserPropertyProtocolMapper saml_user_property_mapper my-realm/client/a7202154-8793-4656-b655-1dd18c181e14/71602afa-f7d1-4788-8c49-ef8fd00af0f4
40
- * ```
42
+ * - `realmId` - (Required) The realm this protocol mapper exists within.
43
+ * - `clientId` - (Required if `clientScopeId` is not specified) The SAML client this protocol mapper is attached to.
44
+ * - `clientScopeId` - (Required if `clientId` is not specified) The SAML client scope this protocol mapper is attached to.
45
+ * - `name` - (Required) The display name of this protocol mapper in the GUI.
46
+ * - `userProperty` - (Required) The property of the Keycloak user model to map.
47
+ * - `friendlyName` - (Optional) An optional human-friendly name for this attribute.
48
+ * - `samlAttributeName` - (Required) The name of the SAML attribute.
49
+ * - `samlAttributeNameFormat` - (Required) The SAML attribute Name Format. Can be one of `Unspecified`, `Basic`, or `URI Reference`.
41
50
  *
42
- * ```sh
43
- * $ pulumi import keycloak:saml/userPropertyProtocolMapper:UserPropertyProtocolMapper saml_user_property_mapper my-realm/client-scope/b799ea7e-73ee-4a73-990a-1eafebe8e20a/71602afa-f7d1-4788-8c49-ef8fd00af0f4
44
- * ```
51
+ * ### Import
52
+ *
53
+ * Protocol mappers can be imported using one of the following formats:
54
+ * - Client: `{{realm_id}}/client/{{client_keycloak_id}}/{{protocol_mapper_id}}`
55
+ * - Client Scope: `{{realm_id}}/client-scope/{{client_scope_keycloak_id}}/{{protocol_mapper_id}}`
56
+ *
57
+ * Example:
45
58
  */
46
59
  export declare class UserPropertyProtocolMapper extends pulumi.CustomResource {
47
60
  /**
@@ -59,37 +72,13 @@ export declare class UserPropertyProtocolMapper extends pulumi.CustomResource {
59
72
  * when multiple copies of the Pulumi SDK have been loaded into the same process.
60
73
  */
61
74
  static isInstance(obj: any): obj is UserPropertyProtocolMapper;
62
- /**
63
- * The client this protocol mapper should be attached to. Conflicts with `clientScopeId`. One of `clientId` or `clientScopeId` must be specified.
64
- */
65
75
  readonly clientId: pulumi.Output<string | undefined>;
66
- /**
67
- * The client scope this protocol mapper should be attached to. Conflicts with `clientId`. One of `clientId` or `clientScopeId` must be specified.
68
- */
69
76
  readonly clientScopeId: pulumi.Output<string | undefined>;
70
- /**
71
- * An optional human-friendly name for this attribute.
72
- */
73
77
  readonly friendlyName: pulumi.Output<string | undefined>;
74
- /**
75
- * The display name of this protocol mapper in the GUI.
76
- */
77
78
  readonly name: pulumi.Output<string>;
78
- /**
79
- * The realm this protocol mapper exists within.
80
- */
81
79
  readonly realmId: pulumi.Output<string>;
82
- /**
83
- * The name of the SAML attribute.
84
- */
85
80
  readonly samlAttributeName: pulumi.Output<string>;
86
- /**
87
- * The SAML attribute Name Format. Can be one of `Unspecified`, `Basic`, or `URI Reference`.
88
- */
89
81
  readonly samlAttributeNameFormat: pulumi.Output<string>;
90
- /**
91
- * The property of the Keycloak user model to map.
92
- */
93
82
  readonly userProperty: pulumi.Output<string>;
94
83
  /**
95
84
  * Create a UserPropertyProtocolMapper resource with the given unique name, arguments, and options.
@@ -104,73 +93,25 @@ export declare class UserPropertyProtocolMapper extends pulumi.CustomResource {
104
93
  * Input properties used for looking up and filtering UserPropertyProtocolMapper resources.
105
94
  */
106
95
  export interface UserPropertyProtocolMapperState {
107
- /**
108
- * The client this protocol mapper should be attached to. Conflicts with `clientScopeId`. One of `clientId` or `clientScopeId` must be specified.
109
- */
110
96
  clientId?: pulumi.Input<string>;
111
- /**
112
- * The client scope this protocol mapper should be attached to. Conflicts with `clientId`. One of `clientId` or `clientScopeId` must be specified.
113
- */
114
97
  clientScopeId?: pulumi.Input<string>;
115
- /**
116
- * An optional human-friendly name for this attribute.
117
- */
118
98
  friendlyName?: pulumi.Input<string>;
119
- /**
120
- * The display name of this protocol mapper in the GUI.
121
- */
122
99
  name?: pulumi.Input<string>;
123
- /**
124
- * The realm this protocol mapper exists within.
125
- */
126
100
  realmId?: pulumi.Input<string>;
127
- /**
128
- * The name of the SAML attribute.
129
- */
130
101
  samlAttributeName?: pulumi.Input<string>;
131
- /**
132
- * The SAML attribute Name Format. Can be one of `Unspecified`, `Basic`, or `URI Reference`.
133
- */
134
102
  samlAttributeNameFormat?: pulumi.Input<string>;
135
- /**
136
- * The property of the Keycloak user model to map.
137
- */
138
103
  userProperty?: pulumi.Input<string>;
139
104
  }
140
105
  /**
141
106
  * The set of arguments for constructing a UserPropertyProtocolMapper resource.
142
107
  */
143
108
  export interface UserPropertyProtocolMapperArgs {
144
- /**
145
- * The client this protocol mapper should be attached to. Conflicts with `clientScopeId`. One of `clientId` or `clientScopeId` must be specified.
146
- */
147
109
  clientId?: pulumi.Input<string>;
148
- /**
149
- * The client scope this protocol mapper should be attached to. Conflicts with `clientId`. One of `clientId` or `clientScopeId` must be specified.
150
- */
151
110
  clientScopeId?: pulumi.Input<string>;
152
- /**
153
- * An optional human-friendly name for this attribute.
154
- */
155
111
  friendlyName?: pulumi.Input<string>;
156
- /**
157
- * The display name of this protocol mapper in the GUI.
158
- */
159
112
  name?: pulumi.Input<string>;
160
- /**
161
- * The realm this protocol mapper exists within.
162
- */
163
113
  realmId: pulumi.Input<string>;
164
- /**
165
- * The name of the SAML attribute.
166
- */
167
114
  samlAttributeName: pulumi.Input<string>;
168
- /**
169
- * The SAML attribute Name Format. Can be one of `Unspecified`, `Basic`, or `URI Reference`.
170
- */
171
115
  samlAttributeNameFormat: pulumi.Input<string>;
172
- /**
173
- * The property of the Keycloak user model to map.
174
- */
175
116
  userProperty: pulumi.Input<string>;
176
117
  }
@@ -6,15 +6,17 @@ exports.UserPropertyProtocolMapper = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("../utilities");
8
8
  /**
9
- * Allows for creating and managing user property protocol mappers for SAML clients within Keycloak.
9
+ * ## # keycloak.saml.UserPropertyProtocolMapper
10
10
  *
11
- * SAML user property protocol mappers allow you to map properties of the Keycloak
12
- * user model to an attribute in a SAML assertion.
11
+ * Allows for creating and managing user property protocol mappers for
12
+ * SAML clients within Keycloak.
13
13
  *
14
- * Protocol mappers can be defined for a single client, or they can be defined for a client scope which can be shared between
15
- * multiple different clients.
14
+ * SAML user property protocol mappers allow you to map properties of the Keycloak
15
+ * user model to an attribute in a SAML assertion. Protocol mappers
16
+ * can be defined for a single client, or they can be defined for a client scope which
17
+ * can be shared between multiple different clients.
16
18
  *
17
- * ## Example Usage
19
+ * ### Example Usage (Client)
18
20
  *
19
21
  * ```typescript
20
22
  * import * as pulumi from "@pulumi/pulumi";
@@ -24,30 +26,41 @@ const utilities = require("../utilities");
24
26
  * realm: "my-realm",
25
27
  * enabled: true,
26
28
  * });
27
- * const samlClient = new keycloak.saml.Client("samlClient", {
28
- * realmId: realm.id,
29
- * clientId: "saml-client",
29
+ * const samlClient = new keycloak.saml.Client("saml_client", {
30
+ * realmId: test.id,
31
+ * clientId: "test-saml-client",
32
+ * name: "test-saml-client",
30
33
  * });
31
- * const samlUserPropertyMapper = new keycloak.saml.UserPropertyProtocolMapper("samlUserPropertyMapper", {
32
- * realmId: realm.id,
34
+ * const samlUserPropertyMapper = new keycloak.saml.UserPropertyProtocolMapper("saml_user_property_mapper", {
35
+ * realmId: test.id,
33
36
  * clientId: samlClient.id,
37
+ * name: "email-user-property-mapper",
34
38
  * userProperty: "email",
35
39
  * samlAttributeName: "email",
36
40
  * samlAttributeNameFormat: "Unspecified",
37
41
  * });
38
42
  * ```
39
43
  *
40
- * ## Import
44
+ * ### Argument Reference
41
45
  *
42
- * Protocol mappers can be imported using one of the following formats- Client`{{realm_id}}/client/{{client_keycloak_id}}/{{protocol_mapper_id}}` - Client Scope`{{realm_id}}/client-scope/{{client_scope_keycloak_id}}/{{protocol_mapper_id}}` Examplebash
46
+ * The following arguments are supported:
43
47
  *
44
- * ```sh
45
- * $ pulumi import keycloak:saml/userPropertyProtocolMapper:UserPropertyProtocolMapper saml_user_property_mapper my-realm/client/a7202154-8793-4656-b655-1dd18c181e14/71602afa-f7d1-4788-8c49-ef8fd00af0f4
46
- * ```
48
+ * - `realmId` - (Required) The realm this protocol mapper exists within.
49
+ * - `clientId` - (Required if `clientScopeId` is not specified) The SAML client this protocol mapper is attached to.
50
+ * - `clientScopeId` - (Required if `clientId` is not specified) The SAML client scope this protocol mapper is attached to.
51
+ * - `name` - (Required) The display name of this protocol mapper in the GUI.
52
+ * - `userProperty` - (Required) The property of the Keycloak user model to map.
53
+ * - `friendlyName` - (Optional) An optional human-friendly name for this attribute.
54
+ * - `samlAttributeName` - (Required) The name of the SAML attribute.
55
+ * - `samlAttributeNameFormat` - (Required) The SAML attribute Name Format. Can be one of `Unspecified`, `Basic`, or `URI Reference`.
47
56
  *
48
- * ```sh
49
- * $ pulumi import keycloak:saml/userPropertyProtocolMapper:UserPropertyProtocolMapper saml_user_property_mapper my-realm/client-scope/b799ea7e-73ee-4a73-990a-1eafebe8e20a/71602afa-f7d1-4788-8c49-ef8fd00af0f4
50
- * ```
57
+ * ### Import
58
+ *
59
+ * Protocol mappers can be imported using one of the following formats:
60
+ * - Client: `{{realm_id}}/client/{{client_keycloak_id}}/{{protocol_mapper_id}}`
61
+ * - Client Scope: `{{realm_id}}/client-scope/{{client_scope_keycloak_id}}/{{protocol_mapper_id}}`
62
+ *
63
+ * Example:
51
64
  */
52
65
  class UserPropertyProtocolMapper extends pulumi.CustomResource {
53
66
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"userPropertyProtocolMapper.js","sourceRoot":"","sources":["../../saml/userPropertyProtocolMapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"userPropertyProtocolMapper.js","sourceRoot":"","sources":["../../saml/userPropertyProtocolMapper.ts"],"names":[],"mappings":"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"}