1. Packages
  2. Keycloak Provider
  3. API Docs
  4. ldap
  5. GroupMapper
Keycloak v5.3.5 published on Wednesday, Oct 16, 2024 by Pulumi

keycloak.ldap.GroupMapper

Explore with Pulumi AI

keycloak logo
Keycloak v5.3.5 published on Wednesday, Oct 16, 2024 by Pulumi

    # keycloak.ldap.GroupMapper

    Allows for creating and managing group mappers for Keycloak users federated via LDAP.

    The LDAP group mapper can be used to map an LDAP user’s groups from some DN to Keycloak groups. This group mapper will also create the groups within Keycloak if they do not already exist.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as keycloak from "@pulumi/keycloak";
    
    const realm = new keycloak.Realm("realm", {
        realm: "test",
        enabled: true,
    });
    const ldapUserFederation = new keycloak.ldap.UserFederation("ldap_user_federation", {
        name: "openldap",
        realmId: realm.id,
        usernameLdapAttribute: "cn",
        rdnLdapAttribute: "cn",
        uuidLdapAttribute: "entryDN",
        userObjectClasses: [
            "simpleSecurityObject",
            "organizationalRole",
        ],
        connectionUrl: "ldap://openldap",
        usersDn: "dc=example,dc=org",
        bindDn: "cn=admin,dc=example,dc=org",
        bindCredential: "admin",
    });
    const ldapGroupMapper = new keycloak.ldap.GroupMapper("ldap_group_mapper", {
        realmId: realm.id,
        ldapUserFederationId: ldapUserFederation.id,
        name: "group-mapper",
        ldapGroupsDn: "dc=example,dc=org",
        groupNameLdapAttribute: "cn",
        groupObjectClasses: ["groupOfNames"],
        membershipAttributeType: "DN",
        membershipLdapAttribute: "member",
        membershipUserLdapAttribute: "cn",
        memberofLdapAttribute: "memberOf",
    });
    
    import pulumi
    import pulumi_keycloak as keycloak
    
    realm = keycloak.Realm("realm",
        realm="test",
        enabled=True)
    ldap_user_federation = keycloak.ldap.UserFederation("ldap_user_federation",
        name="openldap",
        realm_id=realm.id,
        username_ldap_attribute="cn",
        rdn_ldap_attribute="cn",
        uuid_ldap_attribute="entryDN",
        user_object_classes=[
            "simpleSecurityObject",
            "organizationalRole",
        ],
        connection_url="ldap://openldap",
        users_dn="dc=example,dc=org",
        bind_dn="cn=admin,dc=example,dc=org",
        bind_credential="admin")
    ldap_group_mapper = keycloak.ldap.GroupMapper("ldap_group_mapper",
        realm_id=realm.id,
        ldap_user_federation_id=ldap_user_federation.id,
        name="group-mapper",
        ldap_groups_dn="dc=example,dc=org",
        group_name_ldap_attribute="cn",
        group_object_classes=["groupOfNames"],
        membership_attribute_type="DN",
        membership_ldap_attribute="member",
        membership_user_ldap_attribute="cn",
        memberof_ldap_attribute="memberOf")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak"
    	"github.com/pulumi/pulumi-keycloak/sdk/v5/go/keycloak/ldap"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		realm, err := keycloak.NewRealm(ctx, "realm", &keycloak.RealmArgs{
    			Realm:   pulumi.String("test"),
    			Enabled: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		ldapUserFederation, err := ldap.NewUserFederation(ctx, "ldap_user_federation", &ldap.UserFederationArgs{
    			Name:                  pulumi.String("openldap"),
    			RealmId:               realm.ID(),
    			UsernameLdapAttribute: pulumi.String("cn"),
    			RdnLdapAttribute:      pulumi.String("cn"),
    			UuidLdapAttribute:     pulumi.String("entryDN"),
    			UserObjectClasses: pulumi.StringArray{
    				pulumi.String("simpleSecurityObject"),
    				pulumi.String("organizationalRole"),
    			},
    			ConnectionUrl:  pulumi.String("ldap://openldap"),
    			UsersDn:        pulumi.String("dc=example,dc=org"),
    			BindDn:         pulumi.String("cn=admin,dc=example,dc=org"),
    			BindCredential: pulumi.String("admin"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = ldap.NewGroupMapper(ctx, "ldap_group_mapper", &ldap.GroupMapperArgs{
    			RealmId:                realm.ID(),
    			LdapUserFederationId:   ldapUserFederation.ID(),
    			Name:                   pulumi.String("group-mapper"),
    			LdapGroupsDn:           pulumi.String("dc=example,dc=org"),
    			GroupNameLdapAttribute: pulumi.String("cn"),
    			GroupObjectClasses: pulumi.StringArray{
    				pulumi.String("groupOfNames"),
    			},
    			MembershipAttributeType:     pulumi.String("DN"),
    			MembershipLdapAttribute:     pulumi.String("member"),
    			MembershipUserLdapAttribute: pulumi.String("cn"),
    			MemberofLdapAttribute:       pulumi.String("memberOf"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Keycloak = Pulumi.Keycloak;
    
    return await Deployment.RunAsync(() => 
    {
        var realm = new Keycloak.Realm("realm", new()
        {
            RealmName = "test",
            Enabled = true,
        });
    
        var ldapUserFederation = new Keycloak.Ldap.UserFederation("ldap_user_federation", new()
        {
            Name = "openldap",
            RealmId = realm.Id,
            UsernameLdapAttribute = "cn",
            RdnLdapAttribute = "cn",
            UuidLdapAttribute = "entryDN",
            UserObjectClasses = new[]
            {
                "simpleSecurityObject",
                "organizationalRole",
            },
            ConnectionUrl = "ldap://openldap",
            UsersDn = "dc=example,dc=org",
            BindDn = "cn=admin,dc=example,dc=org",
            BindCredential = "admin",
        });
    
        var ldapGroupMapper = new Keycloak.Ldap.GroupMapper("ldap_group_mapper", new()
        {
            RealmId = realm.Id,
            LdapUserFederationId = ldapUserFederation.Id,
            Name = "group-mapper",
            LdapGroupsDn = "dc=example,dc=org",
            GroupNameLdapAttribute = "cn",
            GroupObjectClasses = new[]
            {
                "groupOfNames",
            },
            MembershipAttributeType = "DN",
            MembershipLdapAttribute = "member",
            MembershipUserLdapAttribute = "cn",
            MemberofLdapAttribute = "memberOf",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.keycloak.Realm;
    import com.pulumi.keycloak.RealmArgs;
    import com.pulumi.keycloak.ldap.UserFederation;
    import com.pulumi.keycloak.ldap.UserFederationArgs;
    import com.pulumi.keycloak.ldap.GroupMapper;
    import com.pulumi.keycloak.ldap.GroupMapperArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var realm = new Realm("realm", RealmArgs.builder()
                .realm("test")
                .enabled(true)
                .build());
    
            var ldapUserFederation = new UserFederation("ldapUserFederation", UserFederationArgs.builder()
                .name("openldap")
                .realmId(realm.id())
                .usernameLdapAttribute("cn")
                .rdnLdapAttribute("cn")
                .uuidLdapAttribute("entryDN")
                .userObjectClasses(            
                    "simpleSecurityObject",
                    "organizationalRole")
                .connectionUrl("ldap://openldap")
                .usersDn("dc=example,dc=org")
                .bindDn("cn=admin,dc=example,dc=org")
                .bindCredential("admin")
                .build());
    
            var ldapGroupMapper = new GroupMapper("ldapGroupMapper", GroupMapperArgs.builder()
                .realmId(realm.id())
                .ldapUserFederationId(ldapUserFederation.id())
                .name("group-mapper")
                .ldapGroupsDn("dc=example,dc=org")
                .groupNameLdapAttribute("cn")
                .groupObjectClasses("groupOfNames")
                .membershipAttributeType("DN")
                .membershipLdapAttribute("member")
                .membershipUserLdapAttribute("cn")
                .memberofLdapAttribute("memberOf")
                .build());
    
        }
    }
    
    resources:
      realm:
        type: keycloak:Realm
        properties:
          realm: test
          enabled: true
      ldapUserFederation:
        type: keycloak:ldap:UserFederation
        name: ldap_user_federation
        properties:
          name: openldap
          realmId: ${realm.id}
          usernameLdapAttribute: cn
          rdnLdapAttribute: cn
          uuidLdapAttribute: entryDN
          userObjectClasses:
            - simpleSecurityObject
            - organizationalRole
          connectionUrl: ldap://openldap
          usersDn: dc=example,dc=org
          bindDn: cn=admin,dc=example,dc=org
          bindCredential: admin
      ldapGroupMapper:
        type: keycloak:ldap:GroupMapper
        name: ldap_group_mapper
        properties:
          realmId: ${realm.id}
          ldapUserFederationId: ${ldapUserFederation.id}
          name: group-mapper
          ldapGroupsDn: dc=example,dc=org
          groupNameLdapAttribute: cn
          groupObjectClasses:
            - groupOfNames
          membershipAttributeType: DN
          membershipLdapAttribute: member
          membershipUserLdapAttribute: cn
          memberofLdapAttribute: memberOf
    

    Argument Reference

    The following arguments are supported:

    • realm_id - (Required) The realm that this LDAP mapper will exist in.
    • ldap_user_federation_id - (Required) The ID of the LDAP user federation provider to attach this mapper to.
    • name - (Required) Display name of this mapper when displayed in the console.
    • ldap_groups_dn - (Required) The LDAP DN where groups can be found.
    • group_name_ldap_attribute - (Required) The name of the LDAP attribute that is used in group objects for the name and RDN of the group. Typically cn.
    • group_object_classes - (Required) Array of strings representing the object classes for the group. Must contain at least one.
    • preserve_group_inheritance - (Optional) When true, group inheritance will be propagated from LDAP to Keycloak. When false, all LDAP groups will be propagated as top level groups within Keycloak.
    • ignore_missing_groups - (Optional) When true, missing groups in the hierarchy will be ignored.
    • membership_ldap_attribute - (Required) The name of the LDAP attribute that is used for membership mappings.
    • membership_attribute_type - (Optional) Can be one of DN or UID. Defaults to DN.
    • membership_user_ldap_attribute - (Required) The name of the LDAP attribute on a user that is used for membership mappings.
    • groups_ldap_filter - (Optional) When specified, adds an additional custom filter to be used when querying for groups. Must start with ( and end with ).
    • mode - (Optional) Can be one of READ_ONLY or LDAP_ONLY. Defaults to READ_ONLY.
    • user_roles_retrieve_strategy - (Optional) Can be one of LOAD_GROUPS_BY_MEMBER_ATTRIBUTE, GET_GROUPS_FROM_USER_MEMBEROF_ATTRIBUTE, or LOAD_GROUPS_BY_MEMBER_ATTRIBUTE_RECURSIVELY. Defaults to LOAD_GROUPS_BY_MEMBER_ATTRIBUTE.
    • memberof_ldap_attribute - (Optional) Specifies the name of the LDAP attribute on the LDAP user that contains the groups the user is a member of. Defaults to memberOf.
    • mapped_group_attributes - (Optional) Array of strings representing attributes on the LDAP group which will be mapped to attributes on the Keycloak group.
    • drop_non_existing_groups_during_sync - (Optional) When true, groups that no longer exist within LDAP will be dropped in Keycloak during sync. Defaults to false.

    Import

    LDAP mappers can be imported using the format {{realm_id}}/{{ldap_user_federation_id}}/{{ldap_mapper_id}}. The ID of the LDAP user federation provider and the mapper can be found within the Keycloak GUI, and they are typically GUIDs:

    $ terraform import keycloak_ldap_group_mapper.ldap_group_mapper my-realm/af2a6ca3-e4d7-49c3-b08b-1b3c70b4b860/3d923ece-1a91-4bf7-adaf-3b82f2a12b67
    

    Create GroupMapper Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new GroupMapper(name: string, args: GroupMapperArgs, opts?: CustomResourceOptions);
    @overload
    def GroupMapper(resource_name: str,
                    args: GroupMapperArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def GroupMapper(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    ldap_user_federation_id: Optional[str] = None,
                    group_name_ldap_attribute: Optional[str] = None,
                    group_object_classes: Optional[Sequence[str]] = None,
                    realm_id: Optional[str] = None,
                    membership_user_ldap_attribute: Optional[str] = None,
                    membership_ldap_attribute: Optional[str] = None,
                    ldap_groups_dn: Optional[str] = None,
                    groups_path: Optional[str] = None,
                    mapped_group_attributes: Optional[Sequence[str]] = None,
                    memberof_ldap_attribute: Optional[str] = None,
                    membership_attribute_type: Optional[str] = None,
                    ignore_missing_groups: Optional[bool] = None,
                    drop_non_existing_groups_during_sync: Optional[bool] = None,
                    mode: Optional[str] = None,
                    name: Optional[str] = None,
                    preserve_group_inheritance: Optional[bool] = None,
                    groups_ldap_filter: Optional[str] = None,
                    user_roles_retrieve_strategy: Optional[str] = None)
    func NewGroupMapper(ctx *Context, name string, args GroupMapperArgs, opts ...ResourceOption) (*GroupMapper, error)
    public GroupMapper(string name, GroupMapperArgs args, CustomResourceOptions? opts = null)
    public GroupMapper(String name, GroupMapperArgs args)
    public GroupMapper(String name, GroupMapperArgs args, CustomResourceOptions options)
    
    type: keycloak:ldap:GroupMapper
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args GroupMapperArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args GroupMapperArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args GroupMapperArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args GroupMapperArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args GroupMapperArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var groupMapperResource = new Keycloak.Ldap.GroupMapper("groupMapperResource", new()
    {
        LdapUserFederationId = "string",
        GroupNameLdapAttribute = "string",
        GroupObjectClasses = new[]
        {
            "string",
        },
        RealmId = "string",
        MembershipUserLdapAttribute = "string",
        MembershipLdapAttribute = "string",
        LdapGroupsDn = "string",
        GroupsPath = "string",
        MappedGroupAttributes = new[]
        {
            "string",
        },
        MemberofLdapAttribute = "string",
        MembershipAttributeType = "string",
        IgnoreMissingGroups = false,
        DropNonExistingGroupsDuringSync = false,
        Mode = "string",
        Name = "string",
        PreserveGroupInheritance = false,
        GroupsLdapFilter = "string",
        UserRolesRetrieveStrategy = "string",
    });
    
    example, err := ldap.NewGroupMapper(ctx, "groupMapperResource", &ldap.GroupMapperArgs{
    	LdapUserFederationId:   pulumi.String("string"),
    	GroupNameLdapAttribute: pulumi.String("string"),
    	GroupObjectClasses: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	RealmId:                     pulumi.String("string"),
    	MembershipUserLdapAttribute: pulumi.String("string"),
    	MembershipLdapAttribute:     pulumi.String("string"),
    	LdapGroupsDn:                pulumi.String("string"),
    	GroupsPath:                  pulumi.String("string"),
    	MappedGroupAttributes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	MemberofLdapAttribute:           pulumi.String("string"),
    	MembershipAttributeType:         pulumi.String("string"),
    	IgnoreMissingGroups:             pulumi.Bool(false),
    	DropNonExistingGroupsDuringSync: pulumi.Bool(false),
    	Mode:                            pulumi.String("string"),
    	Name:                            pulumi.String("string"),
    	PreserveGroupInheritance:        pulumi.Bool(false),
    	GroupsLdapFilter:                pulumi.String("string"),
    	UserRolesRetrieveStrategy:       pulumi.String("string"),
    })
    
    var groupMapperResource = new GroupMapper("groupMapperResource", GroupMapperArgs.builder()
        .ldapUserFederationId("string")
        .groupNameLdapAttribute("string")
        .groupObjectClasses("string")
        .realmId("string")
        .membershipUserLdapAttribute("string")
        .membershipLdapAttribute("string")
        .ldapGroupsDn("string")
        .groupsPath("string")
        .mappedGroupAttributes("string")
        .memberofLdapAttribute("string")
        .membershipAttributeType("string")
        .ignoreMissingGroups(false)
        .dropNonExistingGroupsDuringSync(false)
        .mode("string")
        .name("string")
        .preserveGroupInheritance(false)
        .groupsLdapFilter("string")
        .userRolesRetrieveStrategy("string")
        .build());
    
    group_mapper_resource = keycloak.ldap.GroupMapper("groupMapperResource",
        ldap_user_federation_id="string",
        group_name_ldap_attribute="string",
        group_object_classes=["string"],
        realm_id="string",
        membership_user_ldap_attribute="string",
        membership_ldap_attribute="string",
        ldap_groups_dn="string",
        groups_path="string",
        mapped_group_attributes=["string"],
        memberof_ldap_attribute="string",
        membership_attribute_type="string",
        ignore_missing_groups=False,
        drop_non_existing_groups_during_sync=False,
        mode="string",
        name="string",
        preserve_group_inheritance=False,
        groups_ldap_filter="string",
        user_roles_retrieve_strategy="string")
    
    const groupMapperResource = new keycloak.ldap.GroupMapper("groupMapperResource", {
        ldapUserFederationId: "string",
        groupNameLdapAttribute: "string",
        groupObjectClasses: ["string"],
        realmId: "string",
        membershipUserLdapAttribute: "string",
        membershipLdapAttribute: "string",
        ldapGroupsDn: "string",
        groupsPath: "string",
        mappedGroupAttributes: ["string"],
        memberofLdapAttribute: "string",
        membershipAttributeType: "string",
        ignoreMissingGroups: false,
        dropNonExistingGroupsDuringSync: false,
        mode: "string",
        name: "string",
        preserveGroupInheritance: false,
        groupsLdapFilter: "string",
        userRolesRetrieveStrategy: "string",
    });
    
    type: keycloak:ldap:GroupMapper
    properties:
        dropNonExistingGroupsDuringSync: false
        groupNameLdapAttribute: string
        groupObjectClasses:
            - string
        groupsLdapFilter: string
        groupsPath: string
        ignoreMissingGroups: false
        ldapGroupsDn: string
        ldapUserFederationId: string
        mappedGroupAttributes:
            - string
        memberofLdapAttribute: string
        membershipAttributeType: string
        membershipLdapAttribute: string
        membershipUserLdapAttribute: string
        mode: string
        name: string
        preserveGroupInheritance: false
        realmId: string
        userRolesRetrieveStrategy: string
    

    GroupMapper Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The GroupMapper resource accepts the following input properties:

    GroupNameLdapAttribute string
    GroupObjectClasses List<string>
    LdapGroupsDn string
    LdapUserFederationId string
    The ldap user federation provider to attach this mapper to.
    MembershipLdapAttribute string
    MembershipUserLdapAttribute string
    RealmId string
    The realm in which the ldap user federation provider exists.
    DropNonExistingGroupsDuringSync bool
    GroupsLdapFilter string
    GroupsPath string
    IgnoreMissingGroups bool
    MappedGroupAttributes List<string>
    MemberofLdapAttribute string
    MembershipAttributeType string
    Mode string
    Name string
    Display name of the mapper when displayed in the console.
    PreserveGroupInheritance bool
    UserRolesRetrieveStrategy string
    GroupNameLdapAttribute string
    GroupObjectClasses []string
    LdapGroupsDn string
    LdapUserFederationId string
    The ldap user federation provider to attach this mapper to.
    MembershipLdapAttribute string
    MembershipUserLdapAttribute string
    RealmId string
    The realm in which the ldap user federation provider exists.
    DropNonExistingGroupsDuringSync bool
    GroupsLdapFilter string
    GroupsPath string
    IgnoreMissingGroups bool
    MappedGroupAttributes []string
    MemberofLdapAttribute string
    MembershipAttributeType string
    Mode string
    Name string
    Display name of the mapper when displayed in the console.
    PreserveGroupInheritance bool
    UserRolesRetrieveStrategy string
    groupNameLdapAttribute String
    groupObjectClasses List<String>
    ldapGroupsDn String
    ldapUserFederationId String
    The ldap user federation provider to attach this mapper to.
    membershipLdapAttribute String
    membershipUserLdapAttribute String
    realmId String
    The realm in which the ldap user federation provider exists.
    dropNonExistingGroupsDuringSync Boolean
    groupsLdapFilter String
    groupsPath String
    ignoreMissingGroups Boolean
    mappedGroupAttributes List<String>
    memberofLdapAttribute String
    membershipAttributeType String
    mode String
    name String
    Display name of the mapper when displayed in the console.
    preserveGroupInheritance Boolean
    userRolesRetrieveStrategy String
    groupNameLdapAttribute string
    groupObjectClasses string[]
    ldapGroupsDn string
    ldapUserFederationId string
    The ldap user federation provider to attach this mapper to.
    membershipLdapAttribute string
    membershipUserLdapAttribute string
    realmId string
    The realm in which the ldap user federation provider exists.
    dropNonExistingGroupsDuringSync boolean
    groupsLdapFilter string
    groupsPath string
    ignoreMissingGroups boolean
    mappedGroupAttributes string[]
    memberofLdapAttribute string
    membershipAttributeType string
    mode string
    name string
    Display name of the mapper when displayed in the console.
    preserveGroupInheritance boolean
    userRolesRetrieveStrategy string
    group_name_ldap_attribute str
    group_object_classes Sequence[str]
    ldap_groups_dn str
    ldap_user_federation_id str
    The ldap user federation provider to attach this mapper to.
    membership_ldap_attribute str
    membership_user_ldap_attribute str
    realm_id str
    The realm in which the ldap user federation provider exists.
    drop_non_existing_groups_during_sync bool
    groups_ldap_filter str
    groups_path str
    ignore_missing_groups bool
    mapped_group_attributes Sequence[str]
    memberof_ldap_attribute str
    membership_attribute_type str
    mode str
    name str
    Display name of the mapper when displayed in the console.
    preserve_group_inheritance bool
    user_roles_retrieve_strategy str
    groupNameLdapAttribute String
    groupObjectClasses List<String>
    ldapGroupsDn String
    ldapUserFederationId String
    The ldap user federation provider to attach this mapper to.
    membershipLdapAttribute String
    membershipUserLdapAttribute String
    realmId String
    The realm in which the ldap user federation provider exists.
    dropNonExistingGroupsDuringSync Boolean
    groupsLdapFilter String
    groupsPath String
    ignoreMissingGroups Boolean
    mappedGroupAttributes List<String>
    memberofLdapAttribute String
    membershipAttributeType String
    mode String
    name String
    Display name of the mapper when displayed in the console.
    preserveGroupInheritance Boolean
    userRolesRetrieveStrategy String

    Outputs

    All input properties are implicitly available as output properties. Additionally, the GroupMapper resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing GroupMapper Resource

    Get an existing GroupMapper resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: GroupMapperState, opts?: CustomResourceOptions): GroupMapper
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            drop_non_existing_groups_during_sync: Optional[bool] = None,
            group_name_ldap_attribute: Optional[str] = None,
            group_object_classes: Optional[Sequence[str]] = None,
            groups_ldap_filter: Optional[str] = None,
            groups_path: Optional[str] = None,
            ignore_missing_groups: Optional[bool] = None,
            ldap_groups_dn: Optional[str] = None,
            ldap_user_federation_id: Optional[str] = None,
            mapped_group_attributes: Optional[Sequence[str]] = None,
            memberof_ldap_attribute: Optional[str] = None,
            membership_attribute_type: Optional[str] = None,
            membership_ldap_attribute: Optional[str] = None,
            membership_user_ldap_attribute: Optional[str] = None,
            mode: Optional[str] = None,
            name: Optional[str] = None,
            preserve_group_inheritance: Optional[bool] = None,
            realm_id: Optional[str] = None,
            user_roles_retrieve_strategy: Optional[str] = None) -> GroupMapper
    func GetGroupMapper(ctx *Context, name string, id IDInput, state *GroupMapperState, opts ...ResourceOption) (*GroupMapper, error)
    public static GroupMapper Get(string name, Input<string> id, GroupMapperState? state, CustomResourceOptions? opts = null)
    public static GroupMapper get(String name, Output<String> id, GroupMapperState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    DropNonExistingGroupsDuringSync bool
    GroupNameLdapAttribute string
    GroupObjectClasses List<string>
    GroupsLdapFilter string
    GroupsPath string
    IgnoreMissingGroups bool
    LdapGroupsDn string
    LdapUserFederationId string
    The ldap user federation provider to attach this mapper to.
    MappedGroupAttributes List<string>
    MemberofLdapAttribute string
    MembershipAttributeType string
    MembershipLdapAttribute string
    MembershipUserLdapAttribute string
    Mode string
    Name string
    Display name of the mapper when displayed in the console.
    PreserveGroupInheritance bool
    RealmId string
    The realm in which the ldap user federation provider exists.
    UserRolesRetrieveStrategy string
    DropNonExistingGroupsDuringSync bool
    GroupNameLdapAttribute string
    GroupObjectClasses []string
    GroupsLdapFilter string
    GroupsPath string
    IgnoreMissingGroups bool
    LdapGroupsDn string
    LdapUserFederationId string
    The ldap user federation provider to attach this mapper to.
    MappedGroupAttributes []string
    MemberofLdapAttribute string
    MembershipAttributeType string
    MembershipLdapAttribute string
    MembershipUserLdapAttribute string
    Mode string
    Name string
    Display name of the mapper when displayed in the console.
    PreserveGroupInheritance bool
    RealmId string
    The realm in which the ldap user federation provider exists.
    UserRolesRetrieveStrategy string
    dropNonExistingGroupsDuringSync Boolean
    groupNameLdapAttribute String
    groupObjectClasses List<String>
    groupsLdapFilter String
    groupsPath String
    ignoreMissingGroups Boolean
    ldapGroupsDn String
    ldapUserFederationId String
    The ldap user federation provider to attach this mapper to.
    mappedGroupAttributes List<String>
    memberofLdapAttribute String
    membershipAttributeType String
    membershipLdapAttribute String
    membershipUserLdapAttribute String
    mode String
    name String
    Display name of the mapper when displayed in the console.
    preserveGroupInheritance Boolean
    realmId String
    The realm in which the ldap user federation provider exists.
    userRolesRetrieveStrategy String
    dropNonExistingGroupsDuringSync boolean
    groupNameLdapAttribute string
    groupObjectClasses string[]
    groupsLdapFilter string
    groupsPath string
    ignoreMissingGroups boolean
    ldapGroupsDn string
    ldapUserFederationId string
    The ldap user federation provider to attach this mapper to.
    mappedGroupAttributes string[]
    memberofLdapAttribute string
    membershipAttributeType string
    membershipLdapAttribute string
    membershipUserLdapAttribute string
    mode string
    name string
    Display name of the mapper when displayed in the console.
    preserveGroupInheritance boolean
    realmId string
    The realm in which the ldap user federation provider exists.
    userRolesRetrieveStrategy string
    drop_non_existing_groups_during_sync bool
    group_name_ldap_attribute str
    group_object_classes Sequence[str]
    groups_ldap_filter str
    groups_path str
    ignore_missing_groups bool
    ldap_groups_dn str
    ldap_user_federation_id str
    The ldap user federation provider to attach this mapper to.
    mapped_group_attributes Sequence[str]
    memberof_ldap_attribute str
    membership_attribute_type str
    membership_ldap_attribute str
    membership_user_ldap_attribute str
    mode str
    name str
    Display name of the mapper when displayed in the console.
    preserve_group_inheritance bool
    realm_id str
    The realm in which the ldap user federation provider exists.
    user_roles_retrieve_strategy str
    dropNonExistingGroupsDuringSync Boolean
    groupNameLdapAttribute String
    groupObjectClasses List<String>
    groupsLdapFilter String
    groupsPath String
    ignoreMissingGroups Boolean
    ldapGroupsDn String
    ldapUserFederationId String
    The ldap user federation provider to attach this mapper to.
    mappedGroupAttributes List<String>
    memberofLdapAttribute String
    membershipAttributeType String
    membershipLdapAttribute String
    membershipUserLdapAttribute String
    mode String
    name String
    Display name of the mapper when displayed in the console.
    preserveGroupInheritance Boolean
    realmId String
    The realm in which the ldap user federation provider exists.
    userRolesRetrieveStrategy String

    Package Details

    Repository
    Keycloak pulumi/pulumi-keycloak
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the keycloak Terraform Provider.
    keycloak logo
    Keycloak v5.3.5 published on Wednesday, Oct 16, 2024 by Pulumi