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

公開メンバ関数

List< ProviderConfigProperty > getConfigProperties ()
 
String getId ()
 
String getDisplayType ()
 
String getDisplayCategory ()
 
String getHelpText ()
 
String mapName (ProtocolMapperModel model, RoleModel roleModel)
 
String getProtocol ()
 
void close ()
 
void init (Config.Scope config)
 
final ProtocolMapper create (KeycloakSession session)
 
void postInit (KeycloakSessionFactory factory)
 

静的公開メンバ関数

static ProtocolMapperModel create (String name, String role, String newName)
 

静的公開変数類

static final String ROLE_CONFIG = "role"
 
static String NEW_ROLE_NAME = "new.role.name"
 
static final String PROVIDER_ID = "saml-role-name-mapper"
 

静的関数

 [static initializer]
 

静的非公開変数類

static final List< ProviderConfigProperty > configProperties = new ArrayList<ProviderConfigProperty>()
 

詳解

Map an assigned role to a different position and name in the token

著者
Bill Burke
バージョン
Revision
1

関数詳解

◆ [static initializer]()

org.keycloak.protocol.saml.mappers.RoleNameMapper.[static initializer] ( )
inlinestaticpackage

◆ close()

void org.keycloak.protocol.saml.mappers.RoleNameMapper.close ( )
inline
134  {
135  }

◆ create() [1/2]

static ProtocolMapperModel org.keycloak.protocol.saml.mappers.RoleNameMapper.create ( String  name,
String  role,
String  newName 
)
inlinestatic
114  {
115  String mapperId = PROVIDER_ID;
116  ProtocolMapperModel mapper = new ProtocolMapperModel();
117  mapper.setName(name);
118  mapper.setProtocolMapper(mapperId);
119  mapper.setProtocol(SamlProtocol.LOGIN_PROTOCOL);
120  Map<String, String> config = new HashMap<String, String>();
121  config.put(ROLE_CONFIG, role);
122  config.put(NEW_ROLE_NAME, newName);
123  mapper.setConfig(config);
124  return mapper;
125 
126  }
static final String PROVIDER_ID
Definition: RoleNameMapper.java:65
static final String ROLE_CONFIG
Definition: RoleNameMapper.java:46
static String NEW_ROLE_NAME
Definition: RoleNameMapper.java:47

◆ create() [2/2]

final ProtocolMapper org.keycloak.protocol.saml.mappers.RoleNameMapper.create ( KeycloakSession  session)
inline
142  {
143  throw new RuntimeException("UNSUPPORTED METHOD");
144  }

◆ getConfigProperties()

List<ProviderConfigProperty> org.keycloak.protocol.saml.mappers.RoleNameMapper.getConfigProperties ( )
inline
68  {
69  return configProperties;
70  }
static final List< ProviderConfigProperty > configProperties
Definition: RoleNameMapper.java:44

◆ getDisplayCategory()

String org.keycloak.protocol.saml.mappers.RoleNameMapper.getDisplayCategory ( )
inline
80  {
81  return "Role Mapper";
82 
83  }

◆ getDisplayType()

String org.keycloak.protocol.saml.mappers.RoleNameMapper.getDisplayType ( )
inline
76  {
77  return "Role Name Mapper";
78  }

◆ getHelpText()

String org.keycloak.protocol.saml.mappers.RoleNameMapper.getHelpText ( )
inline
85  {
86  return "Map an assigned role to a new name";
87  }

◆ getId()

String org.keycloak.protocol.saml.mappers.RoleNameMapper.getId ( )
inline
72  {
73  return PROVIDER_ID;
74  }
static final String PROVIDER_ID
Definition: RoleNameMapper.java:65

◆ getProtocol()

String org.keycloak.protocol.saml.mappers.RoleNameMapper.getProtocol ( )
inline
129  {
130  return SamlProtocol.LOGIN_PROTOCOL;
131  }

◆ init()

void org.keycloak.protocol.saml.mappers.RoleNameMapper.init ( Config.Scope  config)
inline
138  {
139  }

◆ mapName()

String org.keycloak.protocol.saml.mappers.RoleNameMapper.mapName ( ProtocolMapperModel  model,
RoleModel  roleModel 
)
inline

org.keycloak.protocol.saml.mappers.SAMLRoleNameMapperを実装しています。

90  {
91  RoleContainerModel container = roleModel.getContainer();
92  ClientModel app = null;
93  if (container instanceof ClientModel) {
94  app = ((ClientModel) container);
95  }
96  String role = model.getConfig().get(ROLE_CONFIG);
97  String newName = model.getConfig().get(NEW_ROLE_NAME);
98  String appName = null;
99  int scopeIndex = role.indexOf('.');
100  if (scopeIndex > -1) {
101  if (app == null) return null;
102  appName = role.substring(0, scopeIndex);
103  if (!app.getClientId().equals(appName)) return null;
104  role = role.substring(scopeIndex + 1);
105  } else {
106  if (app != null) return null;
107  }
108  if (roleModel.getName().equals(role)) return newName;
109  return null;
110  }
static final String ROLE_CONFIG
Definition: RoleNameMapper.java:46
static String NEW_ROLE_NAME
Definition: RoleNameMapper.java:47

◆ postInit()

void org.keycloak.protocol.saml.mappers.RoleNameMapper.postInit ( KeycloakSessionFactory  factory)
inline
147  {
148 
149  }

メンバ詳解

◆ configProperties

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

◆ NEW_ROLE_NAME

String org.keycloak.protocol.saml.mappers.RoleNameMapper.NEW_ROLE_NAME = "new.role.name"
static

◆ PROVIDER_ID

final String org.keycloak.protocol.saml.mappers.RoleNameMapper.PROVIDER_ID = "saml-role-name-mapper"
static

◆ ROLE_CONFIG

final String org.keycloak.protocol.saml.mappers.RoleNameMapper.ROLE_CONFIG = "role"
static

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