41 lines
1.1 KiB
Java
41 lines
1.1 KiB
Java
// original author: radek gruchalski
|
|
// https://gruchalski.com/posts/2021-06-06-extending-keycloak-required-action-providers/
|
|
|
|
package com.gruchalski.idp.spi.actions;
|
|
|
|
import org.keycloak.Config;
|
|
import org.keycloak.authentication.RequiredActionFactory;
|
|
import org.keycloak.authentication.RequiredActionProvider;
|
|
import org.keycloak.models.KeycloakSession;
|
|
import org.keycloak.models.KeycloakSessionFactory;
|
|
|
|
public class UserMustBeApprovedActionFactory implements RequiredActionFactory {
|
|
|
|
private static final UserMustBeApprovedAction SINGLETON = new UserMustBeApprovedAction();
|
|
|
|
@Override
|
|
public RequiredActionProvider create(KeycloakSession session) {
|
|
return SINGLETON;
|
|
}
|
|
|
|
@Override
|
|
public void init(Config.Scope scope) {}
|
|
|
|
@Override
|
|
public void postInit(KeycloakSessionFactory keycloakSessionFactory) {}
|
|
|
|
@Override
|
|
public void close() {}
|
|
|
|
@Override
|
|
public String getId() {
|
|
return UserMustBeApprovedAction.PROVIDER_ID;
|
|
}
|
|
|
|
@Override
|
|
public String getDisplayText() {
|
|
return "User must be approved by an admin.";
|
|
}
|
|
}
|
|
|