keycloak
公開メンバ関数 | 限定公開メンバ関数 | 非公開メンバ関数 | 全メンバ一覧
org.keycloak.keys.AbstractGeneratedSecretKeyProviderFactory< T extends KeyProvider > クラステンプレートabstract
org.keycloak.keys.AbstractGeneratedSecretKeyProviderFactory< T extends KeyProvider > の継承関係図
Inheritance graph
org.keycloak.keys.AbstractGeneratedSecretKeyProviderFactory< T extends KeyProvider > 連携図
Collaboration graph

公開メンバ関数

void validateConfiguration (KeycloakSession session, RealmModel realm, ComponentModel model) throws ComponentValidationException
 
create (KeycloakSession session, ComponentModel model)
 
default boolean createFallbackKeys (KeycloakSession session, KeyUse keyUse, String algorithm)
 
default void init (Config.Scope config)
 
default void postInit (KeycloakSessionFactory factory)
 
default void close ()
 

限定公開メンバ関数

abstract Logger logger ()
 
abstract int getDefaultKeySize ()
 

非公開メンバ関数

void generateSecret (ComponentModel model, int size)
 

詳解

著者
Stian Thorgersen

関数詳解

◆ close()

default void org.keycloak.keys.KeyProviderFactory< T extends KeyProvider >.close ( )
inlineinherited
47  {
48  }

◆ create()

T org.keycloak.keys.KeyProviderFactory< T extends KeyProvider >.create ( KeycloakSession  session,
ComponentModel  model 
)
inherited

◆ createFallbackKeys()

default boolean org.keycloak.keys.KeyProviderFactory< T extends KeyProvider >.createFallbackKeys ( KeycloakSession  session,
KeyUse  keyUse,
String  algorithm 
)
inlineinherited
34  {
35  return false;
36  }

◆ generateSecret()

void org.keycloak.keys.AbstractGeneratedSecretKeyProviderFactory< T extends KeyProvider >.generateSecret ( ComponentModel  model,
int  size 
)
inlineprivate
53  {
54  try {
55  byte[] secret = KeycloakModelUtils.generateSecret(size);
56  model.put(Attributes.SECRET_KEY, Base64Url.encode(secret));
57 
58  String kid = KeycloakModelUtils.generateId();
59  model.put(Attributes.KID_KEY, kid);
60  } catch (Throwable t) {
61  throw new ComponentValidationException("Failed to generate secret", t);
62  }
63  }

◆ getDefaultKeySize()

abstract int org.keycloak.keys.AbstractGeneratedSecretKeyProviderFactory< T extends KeyProvider >.getDefaultKeySize ( )
abstractprotected

◆ init()

default void org.keycloak.keys.KeyProviderFactory< T extends KeyProvider >.init ( Config.Scope  config)
inlineinherited
39  {
40  }

◆ logger()

abstract Logger org.keycloak.keys.AbstractGeneratedSecretKeyProviderFactory< T extends KeyProvider >.logger ( )
abstractprotected

◆ postInit()

default void org.keycloak.keys.KeyProviderFactory< T extends KeyProvider >.postInit ( KeycloakSessionFactory  factory)
inlineinherited
43  {
44  }

◆ validateConfiguration()

void org.keycloak.keys.AbstractGeneratedSecretKeyProviderFactory< T extends KeyProvider >.validateConfiguration ( KeycloakSession  session,
RealmModel  realm,
ComponentModel  model 
) throws ComponentValidationException
inline
35  {
36  ConfigurationValidationHelper validation = SecretKeyProviderUtils.validateConfiguration(model);
37  validation.checkList(Attributes.SECRET_SIZE_PROPERTY, false);
38 
39  int size = model.get(Attributes.SECRET_SIZE_KEY, getDefaultKeySize());
40 
41  if (!(model.contains(Attributes.SECRET_KEY))) {
42  generateSecret(model, size);
43  logger().debugv("Generated secret for {0}", realm.getName());
44  } else {
45  int currentSize = Base64Url.decode(model.get(Attributes.SECRET_KEY)).length;
46  if (currentSize != size) {
47  generateSecret(model, size);
48  logger().debugv("Secret size changed, generating new secret for {0}", realm.getName());
49  }
50  }
51  }
void generateSecret(ComponentModel model, int size)
Definition: AbstractGeneratedSecretKeyProviderFactory.java:53

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