keycloak
公開メンバ関数 | 静的公開変数類 | 静的関数 | 非公開メンバ関数 | 静的非公開変数類 | 全メンバ一覧
org.keycloak.broker.saml.mappers.UserAttributeMapper クラス
org.keycloak.broker.saml.mappers.UserAttributeMapper の継承関係図
Inheritance graph
org.keycloak.broker.saml.mappers.UserAttributeMapper 連携図
Collaboration graph

公開メンバ関数

List< ProviderConfigPropertygetConfigProperties ()
 
String getId ()
 
String [] getCompatibleProviders ()
 
String getDisplayCategory ()
 
String getDisplayType ()
 
void preprocessFederatedIdentity (KeycloakSession session, RealmModel realm, IdentityProviderMapperModel mapperModel, BrokeredIdentityContext context)
 
void updateBrokeredUser (KeycloakSession session, RealmModel realm, UserModel user, IdentityProviderMapperModel mapperModel, BrokeredIdentityContext context)
 
String getHelpText ()
 
void close ()
 
IdentityProviderMapper create (KeycloakSession session)
 
void init (org.keycloak.Config.Scope config)
 
void init (Config.Scope config)
 
void postInit (KeycloakSessionFactory factory)
 
void importNewUser (KeycloakSession session, RealmModel realm, UserModel user, IdentityProviderMapperModel mapperModel, BrokeredIdentityContext context)
 
default int order ()
 

静的公開変数類

static final String [] COMPATIBLE_PROVIDERS = {SAMLIdentityProviderFactory.PROVIDER_ID}
 
static final String ATTRIBUTE_NAME = "attribute.name"
 
static final String ATTRIBUTE_FRIENDLY_NAME = "attribute.friendly.name"
 
static final String USER_ATTRIBUTE = "user.attribute"
 
static final String PROVIDER_ID = "saml-user-attribute-idp-mapper"
 
static final String ANY_PROVIDER = "*"
 

静的関数

 [static initializer]
 

非公開メンバ関数

String getAttributeNameFromMapperModel (IdentityProviderMapperModel mapperModel)
 
void setIfNotEmpty (Consumer< String > consumer, List< String > values)
 
Predicate< AttributeStatementType.ASTChoiceType > elementWith (String attributeName)
 
List< String > findAttributeValuesInContext (String attributeName, BrokeredIdentityContext context)
 

静的非公開変数類

static final List< ProviderConfigPropertyconfigProperties = new ArrayList<>()
 
static final String EMAIL = "email"
 
static final String FIRST_NAME = "firstName"
 
static final String LAST_NAME = "lastName"
 

詳解

著者
Bill Burke
バージョン
Revision
1

関数詳解

◆ [static initializer]()

org.keycloak.broker.saml.mappers.UserAttributeMapper.[static initializer] ( )
inlinestaticpackage

◆ close()

void org.keycloak.broker.provider.AbstractIdentityProviderMapper.close ( )
inlineinherited

org.keycloak.provider.Providerを実装しています。

32  {
33 
34  }

◆ create()

IdentityProviderMapper org.keycloak.broker.provider.AbstractIdentityProviderMapper.create ( KeycloakSession  session)
inlineinherited

org.keycloak.provider.ProviderFactory< T extends Provider >を実装しています。

37  {
38  return null;
39  }

◆ elementWith()

Predicate<AttributeStatementType.ASTChoiceType> org.keycloak.broker.saml.mappers.UserAttributeMapper.elementWith ( String  attributeName)
inlineprivate
139  {
140  return attributeType -> {
141  AttributeType attribute = attributeType.getAttribute();
142  return Objects.equals(attribute.getName(), attributeName)
143  || Objects.equals(attribute.getFriendlyName(), attributeName);
144  };
145  }

◆ findAttributeValuesInContext()

List<String> org.keycloak.broker.saml.mappers.UserAttributeMapper.findAttributeValuesInContext ( String  attributeName,
BrokeredIdentityContext  context 
)
inlineprivate
148  {
149  AssertionType assertion = (AssertionType) context.getContextData().get(SAMLEndpoint.SAML_ASSERTION);
150 
151  return assertion.getAttributeStatements().stream()
152  .flatMap(statement -> statement.getAttributes().stream())
153  .filter(elementWith(attributeName))
154  .flatMap(attributeType -> attributeType.getAttribute().getAttributeValue().stream())
155  .filter(Objects::nonNull)
156  .map(Object::toString)
157  .collect(Collectors.toList());
158  }
Predicate< AttributeStatementType.ASTChoiceType > elementWith(String attributeName)
Definition: UserAttributeMapper.java:139

