keycloak-service
公開メンバ関数 | 静的公開変数類 | 限定公開メンバ関数 | 非公開メンバ関数 | 全メンバ一覧
org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper クラスabstract
org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper の継承関係図
Inheritance graph
org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper 連携図
Collaboration graph

公開メンバ関数

abstract String getIdPrefix ()
 
abstract String generateSub (ProtocolMapperModel mappingModel, String sectorIdentifier, String localSub)
 
List< ProviderConfigProperty > getAdditionalConfigProperties ()
 
void validateAdditionalConfig (KeycloakSession session, RealmModel realm, ProtocolMapperContainerModel mapperContainer, ProtocolMapperModel mapperModel) throws ProtocolMapperConfigException
 
final String getDisplayCategory ()
 
IDToken transformIDToken (IDToken token, ProtocolMapperModel mappingModel, KeycloakSession session, UserSessionModel userSession, AuthenticatedClientSessionModel clientSession)
 
AccessToken transformAccessToken (AccessToken token, ProtocolMapperModel mappingModel, KeycloakSession session, UserSessionModel userSession, AuthenticatedClientSessionModel clientSession)
 
AccessToken transformUserInfoToken (AccessToken token, ProtocolMapperModel mappingModel, KeycloakSession session, UserSessionModel userSession, AuthenticatedClientSessionModel clientSession)
 
final List< ProviderConfigProperty > getConfigProperties ()
 
final void validateConfig (KeycloakSession session, RealmModel realm, ProtocolMapperContainerModel mapperContainer, ProtocolMapperModel mapperModel) throws ProtocolMapperConfigException
 
final String getId ()
 
String getProtocol ()
 
void close ()
 
final ProtocolMapper create (KeycloakSession session)
 
void init (Config.Scope config)
 
void postInit (KeycloakSessionFactory factory)
 

静的公開変数類

static final String PROVIDER_ID_SUFFIX = "-pairwise-sub-mapper"
 
static final String TOKEN_MAPPER_CATEGORY = "Token mapper"
 

限定公開メンバ関数

void setIDTokenSubject (IDToken token, String pairwiseSub)
 
void setAccessTokenSubject (IDToken token, String pairwiseSub)
 
void setUserInfoTokenSubject (IDToken token, String pairwiseSub)
 
void setClaim (IDToken token, ProtocolMapperModel mappingModel, UserSessionModel userSession)
 
void setClaim (IDToken token, ProtocolMapperModel mappingModel, UserSessionModel userSession, KeycloakSession keycloakSession)
 

非公開メンバ関数

String getSectorIdentifier (ClientModel client, ProtocolMapperModel mappingModel)
 

詳解

Set the 'sub' claim to pairwise .

著者
Martin Hardselius

関数詳解

◆ close()

void org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper.close ( )
inlineinherited
45  {
46 
47  }

◆ create()

final ProtocolMapper org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper.create ( KeycloakSession  session)
inlineinherited
50  {
51  throw new RuntimeException("UNSUPPORTED METHOD");
52  }

◆ generateSub()

abstract String org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.generateSub ( ProtocolMapperModel  mappingModel,
String  sectorIdentifier,
String  localSub 
)
abstract

Generates a pairwise subject identifier.

引数
mappingModel
sectorIdentifierclient sector identifier
localSublocal subject identifier (user id)
戻り値
A pairwise subject identifier

◆ getAdditionalConfigProperties()

List<ProviderConfigProperty> org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.getAdditionalConfigProperties ( )
inline

Override to add additional provider configuration properties. By default, a pairwise sub mapper will only contain configuration for a sector identifier URI.

戻り値
A list of provider configuration properties.
45  {
46  return new LinkedList<>();
47  }

◆ getConfigProperties()

final List<ProviderConfigProperty> org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.getConfigProperties ( )
inline
97  {
98  List<ProviderConfigProperty> configProperties = new LinkedList<>();
99  configProperties.add(PairwiseSubMapperHelper.createSectorIdentifierConfig());
100  configProperties.addAll(getAdditionalConfigProperties());
101  return configProperties;
102  }
List< ProviderConfigProperty > getAdditionalConfigProperties()
Definition: AbstractPairwiseSubMapper.java:45

