Class UserPropertyProtocolMapper
# keycloak.openid.UserPropertyProtocolMapper
Allows for creating and managing user property protocol mappers within Keycloak.
User property protocol mappers allow you to map built in properties defined on the Keycloak user interface to a claim in a token. Protocol mappers can be defined for a single client, or they can be defined for a client scope which can be shared between multiple different clients.
Example Usage (Client)
using Pulumi;
using Keycloak = Pulumi.Keycloak;
class MyStack : Stack
{
public MyStack()
{
var realm = new Keycloak.Realm("realm", new Keycloak.RealmArgs
{
Enabled = true,
Realm = "my-realm",
});
var openidClient = new Keycloak.OpenId.Client("openidClient", new Keycloak.OpenId.ClientArgs
{
AccessType = "CONFIDENTIAL",
ClientId = "test-client",
Enabled = true,
RealmId = realm.Id,
ValidRedirectUris =
{
"http://localhost:8080/openid-callback",
},
});
var userPropertyMapper = new Keycloak.OpenId.UserPropertyProtocolMapper("userPropertyMapper", new Keycloak.OpenId.UserPropertyProtocolMapperArgs
{
ClaimName = "email",
ClientId = openidClient.Id,
RealmId = realm.Id,
UserProperty = "email",
});
}
}
Example Usage (Client Scope)
using Pulumi;
using Keycloak = Pulumi.Keycloak;
class MyStack : Stack
{
public MyStack()
{
var realm = new Keycloak.Realm("realm", new Keycloak.RealmArgs
{
Enabled = true,
Realm = "my-realm",
});
var clientScope = new Keycloak.OpenId.ClientScope("clientScope", new Keycloak.OpenId.ClientScopeArgs
{
RealmId = realm.Id,
});
var userPropertyMapper = new Keycloak.OpenId.UserPropertyProtocolMapper("userPropertyMapper", new Keycloak.OpenId.UserPropertyProtocolMapperArgs
{
ClaimName = "email",
ClientScopeId = clientScope.Id,
RealmId = realm.Id,
UserProperty = "email",
});
}
}
Argument Reference
The following arguments are supported:
realm_id- (Required) The realm this protocol mapper exists within.client_id- (Required ifclient_scope_idis not specified) The client this protocol mapper is attached to.client_scope_id- (Required ifclient_idis not specified) The client scope this protocol mapper is attached to.name- (Required) The display name of this protocol mapper in the GUI.user_property- (Required) The built in user property (such as email) to map a claim for.claim_name- (Required) The name of the claim to insert into a token.claim_value_type- (Optional) The claim type used when serializing JSON tokens. Can be one ofString,long,int, orboolean. Defaults toString.add_to_id_token- (Optional) Indicates if the property should be added as a claim to the id token. Defaults totrue.add_to_access_token- (Optional) Indicates if the property should be added as a claim to the access token. Defaults totrue.add_to_userinfo- (Optional) Indicates if the property should be added as a claim to the UserInfo response body. Defaults totrue.
Inherited Members
Namespace: Pulumi.Keycloak.OpenId
Assembly: Pulumi.Keycloak.dll
Syntax
public class UserPropertyProtocolMapper : CustomResource
Constructors
View SourceUserPropertyProtocolMapper(String, UserPropertyProtocolMapperArgs, CustomResourceOptions)
Create a UserPropertyProtocolMapper resource with the given unique name, arguments, and options.
Declaration
public UserPropertyProtocolMapper(string name, UserPropertyProtocolMapperArgs args, CustomResourceOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | name | The unique name of the resource |
| UserPropertyProtocolMapperArgs | args | The arguments used to populate this resource's properties |
| CustomResourceOptions | options | A bag of options that control this resource's behavior |
Properties
View SourceAddToAccessToken
Indicates if the property should be a claim in the access token.
Declaration
public Output<bool?> AddToAccessToken { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Boolean>> |
AddToIdToken
Indicates if the property should be a claim in the id token.
Declaration
public Output<bool?> AddToIdToken { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Boolean>> |
AddToUserinfo
Indicates if the property should appear in the userinfo response body.
Declaration
public Output<bool?> AddToUserinfo { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Boolean>> |
ClaimName
Declaration
public Output<string> ClaimName { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
ClaimValueType
Claim type used when serializing tokens.
Declaration
public Output<string> ClaimValueType { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
ClientId
The mapper's associated client. Cannot be used at the same time as client_scope_id.
Declaration
public Output<string> ClientId { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
ClientScopeId
The mapper's associated client scope. Cannot be used at the same time as client_id.
Declaration
public Output<string> ClientScopeId { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
Name
A human-friendly name that will appear in the Keycloak console.
Declaration
public Output<string> Name { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
RealmId
The realm id where the associated client or client scope exists.
Declaration
public Output<string> RealmId { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
UserProperty
Declaration
public Output<string> UserProperty { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
Methods
View SourceGet(String, Input<String>, UserPropertyProtocolMapperState, CustomResourceOptions)
Get an existing UserPropertyProtocolMapper resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
Declaration
public static UserPropertyProtocolMapper Get(string name, Input<string> id, UserPropertyProtocolMapperState state = null, CustomResourceOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | name | The unique name of the resulting resource. |
| Input<System.String> | id | The unique provider ID of the resource to lookup. |
| UserPropertyProtocolMapperState | state | Any extra arguments used during the lookup. |
| CustomResourceOptions | options | A bag of options that control this resource's behavior |
Returns
| Type | Description |
|---|---|
| UserPropertyProtocolMapper |