keycloak-service
公開メンバ関数 | 静的公開変数類 | 全メンバ一覧
org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory クラス
org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory の継承関係図
Inheritance graph
org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory 連携図
Collaboration graph

公開メンバ関数

Authenticator create (KeycloakSession session)
 
void init (Config.Scope config)
 
void postInit (KeycloakSessionFactory factory)
 
void close ()
 
String getId ()
 
String getReferenceCategory ()
 
boolean isConfigurable ()
 
boolean isUserSetupAllowed ()
 
AuthenticationExecutionModel.Requirement [] getRequirementChoices ()
 
String getDisplayType ()
 
String getHelpText ()
 
List< ProviderConfigProperty > getConfigProperties ()
 

静的公開変数類

static final String PROVIDER_ID = "auth-conditional-otp-form"
 
static final ConditionalOtpFormAuthenticator SINGLETON = new ConditionalOtpFormAuthenticator()
 
static final AuthenticationExecutionModel.Requirement [] REQUIREMENT_CHOICES
 

詳解

An AuthenticatorFactory for ConditionalOtpFormAuthenticators.

著者
Thomas Darimont

関数詳解

◆ close()

void org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.close ( )
inline
76  {
77  //NOOP
78  }

◆ create()

Authenticator org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.create ( KeycloakSession  session)
inline
61  {
62  return SINGLETON;
63  }
static final ConditionalOtpFormAuthenticator SINGLETON
Definition: ConditionalOtpFormAuthenticatorFactory.java:53

◆ getConfigProperties()

List<ProviderConfigProperty> org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.getConfigProperties ( )
inline
117  {
118 
119  ProviderConfigProperty forceOtpUserAttribute = new ProviderConfigProperty();
120  forceOtpUserAttribute.setType(STRING_TYPE);
121  forceOtpUserAttribute.setName(OTP_CONTROL_USER_ATTRIBUTE);
122  forceOtpUserAttribute.setLabel("OTP control User Attribute");
123  forceOtpUserAttribute.setHelpText("The name of the user attribute to explicitly control OTP auth. " +
124  "If attribute value is 'force' then OTP is always required. " +
125  "If value is 'skip' the OTP auth is skipped. Otherwise this check is ignored.");
126 
127  ProviderConfigProperty skipOtpRole = new ProviderConfigProperty();
128  skipOtpRole.setType(ROLE_TYPE);
129  skipOtpRole.setName(SKIP_OTP_ROLE);
130  skipOtpRole.setLabel("Skip OTP for Role");
131  skipOtpRole.setHelpText("OTP is always skipped if user has the given Role.");
132 
133  ProviderConfigProperty forceOtpRole = new ProviderConfigProperty();
134  forceOtpRole.setType(ROLE_TYPE);
135  forceOtpRole.setName(FORCE_OTP_ROLE);
136  forceOtpRole.setLabel("Force OTP for Role");
137  forceOtpRole.setHelpText("OTP is always required if user has the given Role.");
138 
139  ProviderConfigProperty skipOtpForHttpHeader = new ProviderConfigProperty();
140  skipOtpForHttpHeader.setType(STRING_TYPE);
141  skipOtpForHttpHeader.setName(SKIP_OTP_FOR_HTTP_HEADER);
142  skipOtpForHttpHeader.setLabel("Skip OTP for Header");
143  skipOtpForHttpHeader.setHelpText("OTP is skipped if a HTTP request header does matches the given pattern." +
144  "Can be used to specify trusted networks via: X-Forwarded-Host: (1.2.3.4|1.2.3.5)." +
145  "In this case requests from 1.2.3.4 and 1.2.3.5 come from a trusted source.");
146  skipOtpForHttpHeader.setDefaultValue("");
147 
148  ProviderConfigProperty forceOtpForHttpHeader = new ProviderConfigProperty();
149  forceOtpForHttpHeader.setType(STRING_TYPE);
150  forceOtpForHttpHeader.setName(FORCE_OTP_FOR_HTTP_HEADER);
151  forceOtpForHttpHeader.setLabel("Force OTP for Header");
152  forceOtpForHttpHeader.setHelpText("OTP required if a HTTP request header matches the given pattern.");
153  forceOtpForHttpHeader.setDefaultValue("");
154 
155  ProviderConfigProperty defaultOutcome = new ProviderConfigProperty();
156  defaultOutcome.setType(LIST_TYPE);
157  defaultOutcome.setName(DEFAULT_OTP_OUTCOME);
158  defaultOutcome.setLabel("Fallback OTP handling");
159  defaultOutcome.setOptions(asList(SKIP, FORCE));
160  defaultOutcome.setHelpText("What to do in case of every check abstains. Defaults to force OTP authentication.");
161 
162  return asList(forceOtpUserAttribute, skipOtpRole, forceOtpRole, skipOtpForHttpHeader, forceOtpForHttpHeader, defaultOutcome);
163  }

◆ getDisplayType()

String org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.getDisplayType ( )
inline
107  {
108  return "Conditional OTP Form";
109  }

◆ getHelpText()

String org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.getHelpText ( )
inline
112  {
113  return "Validates a OTP on a separate OTP form. Only shown if required based on the configured conditions.";
114  }

◆ getId()

String org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.getId ( )
inline
81  {
82  return PROVIDER_ID;
83  }
static final String PROVIDER_ID
Definition: ConditionalOtpFormAuthenticatorFactory.java:51

◆ getReferenceCategory()

String org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.getReferenceCategory ( )
inline
86  {
87  return UserCredentialModel.TOTP;
88  }

◆ getRequirementChoices()

AuthenticationExecutionModel.Requirement [] org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.getRequirementChoices ( )
inline
102  {
103  return REQUIREMENT_CHOICES;
104  }
static final AuthenticationExecutionModel.Requirement [] REQUIREMENT_CHOICES
Definition: ConditionalOtpFormAuthenticatorFactory.java:55

◆ init()

void org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.init ( Config.Scope  config)
inline
66  {
67  //NOOP
68  }

◆ isConfigurable()

boolean org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.isConfigurable ( )
inline
91  {
92  return true;
93  }

◆ isUserSetupAllowed()

boolean org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.isUserSetupAllowed ( )
inline
96  {
97  return true;
98  }

◆ postInit()

void org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.postInit ( KeycloakSessionFactory  factory)
inline
71  {
72  //NOOP
73  }

メンバ詳解

◆ PROVIDER_ID

final String org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.PROVIDER_ID = "auth-conditional-otp-form"
static

◆ REQUIREMENT_CHOICES

final AuthenticationExecutionModel.Requirement [] org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.REQUIREMENT_CHOICES
static
初期値:
= {
AuthenticationExecutionModel.Requirement.REQUIRED,
AuthenticationExecutionModel.Requirement.OPTIONAL,
AuthenticationExecutionModel.Requirement.DISABLED}

◆ SINGLETON

final ConditionalOtpFormAuthenticator org.keycloak.authentication.authenticators.browser.ConditionalOtpFormAuthenticatorFactory.SINGLETON = new ConditionalOtpFormAuthenticator()
static

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