◆ getAttributeNameFromMapperModel()

String org.keycloak.broker.saml.mappers.UserAttributeMapper.getAttributeNameFromMapperModel ( IdentityProviderMapperModel  mapperModel)
inlineprivate
125  {
126  String attributeName = mapperModel.getConfig().get(ATTRIBUTE_NAME);
127  if (attributeName == null) {
128  attributeName = mapperModel.getConfig().get(ATTRIBUTE_FRIENDLY_NAME);
129  }
130  return attributeName;
131  }
static final String ATTRIBUTE_NAME
Definition: UserAttributeMapper.java:47
Map< String, String > getConfig()
Definition: IdentityProviderMapperModel.java:70
static final String ATTRIBUTE_FRIENDLY_NAME
Definition: UserAttributeMapper.java:48

◆ getCompatibleProviders()

String [] org.keycloak.broker.saml.mappers.UserAttributeMapper.getCompatibleProviders ( )
inline

org.keycloak.broker.provider.IdentityProviderMapperを実装しています。

89  {
90  return COMPATIBLE_PROVIDERS;
91  }
static final String [] COMPATIBLE_PROVIDERS
Definition: UserAttributeMapper.java:43

◆ getConfigProperties()

List<ProviderConfigProperty> org.keycloak.broker.saml.mappers.UserAttributeMapper.getConfigProperties ( )
inline

org.keycloak.provider.ConfiguredProviderを実装しています。

79  {
80  return configProperties;
81  }
static final List< ProviderConfigProperty > configProperties
Definition: UserAttributeMapper.java:45

◆ getDisplayCategory()

String org.keycloak.broker.saml.mappers.UserAttributeMapper.getDisplayCategory ( )
inline

org.keycloak.broker.provider.IdentityProviderMapperを実装しています。

94  {
95  return "Attribute Importer";
96  }

◆ getDisplayType()

String org.keycloak.broker.saml.mappers.UserAttributeMapper.getDisplayType ( )
inline

org.keycloak.broker.provider.IdentityProviderMapperを実装しています。

99  {
100  return "Attribute Importer";
101  }

◆ getHelpText()

String org.keycloak.broker.saml.mappers.UserAttributeMapper.getHelpText ( )
inline

org.keycloak.provider.ConfiguredProviderを実装しています。

191  {
192  return "Import declared saml attribute if it exists in assertion into the specified user property or attribute.";
193  }

◆ getId()

String org.keycloak.broker.saml.mappers.UserAttributeMapper.getId ( )
inline

org.keycloak.provider.ProviderFactory< T extends Provider >を実装しています。

84  {
85  return PROVIDER_ID;
86  }
static final String PROVIDER_ID
Definition: UserAttributeMapper.java:76

◆ importNewUser()

void org.keycloak.broker.provider.AbstractIdentityProviderMapper.importNewUser ( KeycloakSession  session,
RealmModel  realm,
UserModel  user,
IdentityProviderMapperModel  mapperModel,
BrokeredIdentityContext  context 
)
inlineinherited

org.keycloak.broker.provider.IdentityProviderMapperを実装しています。

57  {
58 
59  }

◆ init() [1/2]

void org.keycloak.provider.ProviderFactory< T extends Provider >.init ( Config.Scope  config)
inherited

Only called once when the factory is first created. This config is pulled from keycloak_server.json

引数
config