◆ getDisplayCategory()

final String org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.getDisplayCategory ( )
inline
62  {
63  return AbstractOIDCProtocolMapper.TOKEN_MAPPER_CATEGORY;
64  }

◆ getId()

final String org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.getId ( )
inline
123  {
124  return "oidc-" + getIdPrefix() + PROVIDER_ID_SUFFIX;
125  }
static final String PROVIDER_ID_SUFFIX
Definition: AbstractPairwiseSubMapper.java:26

◆ getIdPrefix()

abstract String org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.getIdPrefix ( )
abstract

◆ getProtocol()

String org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper.getProtocol ( )
inlineinherited
40  {
41  return OIDCLoginProtocol.LOGIN_PROTOCOL;
42  }

◆ getSectorIdentifier()

String org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.getSectorIdentifier ( ClientModel  client,
ProtocolMapperModel  mappingModel 
)
inlineprivate
104  {
105  String sectorIdentifierUri = PairwiseSubMapperHelper.getSectorIdentifierUri(mappingModel);
106  if (sectorIdentifierUri != null && !sectorIdentifierUri.isEmpty()) {
107  return PairwiseSubMapperUtils.resolveValidSectorIdentifier(sectorIdentifierUri);
108  }
109  return PairwiseSubMapperUtils.resolveValidSectorIdentifier(client.getRootUrl(), client.getRedirectUris());
110  }

◆ init()

void org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper.init ( Config.Scope  config)
inlineinherited
55  {
56  }

◆ postInit()

void org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper.postInit ( KeycloakSessionFactory  factory)
inlineinherited
59  {
60 
61  }

◆ setAccessTokenSubject()

void org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.setAccessTokenSubject ( IDToken  token,
String  pairwiseSub 
)
inlineprotected
88  {
89  token.setSubject(pairwiseSub);
90  }

◆ setClaim() [1/2]

void org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper.setClaim ( IDToken  token,
ProtocolMapperModel  mappingModel,
UserSessionModel  userSession 
)
inlineprotectedinherited

Intended to be overridden in ProtocolMapper implementations to add claims to an token.

引数
token
mappingModel
userSession
非推奨:
override setClaim(IDToken, ProtocolMapperModel, UserSessionModel, KeycloakSession) instead.
105  {
106  }

◆ setClaim() [2/2]

void org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper.setClaim ( IDToken  token,
ProtocolMapperModel  mappingModel,
UserSessionModel  userSession,
KeycloakSession  keycloakSession 
)
inlineprotectedinherited

Intended to be overridden in ProtocolMapper implementations to add claims to an token.

引数
token
mappingModel
userSession
keycloakSession
115  {
116  // we delegate to the old #setClaim(...) method for backwards compatibility
117  setClaim(token, mappingModel, userSession);
118  }
void setClaim(IDToken token, ProtocolMapperModel mappingModel, UserSessionModel userSession)
Definition: AbstractOIDCProtocolMapper.java:105

◆ setIDTokenSubject()

void org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.setIDTokenSubject ( IDToken  token,
String  pairwiseSub 
)
inlineprotected
84  {
85  token.setSubject(pairwiseSub);
86  }

◆ setUserInfoTokenSubject()

void org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.setUserInfoTokenSubject ( IDToken  token,
String  pairwiseSub 
)
inlineprotected
92  {
93  token.getOtherClaims().put("sub", pairwiseSub);
94  }

◆ transformAccessToken()

AccessToken org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.transformAccessToken ( AccessToken  token,
ProtocolMapperModel  mappingModel,
KeycloakSession  session,
UserSessionModel  userSession,
AuthenticatedClientSessionModel  clientSession 
)
inline

org.keycloak.protocol.oidc.mappers.OIDCAccessTokenMapperを実装しています。

