Class AuthenticationManagementResource
- java.lang.Object
-
- org.keycloak.services.resources.admin.AuthenticationManagementResource
-
public class AuthenticationManagementResource extends Object
- Author:
- Bill Burke
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.jboss.logging.Logger
logger
-
Constructor Summary
Constructors Constructor Description AuthenticationManagementResource(KeycloakSession session, AdminPermissionEvaluator auth, AdminEventBuilder adminEvent)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description javax.ws.rs.core.Response
addExecution(AuthenticationExecutionRepresentation execution)
Add new authentication executionjavax.ws.rs.core.Response
addExecutionFlow(String flowAlias, Map<String,String> data)
Add new flow with new execution to existing flowjavax.ws.rs.core.Response
addExecutionToFlow(String flowAlias, Map<String,String> data)
Add new authentication execution to a flowStream<Map<String,Object>>
buildProviderMetadata(Stream<ProviderFactory> factories)
javax.ws.rs.core.Response
copy(String flowAlias, Map<String,String> data)
Copy existing authentication flow under a new name The new name is given as 'newName' attribute of the passed JSON objectstatic void
copy(RealmModel realm, String newName, AuthenticationFlowModel from, AuthenticationFlowModel to)
static AuthenticationFlowModel
copyFlow(RealmModel realm, AuthenticationFlowModel flow, String newName)
javax.ws.rs.core.Response
createAuthenticatorConfig(AuthenticatorConfigRepresentation rep)
Deprecated.javax.ws.rs.core.Response
createFlow(AuthenticationFlowRepresentation flow)
Create a new authentication flowvoid
deleteFlow(String id)
Delete an authentication flowAuthenticatorConfigRepresentation
getAuthenticatorConfig(String id)
Get authenticator configurationAuthenticatorConfigRepresentation
getAuthenticatorConfig(String execution, String id)
Deprecated.Use rathergetAuthenticatorConfig(String)
AuthenticatorConfigInfoRepresentation
getAuthenticatorConfigDescription(String providerId)
Get authenticator provider's configuration descriptionStream<Map<String,Object>>
getAuthenticatorProviders()
Get authenticator providers Returns a stream of authenticator providers.Stream<Map<String,Object>>
getClientAuthenticatorProviders()
Get client authenticator providers Returns a stream of client authenticator providers.javax.ws.rs.core.Response
getExecution(String executionId)
Get Single Executionjavax.ws.rs.core.Response
getExecutions(String flowAlias)
Get authentication executions for a flowAuthenticationFlowRepresentation
getFlow(String id)
Get authentication flow for idStream<AuthenticationFlowRepresentation>
getFlows()
Get authentication flows Returns a stream of authentication flows.Stream<Map<String,Object>>
getFormActionProviders()
Get form action providers Returns a stream of form action providers.Stream<Map<String,Object>>
getFormProviders()
Get form providers Returns a stream of form providers.AuthenticationFlowModel
getParentFlow(AuthenticationExecutionModel model)
Map<String,List<ConfigPropertyRepresentation>>
getPerClientConfigDescription()
Get configuration descriptions for all clientsRequiredActionProviderRepresentation
getRequiredAction(String alias)
Get required action for aliasStream<RequiredActionProviderRepresentation>
getRequiredActions()
Get required actions Returns a stream of required actions.Stream<Map<String,String>>
getUnregisteredRequiredActions()
Get unregistered required actions Returns a stream of unregistered required actions.void
lowerPriority(String execution)
Lower execution's priorityvoid
lowerRequiredActionPriority(String alias)
Lower required action's priorityjavax.ws.rs.core.Response
newExecutionConfig(String execution, AuthenticatorConfigRepresentation json)
Update execution with new configurationvoid
raisePriority(String execution)
Raise execution's priorityvoid
raiseRequiredActionPriority(String alias)
Raise required action's priorityvoid
recurseExecutions(AuthenticationFlowModel flow, List<AuthenticationExecutionInfoRepresentation> result, int level)
void
registerRequiredAction(Map<String,String> data)
Register a new required actionsvoid
removeAuthenticatorConfig(String id)
Delete authenticator configurationvoid
removeExecution(String execution)
Delete executionvoid
removeRequiredAction(String alias)
Delete required actionstatic RequiredActionProviderRepresentation
toRepresentation(RequiredActionProviderModel model)
void
updateAuthenticatorConfig(String id, AuthenticatorConfigRepresentation rep)
Update authenticator configurationjavax.ws.rs.core.Response
updateExecutions(String flowAlias, AuthenticationExecutionInfoRepresentation rep)
Update authentication executions of a Flowjavax.ws.rs.core.Response
updateFlow(String id, AuthenticationFlowRepresentation flow)
Update an authentication flowvoid
updateRequiredAction(String alias, RequiredActionProviderRepresentation rep)
Update required action
-
-
-
Constructor Detail
-
AuthenticationManagementResource
public AuthenticationManagementResource(KeycloakSession session, AdminPermissionEvaluator auth, AdminEventBuilder adminEvent)
-
-
Method Detail
-
getFormProviders
@Path("/form-providers") @GET @Produces("application/json") public Stream<Map<String,Object>> getFormProviders()
Get form providers Returns a stream of form providers.
-
getAuthenticatorProviders
@Path("/authenticator-providers") @GET @Produces("application/json") public Stream<Map<String,Object>> getAuthenticatorProviders()
Get authenticator providers Returns a stream of authenticator providers.
-
getClientAuthenticatorProviders
@Path("/client-authenticator-providers") @GET @Produces("application/json") public Stream<Map<String,Object>> getClientAuthenticatorProviders()
Get client authenticator providers Returns a stream of client authenticator providers.
-
buildProviderMetadata
public Stream<Map<String,Object>> buildProviderMetadata(Stream<ProviderFactory> factories)
-
getFormActionProviders
@Path("/form-action-providers") @GET @Produces("application/json") public Stream<Map<String,Object>> getFormActionProviders()
Get form action providers Returns a stream of form action providers.
-
getFlows
@Path("/flows") @GET @Produces("application/json") public Stream<AuthenticationFlowRepresentation> getFlows()
Get authentication flows Returns a stream of authentication flows.
-
createFlow
@Path("/flows") @POST @Consumes("application/json") public javax.ws.rs.core.Response createFlow(AuthenticationFlowRepresentation flow)
Create a new authentication flow- Parameters:
flow
- Authentication flow representation- Returns:
-
getFlow
@Path("/flows/{id}") @GET @Produces("application/json") public AuthenticationFlowRepresentation getFlow(@PathParam("id") String id)
Get authentication flow for id- Parameters:
id
- Flow id- Returns:
-
updateFlow
@Path("/flows/{id}") @PUT @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response updateFlow(@PathParam("id") String id, AuthenticationFlowRepresentation flow)
Update an authentication flow- Parameters:
flow
- Authentication flow representation- Returns:
-
deleteFlow
@Path("/flows/{id}") @DELETE public void deleteFlow(@PathParam("id") String id)
Delete an authentication flow- Parameters:
id
- Flow id
-
copy
@Path("/flows/{flowAlias}/copy") @POST @Consumes("application/json") public javax.ws.rs.core.Response copy(@PathParam("flowAlias") String flowAlias, Map<String,String> data)
Copy existing authentication flow under a new name The new name is given as 'newName' attribute of the passed JSON object- Parameters:
flowAlias
- Name of the existing authentication flowdata
- JSON containing 'newName' attribute
-
copyFlow
public static AuthenticationFlowModel copyFlow(RealmModel realm, AuthenticationFlowModel flow, String newName)
-
copy
public static void copy(RealmModel realm, String newName, AuthenticationFlowModel from, AuthenticationFlowModel to)
-
addExecutionFlow
@Path("/flows/{flowAlias}/executions/flow") @POST @Consumes("application/json") public javax.ws.rs.core.Response addExecutionFlow(@PathParam("flowAlias") String flowAlias, Map<String,String> data)
Add new flow with new execution to existing flow- Parameters:
flowAlias
- Alias of parent authentication flowdata
- New authentication flow / execution JSON data containing 'alias', 'type', 'provider', and 'description' attributes
-
addExecutionToFlow
@Path("/flows/{flowAlias}/executions/execution") @POST @Consumes("application/json") public javax.ws.rs.core.Response addExecutionToFlow(@PathParam("flowAlias") String flowAlias, Map<String,String> data)
Add new authentication execution to a flow- Parameters:
flowAlias
- Alias of parent flowdata
- New execution JSON data containing 'provider' attribute
-
getExecutions
@Path("/flows/{flowAlias}/executions") @GET @Produces("application/json") public javax.ws.rs.core.Response getExecutions(@PathParam("flowAlias") String flowAlias)
Get authentication executions for a flow- Parameters:
flowAlias
- Flow alias
-
recurseExecutions
public void recurseExecutions(AuthenticationFlowModel flow, List<AuthenticationExecutionInfoRepresentation> result, int level)
-
updateExecutions
@Path("/flows/{flowAlias}/executions") @PUT @Produces("application/json") @Consumes("application/json") public javax.ws.rs.core.Response updateExecutions(@PathParam("flowAlias") String flowAlias, AuthenticationExecutionInfoRepresentation rep)
Update authentication executions of a Flow- Parameters:
flowAlias
- Flow aliasrep
- AuthenticationExecutionInfoRepresentation
-
getExecution
@Path("/executions/{executionId}") @GET @Produces("application/json") public javax.ws.rs.core.Response getExecution(@PathParam("executionId") String executionId)
Get Single Execution
-
addExecution
@Path("/executions") @POST @Consumes("application/json") public javax.ws.rs.core.Response addExecution(AuthenticationExecutionRepresentation execution)
Add new authentication execution- Parameters:
execution
- JSON model describing authentication execution
-
getParentFlow
public AuthenticationFlowModel getParentFlow(AuthenticationExecutionModel model)
-
raisePriority
@Path("/executions/{executionId}/raise-priority") @POST public void raisePriority(@PathParam("executionId") String execution)
Raise execution's priority- Parameters:
execution
- Execution id
-
lowerPriority
@Path("/executions/{executionId}/lower-priority") @POST public void lowerPriority(@PathParam("executionId") String execution)
Lower execution's priority- Parameters:
execution
- Execution id
-
removeExecution
@Path("/executions/{executionId}") @DELETE public void removeExecution(@PathParam("executionId") String execution)
Delete execution- Parameters:
execution
- Execution id
-
newExecutionConfig
@Path("/executions/{executionId}/config") @POST @Consumes("application/json") public javax.ws.rs.core.Response newExecutionConfig(@PathParam("executionId") String execution, AuthenticatorConfigRepresentation json)
Update execution with new configuration- Parameters:
execution
- Execution idjson
- JSON with new configuration- Returns:
-
getAuthenticatorConfig
@Path("/executions/{executionId}/config/{id}") @GET @Produces("application/json") public AuthenticatorConfigRepresentation getAuthenticatorConfig(@PathParam("executionId") String execution, @PathParam("id") String id)
Deprecated.Use rathergetAuthenticatorConfig(String)
Get execution's configuration- Parameters:
execution
- Execution idid
- Configuration id
-
getUnregisteredRequiredActions
@Path("unregistered-required-actions") @GET @Produces("application/json") public Stream<Map<String,String>> getUnregisteredRequiredActions()
Get unregistered required actions Returns a stream of unregistered required actions.
-
registerRequiredAction
@Path("register-required-action") @POST @Consumes("application/json") public void registerRequiredAction(Map<String,String> data)
Register a new required actions- Parameters:
data
- JSON containing 'providerId', and 'name' attributes.
-
getRequiredActions
@Path("required-actions") @GET @Produces("application/json") public Stream<RequiredActionProviderRepresentation> getRequiredActions()
Get required actions Returns a stream of required actions.
-
toRepresentation
public static RequiredActionProviderRepresentation toRepresentation(RequiredActionProviderModel model)
-
getRequiredAction
@Path("required-actions/{alias}") @GET @Produces("application/json") public RequiredActionProviderRepresentation getRequiredAction(@PathParam("alias") String alias)
Get required action for alias- Parameters:
alias
- Alias of required action
-
updateRequiredAction
@Path("required-actions/{alias}") @PUT @Consumes("application/json") public void updateRequiredAction(@PathParam("alias") String alias, RequiredActionProviderRepresentation rep)
Update required action- Parameters:
alias
- Alias of required actionrep
- JSON describing new state of required action
-
removeRequiredAction
@Path("required-actions/{alias}") @DELETE public void removeRequiredAction(@PathParam("alias") String alias)
Delete required action- Parameters:
alias
- Alias of required action
-
raiseRequiredActionPriority
@Path("required-actions/{alias}/raise-priority") @POST public void raiseRequiredActionPriority(@PathParam("alias") String alias)
Raise required action's priority- Parameters:
alias
- Alias of required action
-
lowerRequiredActionPriority
@Path("/required-actions/{alias}/lower-priority") @POST public void lowerRequiredActionPriority(@PathParam("alias") String alias)
Lower required action's priority- Parameters:
alias
- Alias of required action
-
getAuthenticatorConfigDescription
@Path("config-description/{providerId}") @GET @Produces("application/json") public AuthenticatorConfigInfoRepresentation getAuthenticatorConfigDescription(@PathParam("providerId") String providerId)
Get authenticator provider's configuration description
-
getPerClientConfigDescription
@Path("per-client-config-description") @GET @Produces("application/json") public Map<String,List<ConfigPropertyRepresentation>> getPerClientConfigDescription()
Get configuration descriptions for all clients
-
createAuthenticatorConfig
@Path("config") @POST @Consumes("application/json") public javax.ws.rs.core.Response createAuthenticatorConfig(AuthenticatorConfigRepresentation rep)
Deprecated.Create new authenticator configuration- Parameters:
rep
- JSON describing new authenticator configuration
-
getAuthenticatorConfig
@Path("config/{id}") @GET @Produces("application/json") public AuthenticatorConfigRepresentation getAuthenticatorConfig(@PathParam("id") String id)
Get authenticator configuration- Parameters:
id
- Configuration id
-
removeAuthenticatorConfig
@Path("config/{id}") @DELETE public void removeAuthenticatorConfig(@PathParam("id") String id)
Delete authenticator configuration- Parameters:
id
- Configuration id
-
updateAuthenticatorConfig
@Path("config/{id}") @PUT @Consumes("application/json") public void updateAuthenticatorConfig(@PathParam("id") String id, AuthenticatorConfigRepresentation rep)
Update authenticator configuration- Parameters:
id
- Configuration idrep
- JSON describing new state of authenticator configuration
-
-