org.keycloak.storage.ldap.LDAPStorageProviderFactory, org.keycloak.protocol.saml.EntityDescriptorDescriptionConverter, org.keycloak.authentication.authenticators.x509.AbstractX509ClientCertificateAuthenticatorFactory, org.keycloak.authentication.forms.RegistrationUserCreation, org.keycloak.authentication.authenticators.resetcred.ResetCredentialEmail, org.keycloak.authentication.forms.RegistrationRecaptcha, org.keycloak.authentication.authenticators.resetcred.ResetCredentialChooseUser, org.keycloak.authentication.forms.RegistrationProfile, org.keycloak.authentication.forms.RegistrationPassword, org.keycloak.cluster.infinispan.InfinispanClusterProviderFactory, org.keycloak.protocol.saml.installation.KeycloakSamlClientInstallation, org.keycloak.protocol.saml.installation.SamlIDPDescriptorClientInstallation, org.keycloak.authentication.requiredactions.UpdateProfile, org.keycloak.authentication.requiredactions.UpdatePassword, org.keycloak.protocol.oidc.installation.KeycloakOIDCClientInstallation, org.keycloak.protocol.saml.mappers.RoleNameMapper, org.keycloak.connections.httpclient.DefaultHttpClientFactory, org.keycloak.protocol.saml.installation.ModAuthMellonClientInstallation, org.keycloak.federation.kerberos.KerberosFederationProviderFactory, org.keycloak.authentication.requiredactions.VerifyEmail, org.keycloak.authentication.requiredactions.UpdateTotp, org.keycloak.connections.jpa.updater.liquibase.conn.DefaultLiquibaseConnectionProvider, org.keycloak.protocol.oidc.installation.KeycloakOIDCJbossSubsystemClientInstallation, org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory, org.keycloak.protocol.saml.installation.SamlSPDescriptorClientInstallation, org.keycloak.policy.BlacklistPasswordPolicyProviderFactory, org.keycloak.authentication.forms.RegistrationPage, org.keycloak.protocol.saml.profile.ecp.authenticator.HttpBasicAuthenticatorFactory, org.keycloak.authentication.authenticators.browser.IdentityProviderAuthenticatorFactory, org.keycloak.authentication.authenticators.resetcred.AbstractSetRequiredActionAuthenticator, org.keycloak.connections.infinispan.DefaultInfinispanConnectionProviderFactory, org.keycloak.protocol.saml.installation.KeycloakSamlSubsystemInstallation, org.keycloak.keys.infinispan.InfinispanPublicKeyStorageProviderFactory, org.keycloak.theme.ClasspathThemeProviderFactory, org.keycloak.models.cache.infinispan.InfinispanUserCacheProviderFactory, org.keycloak.models.cache.infinispan.InfinispanCacheRealmProviderFactory, org.keycloak.executors.DefaultExecutorsProviderFactory, org.keycloak.authentication.authenticators.browser.ScriptBasedAuthenticatorFactory, org.keycloak.protocol.saml.SamlProtocolFactory, org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory, org.keycloak.protocol.docker.DockerAuthenticatorFactory, org.keycloak.storage.UserStorageProviderFactory< T extends UserStorageProvider >, org.keycloak.storage.client.ClientStorageProviderFactory< T extends ClientStorageProvider >, org.keycloak.authentication.authenticators.directgrant.AbstractDirectGrantAuthenticator, org.keycloak.authentication.authenticators.browser.OTPFormAuthenticatorFactory, org.keycloak.authentication.authenticators.browser.UsernamePasswordFormFactory, org.keycloak.exportimport.KeycloakClientDescriptionConverter, org.keycloak.authentication.authenticators.browser.SpnegoAuthenticatorFactory, org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper, org.keycloak.authentication.authenticators.browser.CookieAuthenticatorFactory, org.keycloak.authentication.requiredactions.TermsAndConditions, org.keycloak.events.email.EmailEventListenerProviderFactory, org.keycloak.authentication.authenticators.broker.IdpReviewProfileAuthenticatorFactory, org.keycloak.protocol.saml.mappers.AbstractSAMLProtocolMapper, org.keycloak.models.session.DisabledUserSessionPersisterProvider, org.keycloak.services.x509.DefaultClientCertificateLookupFactory, org.keycloak.authentication.authenticators.broker.IdpCreateUserIfUniqueAuthenticatorFactory, org.keycloak.authentication.authenticators.cli.CliUsernamePasswordAuthenticatorFactory, org.keycloak.authentication.authenticators.client.AbstractClientAuthenticator, org.keycloak.theme.JarThemeProviderFactory, org.keycloak.authentication.authenticators.challenge.BasicAuthAuthenticatorFactory, org.keycloak.authentication.authenticators.challenge.BasicAuthOTPAuthenticatorFactory, org.keycloak.authentication.authenticators.challenge.NoCookieFlowRedirectAuthenticatorFactory, org.keycloak.connections.jpa.updater.liquibase.lock.LiquibaseDBLockProviderFactory, org.keycloak.models.sessions.infinispan.InfinispanActionTokenStoreProviderFactory, org.keycloak.timer.basic.BasicTimerProviderFactory, org.keycloak.truststore.FileTruststoreProviderFactory, org.keycloak.authentication.authenticators.console.ConsoleUsernamePasswordAuthenticatorFactory, org.keycloak.events.log.JBossLoggingEventListenerProviderFactory, org.keycloak.protocol.oidc.OIDCClientDescriptionConverterFactory, org.keycloak.authentication.authenticators.broker.IdpConfirmLinkAuthenticatorFactory, org.keycloak.authentication.authenticators.broker.IdpEmailVerificationAuthenticatorFactory, org.keycloak.exportimport.singlefile.SingleFileImportProviderFactory, org.keycloak.services.x509.AbstractClientCertificateFromHttpHeadersLookupFactory, org.keycloak.theme.ClasspathThemeResourceProviderFactory, org.keycloak.exportimport.dir.DirExportProviderFactory, org.keycloak.exportimport.singlefile.SingleFileExportProviderFactory, org.keycloak.policy.HashAlgorithmPasswordPolicyProviderFactory, org.keycloak.policy.HistoryPasswordPolicyProviderFactory, org.keycloak.protocol.docker.mapper.DockerAuthV2ProtocolMapper, org.keycloak.authentication.authenticators.broker.IdpAutoLinkAuthenticatorFactory, org.keycloak.models.jpa.session.JpaUserSessionPersisterProviderFactory, org.keycloak.policy.DigitsPasswordPolicyProviderFactory, org.keycloak.policy.LengthPasswordPolicyProviderFactory, org.keycloak.policy.NotUsernamePasswordPolicyProviderFactory, org.keycloak.policy.RegexPatternsPasswordPolicyProviderFactory, org.keycloak.scripting.DefaultScriptingProviderFactory, org.keycloak.credential.hash.Pbkdf2PasswordHashProviderFactory, org.keycloak.events.jpa.JpaEventStoreProviderFactory, org.keycloak.exportimport.dir.DirImportProviderFactory, org.keycloak.transaction.JBossJtaTransactionManagerLookup, org.keycloak.email.freemarker.FreeMarkerEmailTemplateProviderFactory, org.keycloak.forms.account.freemarker.FreeMarkerAccountProviderFactory, org.keycloak.forms.login.freemarker.FreeMarkerLoginFormsProviderFactory, org.keycloak.policy.ForceExpiredPasswordPolicyProviderFactory, org.keycloak.storage.jpa.JpaUserFederatedStorageProviderFactory, org.keycloak.keys.KeyProviderFactory< T extends KeyProvider >, org.keycloak.policy.HashIterationsPasswordPolicyProviderFactory, org.keycloak.protocol.oidc.OIDCWellKnownProviderFactory, org.keycloak.protocol.saml.clientregistration.EntityDescriptorClientRegistrationProviderFactory, org.keycloak.services.clientregistration.oidc.OIDCClientRegistrationProviderFactory, org.keycloak.theme.ExtendingThemeManagerFactory, org.keycloak.theme.FolderThemeProviderFactory, org.keycloak.credential.CredentialProviderFactory< T extends CredentialProvider >, org.keycloak.services.clientregistration.policy.AbstractClientRegistrationPolicyFactory, org.keycloak.connections.jpa.updater.liquibase.LiquibaseJpaUpdaterProviderFactory, org.keycloak.policy.LowerCasePasswordPolicyProviderFactory, org.keycloak.policy.SpecialCharsPasswordPolicyProviderFactory, org.keycloak.policy.UpperCasePasswordPolicyProviderFactory, org.keycloak.protocol.oidc.AccessTokenIntrospectionProviderFactory, org.keycloak.provider.wildfly.ModuleThemeProviderFactory, org.keycloak.services.managers.DefaultBruteForceProtectorFactory, org.keycloak.services.migration.DefaultMigrationProviderFactory, org.keycloak.models.jpa.JpaRealmProviderFactory, org.keycloak.models.jpa.JpaUserCredentialStoreFactory, org.keycloak.models.jpa.JpaUserProviderFactory, org.keycloak.protocol.docker.installation.DockerComposeYamlInstallationProvider, org.keycloak.email.DefaultEmailSenderProviderFactory, org.keycloak.policy.DefaultPasswordPolicyManagerProviderFactory, org.keycloak.protocol.AbstractLoginProtocolFactory, org.keycloak.services.clientregistration.AdapterInstallationClientRegistrationProviderFactory, org.keycloak.services.clientregistration.DefaultClientRegistrationProviderFactory, org.keycloak.locale.DefaultLocaleSelectorProviderFactory, org.keycloak.urls.HostnameProviderFactory, org.keycloak.credential.hash.Pbkdf2Sha256PasswordHashProviderFactory, org.keycloak.credential.hash.Pbkdf2Sha512PasswordHashProviderFactory, org.keycloak.crypto.SignatureProviderFactory, org.keycloak.protocol.docker.installation.DockerRegistryConfigFileInstallationProvider, org.keycloak.protocol.docker.installation.DockerVariableOverrideInstallationProvider, org.keycloak.url.FixedHostnameProviderFactory, org.keycloak.theme.DefaultThemeSelectorProviderFactory, org.keycloak.protocol.oidc.ext.OIDCExtProviderFactory (計132項目)で実装されています。

