keycloak-service
クラス | 静的公開メンバ関数 | 静的非公開メンバ関数 | 静的非公開変数類 | 全メンバ一覧
org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager クラス
org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager 連携図
Collaboration graph

クラス

interface  ClientRegOperation
 

静的公開メンバ関数

static void triggerBeforeRegister (ClientRegistrationContext context, RegistrationAuth authType) throws ClientRegistrationPolicyException
 
static void triggerAfterRegister (ClientRegistrationContext context, RegistrationAuth authType, ClientModel client)
 
static void triggerBeforeUpdate (ClientRegistrationContext context, RegistrationAuth authType, ClientModel client) throws ClientRegistrationPolicyException
 
static void triggerAfterUpdate (ClientRegistrationContext context, RegistrationAuth authType, ClientModel client)
 
static void triggerBeforeView (KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, ClientModel client) throws ClientRegistrationPolicyException
 
static void triggerBeforeRemove (KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, ClientModel client) throws ClientRegistrationPolicyException
 
static String getComponentTypeKey (RegistrationAuth authType)
 

静的非公開メンバ関数

static void triggerPolicies (KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, String opDescription, ClientRegOperation op) throws ClientRegistrationPolicyException
 

静的非公開変数類

static final Logger logger = Logger.getLogger(ClientRegistrationPolicyManager.class)
 

詳解

著者
Marek Posolda

関数詳解

◆ getComponentTypeKey()

static String org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.getComponentTypeKey ( RegistrationAuth  authType)
inlinestatic
140  {
141  return authType.toString().toLowerCase();
142  }

◆ triggerAfterRegister()

static void org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.triggerAfterRegister ( ClientRegistrationContext  context,
RegistrationAuth  authType,
ClientModel  client 
)
inlinestatic
50  {
51  try {
52  triggerPolicies(context.getSession(), context.getProvider(), authType, "after register client " + client.getClientId(), (ClientRegistrationPolicy policy) -> {
53 
54  policy.afterRegister(context, client);
55 
56  });
57  } catch (ClientRegistrationPolicyException crpe) {
58  throw new IllegalStateException(crpe);
59  }
60  }
static void triggerPolicies(KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, String opDescription, ClientRegOperation op)
Definition: ClientRegistrationPolicyManager.java:101

◆ triggerAfterUpdate()

static void org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.triggerAfterUpdate ( ClientRegistrationContext  context,
RegistrationAuth  authType,
ClientModel  client 
)
inlinestatic
71  {
72  try {
73  triggerPolicies(context.getSession(), context.getProvider(), authType, "after update client " + client.getClientId(), (ClientRegistrationPolicy policy) -> {
74 
75  policy.afterUpdate(context, client);
76 
77  });
78  } catch (ClientRegistrationPolicyException crpe) {
79  throw new IllegalStateException(crpe);
80  }
81  }
static void triggerPolicies(KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, String opDescription, ClientRegOperation op)
Definition: ClientRegistrationPolicyManager.java:101

◆ triggerBeforeRegister()

static void org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.triggerBeforeRegister ( ClientRegistrationContext  context,
RegistrationAuth  authType 
) throws ClientRegistrationPolicyException
inlinestatic
41  {
42  triggerPolicies(context.getSession(), context.getProvider(), authType, "before register client", (ClientRegistrationPolicy policy) -> {
43 
44  policy.beforeRegister(context);
45 
46  });
47  }
static void triggerPolicies(KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, String opDescription, ClientRegOperation op)
Definition: ClientRegistrationPolicyManager.java:101

◆ triggerBeforeRemove()

static void org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.triggerBeforeRemove ( KeycloakSession  session,
ClientRegistrationProvider  provider,
RegistrationAuth  authType,
ClientModel  client 
) throws ClientRegistrationPolicyException
inlinestatic
91  {
92  triggerPolicies(session, provider, authType, "before delete client " + client.getClientId(), (ClientRegistrationPolicy policy) -> {
93 
94  policy.beforeDelete(provider, client);
95 
96  });
97  }
static void triggerPolicies(KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, String opDescription, ClientRegOperation op)
Definition: ClientRegistrationPolicyManager.java:101

◆ triggerBeforeUpdate()

static void org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.triggerBeforeUpdate ( ClientRegistrationContext  context,
RegistrationAuth  authType,
ClientModel  client 
) throws ClientRegistrationPolicyException
inlinestatic
63  {
64  triggerPolicies(context.getSession(), context.getProvider(), authType, "before update client " + client.getClientId(), (ClientRegistrationPolicy policy) -> {
65 
66  policy.beforeUpdate(context, client);
67 
68  });
69  }
static void triggerPolicies(KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, String opDescription, ClientRegOperation op)
Definition: ClientRegistrationPolicyManager.java:101

◆ triggerBeforeView()

static void org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.triggerBeforeView ( KeycloakSession  session,
ClientRegistrationProvider  provider,
RegistrationAuth  authType,
ClientModel  client 
) throws ClientRegistrationPolicyException
inlinestatic
83  {
84  triggerPolicies(session, provider, authType, "before view client " + client.getClientId(), (ClientRegistrationPolicy policy) -> {
85 
86  policy.beforeView(provider, client);
87 
88  });
89  }
static void triggerPolicies(KeycloakSession session, ClientRegistrationProvider provider, RegistrationAuth authType, String opDescription, ClientRegOperation op)
Definition: ClientRegistrationPolicyManager.java:101

◆ triggerPolicies()

static void org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.triggerPolicies ( KeycloakSession  session,
ClientRegistrationProvider  provider,
RegistrationAuth  authType,
String  opDescription,
ClientRegOperation  op 
) throws ClientRegistrationPolicyException
inlinestaticprivate
101  {
102  RealmModel realm = session.getContext().getRealm();
103 
104  String policyTypeKey = getComponentTypeKey(authType);
105  List<ComponentModel> policyModels = realm.getComponents(realm.getId(), ClientRegistrationPolicy.class.getName());
106 
107  policyModels = policyModels.stream().filter((ComponentModel model) -> {
108 
109  return policyTypeKey.equals(model.getSubType());
110 
111  }).collect(Collectors.toList());
112 
113  for (ComponentModel policyModel : policyModels) {
114  ClientRegistrationPolicy policy = session.getProvider(ClientRegistrationPolicy.class, policyModel);
115  if (policy == null) {
116  throw new ClientRegistrationPolicyException("Policy of type '" + policyModel.getProviderId() + "' not found");
117  }
118 
119  if (logger.isTraceEnabled()) {
120  logger.tracef("Running policy '%s' %s", policyModel.getName(), opDescription);
121  }
122 
123  try {
124  op.run(policy);
125  } catch (ClientRegistrationPolicyException crpe) {
126  provider.getEvent().detail(Details.CLIENT_REGISTRATION_POLICY, policyModel.getName());
127  crpe.setPolicyModel(policyModel);
128  ServicesLogger.LOGGER.clientRegistrationRequestRejected(opDescription, crpe.getMessage());
129  throw crpe;
130  }
131  }
132  }
static String getComponentTypeKey(RegistrationAuth authType)
Definition: ClientRegistrationPolicyManager.java:140
static final Logger logger
Definition: ClientRegistrationPolicyManager.java:39

メンバ詳解

◆ logger

final Logger org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager.logger = Logger.getLogger(ClientRegistrationPolicyManager.class)
staticprivate

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