73  {
74  setAccessTokenSubject(token, generateSub(mappingModel, getSectorIdentifier(clientSession.getClient(), mappingModel), userSession.getUser().getId()));
75  return token;
76  }
abstract String generateSub(ProtocolMapperModel mappingModel, String sectorIdentifier, String localSub)
String getSectorIdentifier(ClientModel client, ProtocolMapperModel mappingModel)
Definition: AbstractPairwiseSubMapper.java:104
void setAccessTokenSubject(IDToken token, String pairwiseSub)
Definition: AbstractPairwiseSubMapper.java:88

◆ transformIDToken()

IDToken org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.transformIDToken ( IDToken  token,
ProtocolMapperModel  mappingModel,
KeycloakSession  session,
UserSessionModel  userSession,
AuthenticatedClientSessionModel  clientSession 
)
inline

org.keycloak.protocol.oidc.mappers.OIDCIDTokenMapperを実装しています。

67  {
68  setIDTokenSubject(token, generateSub(mappingModel, getSectorIdentifier(clientSession.getClient(), mappingModel), userSession.getUser().getId()));
69  return token;
70  }
abstract String generateSub(ProtocolMapperModel mappingModel, String sectorIdentifier, String localSub)
String getSectorIdentifier(ClientModel client, ProtocolMapperModel mappingModel)
Definition: AbstractPairwiseSubMapper.java:104
void setIDTokenSubject(IDToken token, String pairwiseSub)
Definition: AbstractPairwiseSubMapper.java:84

◆ transformUserInfoToken()

AccessToken org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.transformUserInfoToken ( AccessToken  token,
ProtocolMapperModel  mappingModel,
KeycloakSession  session,
UserSessionModel  userSession,
AuthenticatedClientSessionModel  clientSession 
)
inline

org.keycloak.protocol.oidc.mappers.UserInfoTokenMapperを実装しています。

79  {
80  setUserInfoTokenSubject(token, generateSub(mappingModel, getSectorIdentifier(clientSession.getClient(), mappingModel), userSession.getUser().getId()));
81  return token;
82  }
void setUserInfoTokenSubject(IDToken token, String pairwiseSub)
Definition: AbstractPairwiseSubMapper.java:92
abstract String generateSub(ProtocolMapperModel mappingModel, String sectorIdentifier, String localSub)
String getSectorIdentifier(ClientModel client, ProtocolMapperModel mappingModel)
Definition: AbstractPairwiseSubMapper.java:104

◆ validateAdditionalConfig()

void org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.validateAdditionalConfig ( KeycloakSession  session,
RealmModel  realm,
ProtocolMapperContainerModel  mapperContainer,
ProtocolMapperModel  mapperModel 
) throws ProtocolMapperConfigException
inline

Override to add additional configuration validation. Called when instance of mapperModel is created/updated for this protocolMapper through admin endpoint.

引数
session
realm
mapperContainerclient or clientScope
mapperModel
例外
ProtocolMapperConfigExceptionif configuration provided in mapperModel is not valid
58  {
59  }

◆ validateConfig()

final void org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.validateConfig ( KeycloakSession  session,
RealmModel  realm,
ProtocolMapperContainerModel  mapperContainer,
ProtocolMapperModel  mapperModel 
) throws ProtocolMapperConfigException
inline
113  {
114  ClientModel client = null;
115  if (mapperContainer instanceof ClientModel) {
116  client = (ClientModel) mapperContainer;
117  PairwiseSubMapperValidator.validate(session, client, mapperModel);
118  }
119  validateAdditionalConfig(session, realm, mapperContainer, mapperModel);
120  }
void validateAdditionalConfig(KeycloakSession session, RealmModel realm, ProtocolMapperContainerModel mapperContainer, ProtocolMapperModel mapperModel)
Definition: AbstractPairwiseSubMapper.java:58

メンバ詳解

◆ PROVIDER_ID_SUFFIX

final String org.keycloak.protocol.oidc.mappers.AbstractPairwiseSubMapper.PROVIDER_ID_SUFFIX = "-pairwise-sub-mapper"
static

◆ TOKEN_MAPPER_CATEGORY

final String org.keycloak.protocol.oidc.mappers.AbstractOIDCProtocolMapper.TOKEN_MAPPER_CATEGORY = "Token mapper"
staticinherited

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