◆ init() [2/2]

void org.keycloak.broker.provider.AbstractIdentityProviderMapper.init ( org.keycloak.Config.Scope  config)
inlineinherited
42  {
43 
44  }

◆ order()

default int org.keycloak.provider.ProviderFactory< T extends Provider >.order ( )
inlineinherited

◆ postInit()

void org.keycloak.broker.provider.AbstractIdentityProviderMapper.postInit ( KeycloakSessionFactory  factory)
inlineinherited

org.keycloak.provider.ProviderFactory< T extends Provider >を実装しています。

47  {
48 
49  }

◆ preprocessFederatedIdentity()

void org.keycloak.broker.saml.mappers.UserAttributeMapper.preprocessFederatedIdentity ( KeycloakSession  session,
RealmModel  realm,
IdentityProviderMapperModel  mapperModel,
BrokeredIdentityContext  context 
)
inline

org.keycloak.broker.provider.IdentityProviderMapperを実装しています。

104  {
105  String attribute = mapperModel.getConfig().get(USER_ATTRIBUTE);
106  if (StringUtil.isNullOrEmpty(attribute)) {
107  return;
108  }
109  String attributeName = getAttributeNameFromMapperModel(mapperModel);
110 
111  List<String> attributeValuesInContext = findAttributeValuesInContext(attributeName, context);
112  if (!attributeValuesInContext.isEmpty()) {
113  if (attribute.equalsIgnoreCase(EMAIL)) {
114  setIfNotEmpty(context::setEmail, attributeValuesInContext);
115  } else if (attribute.equalsIgnoreCase(FIRST_NAME)) {
116  setIfNotEmpty(context::setFirstName, attributeValuesInContext);
117  } else if (attribute.equalsIgnoreCase(LAST_NAME)) {
118  setIfNotEmpty(context::setLastName, attributeValuesInContext);
119  } else {
120  context.setUserAttribute(attribute, attributeValuesInContext);
121  }
122  }
123  }
static final String FIRST_NAME
Definition: UserAttributeMapper.java:51
Map< String, String > getConfig()
Definition: IdentityProviderMapperModel.java:70
static final String USER_ATTRIBUTE
Definition: UserAttributeMapper.java:49
static final String LAST_NAME
Definition: UserAttributeMapper.java:52
static final String EMAIL
Definition: UserAttributeMapper.java:50
String getAttributeNameFromMapperModel(IdentityProviderMapperModel mapperModel)
Definition: UserAttributeMapper.java:125
void setIfNotEmpty(Consumer< String > consumer, List< String > values)
Definition: UserAttributeMapper.java:133
List< String > findAttributeValuesInContext(String attributeName, BrokeredIdentityContext context)
Definition: UserAttributeMapper.java:148

◆ setIfNotEmpty()

void org.keycloak.broker.saml.mappers.UserAttributeMapper.setIfNotEmpty ( Consumer< String >  consumer,
List< String >  values 
)
inlineprivate
133  {
134  if (values != null && !values.isEmpty()) {
135  consumer.accept(values.get(0));
136  }
137  }

◆ updateBrokeredUser()

void org.keycloak.broker.saml.mappers.UserAttributeMapper.updateBrokeredUser ( KeycloakSession  session,
RealmModel  realm,
UserModel  user,
IdentityProviderMapperModel  mapperModel,
BrokeredIdentityContext  context 
)
inline

org.keycloak.broker.provider.IdentityProviderMapperを実装しています。

161  {
162  String attribute = mapperModel.getConfig().get(USER_ATTRIBUTE);
163  if (StringUtil.isNullOrEmpty(attribute)) {
164  return;
165  }
166  String attributeName = getAttributeNameFromMapperModel(mapperModel);
167  List<String> attributeValuesInContext = findAttributeValuesInContext(attributeName, context);
168  if (attribute.equalsIgnoreCase(EMAIL)) {
169  setIfNotEmpty(user::setEmail, attributeValuesInContext);
170  } else if (attribute.equalsIgnoreCase(FIRST_NAME)) {
171  setIfNotEmpty(user::setFirstName, attributeValuesInContext);
172  } else if (attribute.equalsIgnoreCase(LAST_NAME)) {
173  setIfNotEmpty(user::setLastName, attributeValuesInContext);
174  } else {
175  List<String> currentAttributeValues = user.getAttributes().get(attribute);
176  if (attributeValuesInContext == null) {
177  // attribute no longer sent by brokered idp, remove it
178  user.removeAttribute(attribute);
179  } else if (currentAttributeValues == null) {
180  // new attribute sent by brokered idp, add it
181  user.setAttribute(attribute, attributeValuesInContext);
182  } else if (!CollectionUtil.collectionEquals(attributeValuesInContext, currentAttributeValues)) {
183  // attribute sent by brokered idp has different values as before, update it
184  user.setAttribute(attribute, attributeValuesInContext);
185  }
186  // attribute allready set
187  }
188  }
static final String FIRST_NAME
Definition: UserAttributeMapper.java:51
Map< String, String > getConfig()
Definition: IdentityProviderMapperModel.java:70
Map< String, List< String > > getAttributes()
static final String USER_ATTRIBUTE
Definition: UserAttributeMapper.java:49
void removeAttribute(String name)
static final String LAST_NAME
Definition: UserAttributeMapper.java:52
static final String EMAIL
Definition: UserAttributeMapper.java:50
String getAttributeNameFromMapperModel(IdentityProviderMapperModel mapperModel)
Definition: UserAttributeMapper.java:125
void setAttribute(String name, List< String > values)
void setIfNotEmpty(Consumer< String > consumer, List< String > values)
Definition: UserAttributeMapper.java:133
List< String > findAttributeValuesInContext(String attributeName, BrokeredIdentityContext context)
Definition: UserAttributeMapper.java:148

メンバ詳解

◆ ANY_PROVIDER

final String org.keycloak.broker.provider.IdentityProviderMapper.ANY_PROVIDER = "*"
staticinherited

◆ ATTRIBUTE_FRIENDLY_NAME

final String org.keycloak.broker.saml.mappers.UserAttributeMapper.ATTRIBUTE_FRIENDLY_NAME = "attribute.friendly.name"
static

◆ ATTRIBUTE_NAME

final String org.keycloak.broker.saml.mappers.UserAttributeMapper.ATTRIBUTE_NAME = "attribute.name"
static

◆ COMPATIBLE_PROVIDERS

final String [] org.keycloak.broker.saml.mappers.UserAttributeMapper.COMPATIBLE_PROVIDERS = {SAMLIdentityProviderFactory.PROVIDER_ID}
static

◆ configProperties

final List<ProviderConfigProperty> org.keycloak.broker.saml.mappers.UserAttributeMapper.configProperties = new ArrayList<>()
staticprivate

◆ EMAIL

final String org.keycloak.broker.saml.mappers.UserAttributeMapper.EMAIL = "email"
staticprivate

◆ FIRST_NAME

final String org.keycloak.broker.saml.mappers.UserAttributeMapper.FIRST_NAME = "firstName"
staticprivate

◆ LAST_NAME

final String org.keycloak.broker.saml.mappers.UserAttributeMapper.LAST_NAME = "lastName"
staticprivate

◆ PROVIDER_ID

final String org.keycloak.broker.saml.mappers.UserAttributeMapper.PROVIDER_ID = "saml-user-attribute-idp-mapper"
static

◆ USER_ATTRIBUTE

final String org.keycloak.broker.saml.mappers.UserAttributeMapper.USER_ATTRIBUTE = "user.attribute"
static

このクラス詳解は次のファイルから抽出されました: