SYMBOL INDEX (2509 symbols across 362 files) FILE: apps/account-svc/.mvn/wrapper/MavenWrapperDownloader.java class MavenWrapperDownloader (line 30) | public final class MavenWrapperDownloader { method main (line 35) | public static void main(String[] args) { method downloadFileFromURL (line 59) | private static void downloadFileFromURL(URL wrapperUrl, Path wrapperJa... method log (line 78) | private static void log(String msg) { FILE: apps/account-svc/src/main/java/com/thomasdarimont/keycloak/training/accounts/User.java class User (line 9) | @Data method User (line 24) | public User(String id, String username, String password, String email,... method getPassword (line 37) | @JsonIgnore FILE: apps/account-svc/src/main/java/com/thomasdarimont/keycloak/training/accounts/UserRepository.java class UserRepository (line 14) | @Singleton method UserRepository (line 20) | public UserRepository() { method newUser (line 30) | private static User newUser(String idSeed, String username, String pas... method findAll (line 34) | public List findAll() { method count (line 39) | public int count() { method findById (line 44) | public User findById(String id) { method findByUsernameOrEmail (line 49) | public User findByUsernameOrEmail(String username) { method getByUsername (line 54) | public Optional getByUsername(String username) { method getByEmail (line 59) | public Optional getByEmail(String email) { method findUsers (line 64) | List findUsers(String query) { method validatePassword (line 69) | public boolean validatePassword(String id, String password) { method updatePassword (line 74) | public boolean updatePassword(String id, String password) { method createUser (line 80) | public void createUser(User user) { method updateUser (line 87) | public void updateUser(User user) { method removeUser (line 96) | public boolean removeUser(String id) { method search (line 101) | public List search(String search, Integer firstResult, Integer m... method searchForCount (line 106) | public int searchForCount(String search, Integer firstResult, Integer ... method searchInternal (line 111) | private static Stream searchInternal(String search, Integer firs... FILE: apps/account-svc/src/main/java/com/thomasdarimont/keycloak/training/accounts/UserResource.java class UserResource (line 17) | @JBossLog method userList (line 26) | @GET method userById (line 31) | @GET method lookupUserByUsername (line 38) | @POST method lookupUserByEmail (line 44) | @POST method verifyCredentials (line 50) | @POST method searchUsers (line 58) | @POST method verify (line 72) | private VerifyCredentialsOutput verify(String userId, VerifyCredential... class UserLookupInput (line 76) | @Data class UserSearchInput (line 83) | @Data type UserSearchOption (line 92) | public enum UserSearchOption { class UserSearchOutput (line 99) | @Data class VerifyCredentialsInput (line 107) | @Data class VerifyCredentialsOutput (line 112) | @Data FILE: apps/acme-webapp-saml-node-express/src/config.js constant IDP_ISSUER (line 3) | const IDP_ISSUER = process.env.IDP_ISSUER || "https://id.acme.test:8443/... constant PORT (line 4) | const PORT = process.env.PORT || 4723; constant HOSTNAME (line 5) | const HOSTNAME = process.env.HOSTNAME || "apps.acme.test" + (PORT === 44... constant SP_ISSUER (line 6) | const SP_ISSUER = process.env.SP_ISSUER || "acme-webapp-saml-node-expre... constant TLS_CERT_FILE (line 7) | const TLS_CERT_FILE = process.env.TLS_CERT_FILE || '../../config/stage/d... constant TLS_KEY_FILE (line 8) | const TLS_KEY_FILE = process.env.TLS_KEY_FILE || '../../config/stage/dev... constant LOG_LEVEL (line 9) | const LOG_LEVEL = process.env.LOG_LEVEL || 'info'; constant LOG_FORMAT (line 10) | const LOG_FORMAT = process.env.LOG_FORMAT || 'json'; constant READINESS_PROBE_DELAY (line 12) | const READINESS_PROBE_DELAY = process.env.READINESS_PROBE_DELAY || 1000; constant SESSION_SECRET (line 14) | const SESSION_SECRET = process.env.SECRET || 'keyboard cat'; constant SAML_SP_KEY (line 16) | let SAML_SP_KEY = process.env.SAML_SP_KEY || fs.readFileSync("sp.key.pem... constant SAML_IDP_CERT (line 18) | let SAML_IDP_CERT = process.env.SAML_IDP_CERT; FILE: apps/acme-webapp-saml-node-express/src/express.js function createExpressApp (line 7) | function createExpressApp(config, LOG) { function configureSession (line 23) | function configureSession(app, config) { function configureSaml (line 34) | function configureSaml(app, config, LOG) { function configureTemplateEngine (line 109) | function configureTemplateEngine(app, config) { function configureRoutes (line 115) | function configureRoutes(app, config) { FILE: apps/acme-webapp-saml-node-express/src/index.js constant LOG (line 9) | const LOG = initLogging(config); FILE: apps/acme-webapp-saml-node-express/src/logging.js function initLogging (line 3) | function initLogging(config) { FILE: apps/acme-webapp-saml-node-express/src/server.js function createServer (line 7) | function createServer(app, config, LOG) { function configureGracefulShutdown (line 27) | function configureGracefulShutdown(httpsServer, config, LOG) { FILE: apps/backend-api-dnc/api/Controllers/UsersController.cs class UsersController (line 6) | [ApiController] method UsersController (line 15) | public UsersController(ILogger logger, IHttpContextAc... method Me (line 21) | [Authorize] FILE: apps/backend-api-dnc/api/JwtBearerOptions.cs class JwtBearerOptions (line 6) | public class JwtBearerOptions FILE: apps/backend-api-micronaut/.mvn/wrapper/MavenWrapperDownloader.java class MavenWrapperDownloader (line 28) | public class MavenWrapperDownloader { method main (line 55) | public static void main(String args[]) { method downloadFileFromURL (line 104) | private static void downloadFileFromURL(String urlString, File destina... FILE: apps/backend-api-micronaut/src/main/java/com/acme/backend/micronaut/Application.java class Application (line 5) | public class Application { method main (line 7) | public static void main(String[] args) { FILE: apps/backend-api-micronaut/src/main/java/com/acme/backend/micronaut/api/UsersResource.java class UsersResource (line 17) | @Secured(IS_AUTHENTICATED) method me (line 23) | @Get("/me") FILE: apps/backend-api-node-express/src/api.js function createApiEndpoints (line 6) | function createApiEndpoints(app, config, LOG) { FILE: apps/backend-api-node-express/src/config.js constant ISSUER (line 1) | const ISSUER = process.env.ISSUER || "https://id.acme.test:8443/auth/rea... constant PORT (line 2) | const PORT = process.env.PORT || 4743; constant CORS_ALLOWED_ORIGINS (line 3) | const CORS_ALLOWED_ORIGINS = process.env.CORS_ALLOWED_ORIGINS || 'https:... constant CORS_ALLOWED_METHODS (line 4) | const CORS_ALLOWED_METHODS = process.env.CORS_ALLOWED_METHODS || 'GET'; constant TLS_CERT (line 5) | const TLS_CERT = process.env.TLS_CERT || '../../config/stage/dev/tls/acm... constant TLS_KEY (line 6) | const TLS_KEY = process.env.TLS_KEY || '../../config/stage/dev/tls/acme.... constant LOG_LEVEL (line 7) | const LOG_LEVEL = process.env.LOG_LEVEL || 'info'; constant LOG_FORMAT (line 8) | const LOG_FORMAT = process.env.LOG_FORMAT || 'json'; constant READINESS_PROBE_DELAY (line 10) | const READINESS_PROBE_DELAY = process.env.READINESS_PROBE_DELAY || 1000; FILE: apps/backend-api-node-express/src/express.js function createExpressApp (line 6) | function createExpressApp(config, LOG) { function configureCors (line 19) | function configureCors(app, config, LOG) { function configureJwtAuthorization (line 32) | function configureJwtAuthorization(app, config, LOG) { FILE: apps/backend-api-node-express/src/index.js constant LOG (line 10) | const LOG = initLogging(config); FILE: apps/backend-api-node-express/src/logging.js function initLogging (line 3) | function initLogging(config) { FILE: apps/backend-api-node-express/src/server.js function createServer (line 7) | function createServer(app, config, LOG) { function configureGracefulShutdown (line 26) | function configureGracefulShutdown(httpsServer, config, LOG) { FILE: apps/backend-api-quarkus/src/main/java/com/acme/backend/quarkus/users/UsersResource.java class UsersResource (line 22) | @Path("/api/users") method me (line 42) | @GET method claims (line 62) | @GET FILE: apps/backend-api-rust-actix/src/api/me_info.rs type MeInfo (line 8) | struct MeInfo { type ErrorInfo (line 15) | struct ErrorInfo { function handle_me_info (line 20) | pub async fn handle_me_info(user: AuthenticatedUser) -> Htt... FILE: apps/backend-api-rust-actix/src/config.rs type Config (line 2) | pub struct Config { method from_environment_with_defaults (line 12) | pub fn from_environment_with_defaults() -> Self { FILE: apps/backend-api-rust-actix/src/main.rs function main (line 11) | async fn main() -> std::io::Result<()> { FILE: apps/backend-api-rust-actix/src/middleware/cors.rs function create_cors_config (line 4) | pub fn create_cors_config(allowed_origin: String) -> Cors { FILE: apps/backend-api-rust-actix/src/middleware/jwt_auth.rs type FoundClaims (line 8) | pub struct FoundClaims { method has_scope (line 21) | pub fn has_scope(&self, scope: &str) -> bool { function create_oidc_jwt_validator (line 26) | pub async fn create_oidc_jwt_validator(issuer: String) -> OIDCValidatorC... FILE: apps/backend-api-rust-actix/src/middleware/ssl.rs function create_ssl_acceptor_builder (line 3) | pub fn create_ssl_acceptor_builder(cert_location: &str, key_location: &s... FILE: apps/backend-api-rust-rocket/src/domain/user.rs type User (line 1) | pub struct User { FILE: apps/backend-api-rust-rocket/src/main.rs type MeInfo (line 24) | pub struct MeInfo { function options_me_info (line 31) | fn options_me_info() {} function get_me_info (line 34) | fn get_me_info(user: User) -> Json { function main (line 47) | async fn main() -> Result<(), Box> { FILE: apps/backend-api-rust-rocket/src/middleware/auth/jwt/auth.rs type CleanupFn (line 8) | type CleanupFn = Box; type JwtAuth (line 10) | pub struct JwtAuth { method new (line 24) | pub fn new() -> JwtAuth { method verify (line 43) | pub fn verify(&self, token: &str) -> Option> { method start_key_update (line 48) | fn start_key_update(&mut self) { method drop (line 16) | fn drop(&mut self) { method default (line 67) | fn default() -> Self { FILE: apps/backend-api-rust-rocket/src/middleware/auth/jwt/claims.rs type Claims (line 4) | pub type Claims = HashMap; FILE: apps/backend-api-rust-rocket/src/middleware/auth/jwt/config.rs type JwtConfig (line 4) | pub struct JwtConfig { function get_config (line 11) | pub fn get_config() -> JwtConfig { FILE: apps/backend-api-rust-rocket/src/middleware/auth/jwt/get_max_age.rs type MaxAgeParseError (line 5) | pub enum MaxAgeParseError { function get_max_age (line 13) | pub fn get_max_age(response: &Response) -> Result Result Result Result Result> { FILE: apps/backend-api-rust-rocket/src/middleware/auth/jwt/verifier.rs type VerificationError (line 10) | enum VerificationError { type JwtVerifier (line 16) | pub struct JwtVerifier { method new (line 30) | pub fn new(keys: Vec) -> JwtVerifier { method verify (line 37) | pub fn verify(&self, token: &str) -> Option> { method set_keys (line 54) | pub fn set_keys(&mut self, keys: Vec) { method get_key (line 58) | fn get_key(&self, key_id: String) -> Option<&JwkKey> { method decode_token_with_key (line 62) | fn decode_token_with_key( function keys_to_map (line 21) | fn keys_to_map(keys: Vec) -> HashMap { FILE: apps/backend-api-rust-rocket/src/middleware/auth/jwt_auth_request_guard.rs type AuthError (line 11) | pub enum AuthError { function get_token_from_header (line 18) | fn get_token_from_header(header: &str) -> Option { function verify_token (line 27) | fn verify_token(token: &str, auth: &JwtAuth) -> request::Outcome request... type Error (line 74) | type Error = AuthError; method from_request (line 76) | async fn from_request(request: &'r Request<'_>) -> request::Outcome Info { method on_response (line 19) | async fn on_response<'r>(&self, _request: &'r Request<'_>, response: &mu... FILE: apps/backend-api-rust-rocket/src/middleware/logging/logging.rs function init_logging (line 7) | pub fn init_logging() { FILE: apps/backend-api-rust-rocket/src/middleware/mod.rs function expect_env_var (line 8) | pub fn expect_env_var(name: &str, default: &str) -> String { function expect_env_var (line 13) | pub fn expect_env_var(name: &str, _default: &str) -> String { FILE: apps/backend-api-rust-rocket/src/support/scheduling/use_repeating_job.rs type Delay (line 5) | type Delay = Duration; type Cancel (line 6) | type Cancel = Box; function use_repeating_job (line 10) | pub fn use_repeating_job(job: F) -> Cancel FILE: apps/backend-api-rust-rocket/tests/fetch_keys.rs function assert_is_valid_key (line 5) | fn assert_is_valid_key(key: &JwkKey) { function test_fetch_keys (line 14) | fn test_fetch_keys() { FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/BackendApiSpringbootReactiveApp.java class BackendApiSpringbootReactiveApp (line 6) | @SpringBootApplication method main (line 9) | public static void main(String[] args) { FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/config/AcmeServiceProperties.java class AcmeServiceProperties (line 10) | @Getter class KeycloakJwtProperties (line 22) | @Getter FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/config/JwtSecurityConfig.java class JwtSecurityConfig (line 28) | @Configuration method jwtDecoder (line 38) | @Bean method defaultTokenValidator (line 60) | @Bean method keycloakJwtAuthenticationConverter (line 70) | @Bean method keycloakGrantedAuthoritiesConverter (line 75) | @Bean FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/config/MethodSecurityConfig.java class MethodSecurityConfig (line 15) | @Configuration method keycloakAuthoritiesMapper (line 20) | @Bean FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/config/WebFluxConfig.java class WebFluxConfig (line 8) | @Configuration method addCorsMappings (line 12) | @Override FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/config/WebFluxRoutes.java class WebFluxRoutes (line 14) | @Configuration method route (line 17) | @Bean FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/config/WebSecurityConfig.java class WebSecurityConfig (line 19) | @EnableWebFluxSecurity method springSecurityFilterChain (line 35) | @Bean FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/support/keycloak/KeycloakAudienceValidator.java class KeycloakAudienceValidator (line 13) | @Component method validate (line 19) | @Override FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/support/keycloak/KeycloakGrantedAuthoritiesConverter.java class KeycloakGrantedAuthoritiesConverter (line 24) | public class KeycloakGrantedAuthoritiesConverter implements Converter mapKeycloakRolesToAuthorities(S... method getRealmRolesFrom (line 68) | protected Set getRealmRolesFrom(Jwt jwt) { method getClientRolesFrom (line 85) | protected Set getClientRolesFrom(Jwt jwt, String clientId) { method normalizeRole (line 107) | private String normalizeRole(String role) { FILE: apps/backend-api-springboot-reactive/src/main/java/com/acme/backend/springreactive/support/keycloak/KeycloakJwtAuthenticationConverter.java class KeycloakJwtAuthenticationConverter (line 18) | @RequiredArgsConstructor method KeycloakJwtAuthenticationConverter (line 23) | public KeycloakJwtAuthenticationConverter(Converter me(ServerRequest request) { FILE: apps/backend-api-springboot-reactive/src/test/java/com/acme/backend/springreactive/BackendApiSpringbootReactiveAppTests.java class BackendApiSpringbootReactiveAppTests (line 6) | @SpringBootTest method contextLoads (line 9) | @Test FILE: apps/backend-api-springboot/.mvn/wrapper/MavenWrapperDownloader.java class MavenWrapperDownloader (line 21) | public class MavenWrapperDownloader { method main (line 48) | public static void main(String args[]) { method downloadFileFromURL (line 97) | private static void downloadFileFromURL(String urlString, File destina... FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/BackendApiSpringbootApp.java class BackendApiSpringbootApp (line 7) | @SpringBootApplication method main (line 11) | public static void main(String[] args) { FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/config/AcmeServiceProperties.java class AcmeServiceProperties (line 10) | @Getter class KeycloakJwtProperties (line 22) | @Getter FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/config/JwtSecurityConfig.java class JwtSecurityConfig (line 28) | @Configuration method jwtDecoder (line 38) | @Bean method defaultTokenValidator (line 60) | @Bean method keycloakJwtAuthenticationConverter (line 70) | @Bean method keycloakGrantedAuthoritiesConverter (line 75) | @Bean FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/config/MethodSecurityConfig.java class MethodSecurityConfig (line 20) | @Configuration method createExpressionHandler (line 29) | @Override method keycloakAuthoritiesMapper (line 39) | @Bean FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/config/WebSecurityConfig.java class WebSecurityConfig (line 22) | @Configuration method filterChain (line 41) | @Bean method accessController (line 62) | @Bean method configureCors (line 72) | protected void configureCors(CorsConfigurer cors) { FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/support/access/AccessController.java class AccessController (line 12) | @Slf4j method checkAccess (line 15) | public boolean checkAccess() { FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/support/keycloak/KeycloakAudienceValidator.java class KeycloakAudienceValidator (line 13) | @Component method validate (line 19) | @Override FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/support/keycloak/KeycloakGrantedAuthoritiesConverter.java class KeycloakGrantedAuthoritiesConverter (line 24) | public class KeycloakGrantedAuthoritiesConverter implements Converter mapKeycloakRolesToAuthorities(S... method getRealmRolesFrom (line 68) | protected Set getRealmRolesFrom(Jwt jwt) { method getClientRolesFrom (line 85) | protected Set getClientRolesFrom(Jwt jwt, String clientId) { method normalizeRole (line 107) | private String normalizeRole(String role) { FILE: apps/backend-api-springboot/src/main/java/com/acme/backend/springboot/users/support/keycloak/KeycloakJwtAuthenticationConverter.java class KeycloakJwtAuthenticationConverter (line 17) | @RequiredArgsConstructor method KeycloakJwtAuthenticationConverter (line 22) | public KeycloakJwtAuthenticationConverter(Converter cors) { FILE: apps/backend-api-springboot3/src/main/java/com/acme/backend/springboot/users/support/access/AccessController.java class AccessController (line 13) | @Slf4j method checkAccess (line 19) | public static AuthorizationDecision checkAccess(Supplier mapKeycloakRolesToAuthorities(S... method getRealmRolesFrom (line 68) | protected Set getRealmRolesFrom(Jwt jwt) { method getClientRolesFrom (line 85) | protected Set getClientRolesFrom(Jwt jwt, String clientId) { method normalizeRole (line 107) | private String normalizeRole(String role) { FILE: apps/backend-api-springboot3/src/main/java/com/acme/backend/springboot/users/support/keycloak/KeycloakJwtAuthenticationConverter.java class KeycloakJwtAuthenticationConverter (line 17) | @RequiredArgsConstructor method KeycloakJwtAuthenticationConverter (line 22) | public KeycloakJwtAuthenticationConverter(Converter getUserInfoFromAuthority(Authentication au... method getUserInfoFromRemote (line 43) | private UserInfo getUserInfoFromRemote() { class UserInfo (line 47) | static class UserInfo extends LinkedHashMap { FILE: apps/bff-springboot/src/main/java/com/github/thomasdarimont/apps/bff/config/OAuth2RestTemplateConfig.java class OAuth2RestTemplateConfig (line 11) | @Configuration method oauthRestTemplate (line 20) | @Bean FILE: apps/bff-springboot/src/main/java/com/github/thomasdarimont/apps/bff/config/SessionConfig.java class SessionConfig (line 9) | @Configuration method connectionFactory (line 13) | @Bean FILE: apps/bff-springboot/src/main/java/com/github/thomasdarimont/apps/bff/config/WebSecurityConfig.java class WebSecurityConfig (line 23) | @Configuration method filterChain (line 29) | @Bean method authorizationRequestRepository (line 65) | @Bean method userAuthoritiesMapper (line 70) | private GrantedAuthoritiesMapper userAuthoritiesMapper() { FILE: apps/bff-springboot/src/main/java/com/github/thomasdarimont/apps/bff/config/keycloak/KeycloakLogoutHandler.java class KeycloakLogoutHandler (line 13) | @Slf4j method logout (line 17) | @Override method generateAppUri (line 40) | private String generateAppUri(HttpServletRequest request) { method createKeycloakLogoutUrl (line 50) | private String createKeycloakLogoutUrl(String issuerUri, String idToke... FILE: apps/bff-springboot/src/main/java/com/github/thomasdarimont/apps/bff/oauth/TokenAccessor.java class TokenAccessor (line 22) | @Slf4j method getAccessTokenForCurrentUser (line 37) | public OAuth2AccessToken getAccessTokenForCurrentUser() { method getAccessToken (line 41) | public OAuth2AccessToken getAccessToken(Authentication auth) { method getRefreshToken (line 61) | public OAuth2RefreshToken getRefreshToken(Authentication auth) { method isAccessTokenStillValid (line 70) | private boolean isAccessTokenStillValid(OAuth2AccessToken accessToken) { method getOAuth2AuthorizedClient (line 82) | private OAuth2AuthorizedClient getOAuth2AuthorizedClient(Authenticatio... FILE: apps/bff-springboot/src/main/java/com/github/thomasdarimont/apps/bff/oauth/TokenIntrospector.java class TokenIntrospector (line 19) | @Component method introspectToken (line 27) | public IntrospectionResult introspectToken(Authentication auth) { class IntrospectionResult (line 65) | @Data method setDataEntry (line 72) | @JsonAnySetter FILE: apps/bff-springboot/src/main/java/com/github/thomasdarimont/apps/bff/oauth/TokenRefresher.java class TokenRefresher (line 29) | @Slf4j method refreshTokens (line 36) | public OAuth2AccessToken refreshTokens(OAuth2AuthorizedClient client) { class AccessTokenResponse (line 90) | @Data method setMetadata (line 105) | @JsonAnySetter FILE: apps/bff-springboot/src/main/java/com/github/thomasdarimont/apps/bff/web/UiResource.java class UiResource (line 8) | @Controller method index (line 12) | @GetMapping("/") FILE: apps/bff-springboot/src/main/resources/static/app/app.js function qs (line 3) | function qs(selector) { function qsa (line 7) | function qsa(selector) { function callApi (line 11) | function callApi(url, requestOptions, onError) { FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/Bff3App.java class Bff3App (line 6) | @SpringBootApplication method main (line 9) | public static void main(String[] args) { FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/api/UsersResource.java class UsersResource (line 17) | @RestController method UsersResource (line 23) | public UsersResource(@Qualifier("oauth") RestTemplate oauthRestTemplat... method userInfo (line 27) | @GetMapping("/me") method getUserInfoFromAuthority (line 34) | private Map getUserInfoFromAuthority(Authentication au... method getUserInfoFromRemote (line 44) | private UserInfo getUserInfoFromRemote(Authentication auth) { class UserInfo (line 51) | static class UserInfo extends LinkedHashMap { FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/config/OAuth2RestTemplateConfig.java class OAuth2RestTemplateConfig (line 11) | @Configuration method oauthRestTemplate (line 20) | @Bean FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/config/SessionConfig.java class SessionConfig (line 9) | @Configuration method connectionFactory (line 13) | @Bean FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/config/WebSecurityConfig.java class WebSecurityConfig (line 33) | @Configuration method filterChain (line 39) | @Bean method authorizationRequestRepository (line 94) | @Bean method authorizedClientRepository (line 99) | @Bean method oAuth2AuthorizedClientService (line 104) | @Bean method userAuthoritiesMapper (line 112) | private GrantedAuthoritiesMapper userAuthoritiesMapper() { FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/config/keycloak/KeycloakLogoutHandler.java class KeycloakLogoutHandler (line 14) | @Slf4j method logout (line 18) | @Override method generateAppUri (line 41) | private String generateAppUri(HttpServletRequest request) { method createKeycloakLogoutUrl (line 51) | private String createKeycloakLogoutUrl(String issuerUri, String idToke... FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/oauth/TokenAccessor.java class TokenAccessor (line 22) | @Slf4j method TokenAccessor (line 32) | public TokenAccessor(OAuth2AuthorizedClientService authorizedClientSer... method getAccessTokenForCurrentUser (line 41) | public OAuth2AccessToken getAccessTokenForCurrentUser() { method getAccessToken (line 45) | public OAuth2AccessToken getAccessToken(Authentication auth) { method getRefreshToken (line 65) | public OAuth2RefreshToken getRefreshToken(Authentication auth) { method isAccessTokenStillValid (line 74) | private boolean isAccessTokenStillValid(OAuth2AccessToken accessToken) { method getOAuth2AuthorizedClient (line 86) | private OAuth2AuthorizedClient getOAuth2AuthorizedClient(Authenticatio... FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/oauth/TokenIntrospector.java class TokenIntrospector (line 21) | @Component method introspectToken (line 29) | public IntrospectionResult introspectToken(Authentication auth, HttpSe... class IntrospectionResult (line 68) | @Data method setDataEntry (line 75) | @JsonAnySetter FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/oauth/TokenRefresher.java class TokenRefresher (line 28) | @Slf4j method TokenRefresher (line 34) | public TokenRefresher(OAuth2AuthorizedClientService authorizedClientSe... method refreshTokens (line 38) | public OAuth2AccessToken refreshTokens(OAuth2AuthorizedClient client) { class AccessTokenResponse (line 93) | @Data method setMetadata (line 108) | @JsonAnySetter FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/support/HttpServletRequestUtils.java class HttpServletRequestUtils (line 10) | public class HttpServletRequestUtils { method getCurrentHttpServletRequest (line 12) | public static Optional getCurrentHttpServletReques... method getCurrentHttpSession (line 17) | public static Optional getCurrentHttpSession(boolean crea... FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/support/HttpSessionOAuth2AuthorizedClientService.java class HttpSessionOAuth2AuthorizedClientService (line 8) | @RequiredArgsConstructor method loadAuthorizedClient (line 11) | @Override method saveAuthorizedClient (line 19) | @Override method removeAuthorizedClient (line 26) | @Override FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/web/AuthResource.java class AuthResource (line 19) | @RestController method checkSession (line 27) | @GetMapping("/check-session") class IntrospectionResponse (line 41) | @Data method setDataEntry (line 48) | @JsonAnySetter FILE: apps/bff-springboot3/src/main/java/com/github/thomasdarimont/apps/bff3/web/UiResource.java class UiResource (line 8) | @Controller method index (line 12) | @GetMapping("/") FILE: apps/bff-springboot3/src/main/resources/static/app/app.js function qs (line 3) | function qs(selector) { function qsa (line 7) | function qsa(selector) { function callApi (line 11) | function callApi(url, requestOptions, onError) { FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/WebAppSpringBoot.java class WebAppSpringBoot (line 6) | @SpringBootApplication method main (line 9) | public static void main(String[] args) { FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/config/KeycloakWebClientConfig.java class KeycloakWebClientConfig (line 16) | @Configuration method keycloakWebClient (line 19) | @Bean method errorHandler (line 40) | public static ExchangeFilterFunction errorHandler() { FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/config/OidcUserServiceConfig.java class OidcUserServiceConfig (line 7) | @Configuration method keycloakUserService (line 10) | @Bean FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/config/WebSecurityConfig.java class WebSecurityConfig (line 24) | @Configuration method filterChain (line 30) | @Bean method authorizationRequestRepository (line 70) | @Bean method userAuthoritiesMapper (line 75) | private GrantedAuthoritiesMapper userAuthoritiesMapper() { FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/domain/ApplicationEntry.java class ApplicationEntry (line 5) | @Data FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/domain/CredentialEntry.java class CredentialEntry (line 5) | @Data FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/domain/SettingEntry.java class SettingEntry (line 5) | @Data FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/domain/UserProfile.java class UserProfile (line 5) | @Data FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/OAuth2AuthorizedClientAccessor.java class OAuth2AuthorizedClientAccessor (line 12) | @Component method getOAuth2AuthorizedClient (line 21) | public OAuth2AuthorizedClient getOAuth2AuthorizedClient(Authentication... FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/TokenAccessor.java class TokenAccessor (line 12) | @Component method getAccessTokenForCurrentUser (line 18) | public OAuth2AccessToken getAccessTokenForCurrentUser() { method getAccessToken (line 22) | public OAuth2AccessToken getAccessToken(Authentication auth) { FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/TokenIntrospector.java class TokenIntrospector (line 20) | @Component method introspectToken (line 28) | public IntrospectionResult introspectToken(Authentication auth) { class IntrospectionResult (line 66) | @Data method setDataEntry (line 73) | @JsonAnySetter FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/DefaultKeycloakClient.java class DefaultKeycloakClient (line 22) | @Service method DefaultKeycloakClient (line 41) | public DefaultKeycloakClient(@Qualifier("keycloakWebClient") WebClient... method introspect (line 58) | @Override method userInfo (line 75) | @Override FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/KeycloakClient.java type KeycloakClient (line 6) | public interface KeycloakClient { method introspect (line 8) | KeycloakIntrospectResponse introspect(String token); method userInfo (line 10) | KeycloakUserInfo userInfo(OAuth2AuthorizedClient authorizedClient, Oid... FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/KeycloakIntrospectResponse.java class KeycloakIntrospectResponse (line 8) | @Data FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/KeycloakServiceException.java class KeycloakServiceException (line 5) | @Data FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/KeycloakUserInfo.java class KeycloakUserInfo (line 7) | @Data FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/security/KeycloakLogoutHandler.java class KeycloakLogoutHandler (line 13) | @Slf4j method logout (line 17) | @Override method generateAppUri (line 40) | private String generateAppUri(HttpServletRequest request) { method createKeycloakLogoutUrl (line 50) | private String createKeycloakLogoutUrl(String issuerUri, String idToke... FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/web/AuthController.java class AuthController (line 25) | @RestController method register (line 42) | @GetMapping("/auth/register") method checkSession (line 61) | @GetMapping("/auth/check-session") class IntrospectionResponse (line 74) | @Data method setDataEntry (line 81) | @JsonAnySetter FILE: apps/frontend-webapp-springboot/src/main/java/com/github/thomasdarimont/keycloak/webapp/web/UiController.java class UiController (line 21) | @Controller method showIndex (line 29) | @GetMapping("/") method showProfile (line 34) | @GetMapping("/profile") method buildUserProfile (line 50) | private UserProfile buildUserProfile(OAuth2AuthorizedClient oAuth2Auth... method showSettings (line 61) | @GetMapping("/settings") method showSecurity (line 87) | @GetMapping("/security") method showApplications (line 113) | @GetMapping("/applications") FILE: apps/frontend-webapp-springboot/src/test/java/com/github/thomasdarimont/keycloak/cac/WebApplicationTestsSpringBoot.java class WebApplicationTestsSpringBoot (line 6) | @SpringBootTest method contextLoads (line 9) | @Test FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/WebAppSpringBoot3.java class WebAppSpringBoot3 (line 6) | @SpringBootApplication method main (line 9) | public static void main(String[] args) { FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/config/KeycloakWebClientConfig.java class KeycloakWebClientConfig (line 25) | @Configuration method keycloakWebClient (line 28) | @Bean class OAuth2ClientInterceptor (line 46) | public static class OAuth2ClientInterceptor implements ClientHttpReque... method OAuth2ClientInterceptor (line 51) | public OAuth2ClientInterceptor(OAuth2AuthorizedClientManager manager... method intercept (line 56) | @Override method initialize (line 62) | @Override method getBearerToken (line 67) | private String getBearerToken() { FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/config/OidcUserServiceConfig.java class OidcUserServiceConfig (line 7) | @Configuration method keycloakUserService (line 10) | @Bean FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/config/WebSecurityConfig.java class WebSecurityConfig (line 37) | @Slf4j method filterChain (line 44) | @Bean method customizeTokenEndpointRequest (line 81) | private static void customizeTokenEndpointRequest(OAuth2LoginConfigure... method createCustomAccessTokenResponseClientNew (line 92) | private static OAuth2AccessTokenResponseClient getCurrentHttpServletReques... method getCurrentHttpServletResponse (line 18) | public static Optional getCurrentHttpServletRespo... method getCurrentHttpSession (line 23) | public static Optional getCurrentHttpSession(boolean crea... FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/HttpSessionOAuth2AuthorizedClientService.java class HttpSessionOAuth2AuthorizedClientService (line 13) | @RequiredArgsConstructor method loadAuthorizedClient (line 18) | @Override method saveAuthorizedClient (line 24) | @Override method removeAuthorizedClient (line 31) | @Override FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/TokenAccessor.java class TokenAccessor (line 12) | @Component method getAccessTokenForCurrentUser (line 18) | public OAuth2AccessToken getAccessTokenForCurrentUser() { method getAccessToken (line 22) | public OAuth2AccessToken getAccessToken(Authentication auth) { FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/TokenIntrospector.java class TokenIntrospector (line 20) | @Component method introspectToken (line 28) | public IntrospectionResult introspectToken(Authentication auth) { class IntrospectionResult (line 66) | @Data method setDataEntry (line 73) | @JsonAnySetter FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/DefaultKeycloakClient.java class DefaultKeycloakClient (line 21) | @Service method DefaultKeycloakClient (line 40) | public DefaultKeycloakClient(@Qualifier("keycloakRestClient") RestClie... method introspect (line 57) | @Override method userInfo (line 73) | @Override FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/KeycloakClient.java type KeycloakClient (line 6) | public interface KeycloakClient { method introspect (line 8) | KeycloakIntrospectResponse introspect(String token); method userInfo (line 10) | KeycloakUserInfo userInfo(OAuth2AuthorizedClient authorizedClient, Oid... FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/KeycloakIntrospectResponse.java class KeycloakIntrospectResponse (line 8) | @Data FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/KeycloakServiceException.java class KeycloakServiceException (line 5) | @Data FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/keycloakclient/KeycloakUserInfo.java class KeycloakUserInfo (line 7) | @Data FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/support/security/KeycloakLogoutHandler.java class KeycloakLogoutHandler (line 14) | @Slf4j method logout (line 18) | @Override method generateAppUri (line 41) | private String generateAppUri(HttpServletRequest request) { method createKeycloakLogoutUrl (line 51) | private String createKeycloakLogoutUrl(String issuerUri, String idToke... FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/web/AuthController.java class AuthController (line 25) | @RestController method register (line 42) | @GetMapping("/auth/register") method checkSession (line 61) | @GetMapping("/auth/check-session") class IntrospectionResponse (line 74) | @Data method setDataEntry (line 81) | @JsonAnySetter FILE: apps/frontend-webapp-springboot3/src/main/java/com/github/thomasdarimont/keycloak/webapp/web/UiController.java class UiController (line 21) | @Controller method showIndex (line 27) | @GetMapping("/") method showProfile (line 33) | @GetMapping("/profile") method showSettings (line 51) | @GetMapping("/settings") method showSecurity (line 71) | @GetMapping("/security") method showApplications (line 91) | @GetMapping("/applications") FILE: apps/frontend-webapp-springboot3/src/test/java/com/github/thomasdarimont/keycloak/cac/WebApplicationTestsSpringBoot.java class WebApplicationTestsSpringBoot (line 6) | @SpringBootTest method contextLoads (line 9) | @Test FILE: apps/java-opa-embedded/src/main/java/demo/OpaEmbeddedDemo.java class OpaEmbeddedDemo (line 16) | public class OpaEmbeddedDemo { method main (line 18) | public static void main(String[] args) throws Exception { FILE: apps/jwt-client-authentication/src/main/java/demo/jwtclientauth/JwtClientAuthApp.java class JwtClientAuthApp (line 48) | @Slf4j method main (line 52) | public static void main(String[] args) { method cli (line 56) | @Bean method requestToken (line 110) | private Map requestToken(String issuer, String clientA... method requestPAR (line 128) | private String requestPAR(String issuer, String clientId, String nonce... method generateClientAssertionSignedWithPrivateKey (line 150) | private String generateClientAssertionSignedWithPrivateKey(Map requestDeviceCode(String cl... method checkForDeviceFlowCompletion (line 97) | private ResponseEntity checkForDeviceFlowCompleti... class DeviceCodeResponse (line 111) | @Data method setValue (line 128) | @JsonAnySetter class AccessTokenResponse (line 134) | @Data method setValue (line 143) | @JsonAnySetter FILE: bin/applyRealmConfig.java class applyKeycloakConfigCli (line 9) | class applyKeycloakConfigCli { method main (line 11) | public static void main(String[] args) throws IOException, Interrupted... FILE: bin/createTlsCerts.java class createTlsCerts (line 26) | class createTlsCerts { method main (line 50) | public static void main(String[] args) throws IOException, Interrupted... FILE: bin/envcheck.java class envcheck (line 8) | class envcheck { method main (line 10) | public static void main(String[] args) throws IOException, Interrupted... FILE: bin/importCertificateIntoTruststore.java class importCertificateIntoTruststore (line 6) | public class importCertificateIntoTruststore { method main (line 17) | public static void main(String[] args) throws IOException, Interrupted... FILE: bin/installOtel.java class installOtel (line 7) | class installOtel { method main (line 9) | public static void main(String[] args) throws Exception { method downloadFile (line 25) | public static void downloadFile(String url, Path filePath) { FILE: bin/keycloakConfigCli.java class keycloakConfigCli (line 7) | class keycloakConfigCli { method main (line 22) | public static void main(String[] args) throws Exception { FILE: bin/realmImex.java class realmImex (line 13) | class realmImex { method main (line 31) | public static void main(String[] args) throws IOException, Interrupted... FILE: keycloak/e2e-tests/cypress.config.ts method setupNodeEvents (line 13) | setupNodeEvents(on, config) { FILE: keycloak/e2e-tests/cypress/utils/keycloakUtils.ts function visitClient (line 3) | function visitClient(clientId: string) { function loginUser (line 7) | function loginUser(user: any) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/account/AccountActivity.java class AccountActivity (line 21) | @JBossLog method onUserMfaChanged (line 24) | public static void onUserMfaChanged(KeycloakSession session, RealmMode... method onAccountDeletionRequested (line 50) | public static void onAccountDeletionRequested(KeycloakSession session,... method onTrustedDeviceChange (line 63) | public static void onTrustedDeviceChange(KeycloakSession session, Real... method onAccountLockedOut (line 87) | public static void onAccountLockedOut(KeycloakSession session, RealmMo... method onAccountUpdate (line 98) | public static void onAccountUpdate(KeycloakSession session, RealmModel... method getCredentialLabel (line 109) | private static String getCredentialLabel(CredentialModel credential) { method onCredentialChange (line 124) | public static void onCredentialChange(KeycloakSession session, RealmMo... method onUserPasskeyChanged (line 135) | public static void onUserPasskeyChanged(KeycloakSession session, Realm... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/account/AccountChange.java class AccountChange (line 5) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/account/AccountDeletion.java class AccountDeletion (line 15) | public class AccountDeletion { method createActionToken (line 17) | public static URI createActionToken(KeycloakSession session, RealmMode... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/account/AccountEmail.java class AccountEmail (line 13) | public class AccountEmail { method send (line 15) | public static void send(KeycloakSession session, EmailTemplateProvider... type SendEmailTask (line 30) | @FunctionalInterface method sendEmail (line 33) | void sendEmail(EmailTemplateProvider emailTemplateProvider, Map createAccessContext(KeycloakSession sess... method extractRequestHeaders (line 194) | protected Map extractRequestHeaders(KeycloakSession se... method extractContextAttributes (line 215) | protected Map extractContextAttributes(KeycloakSession... method extractAttributes (line 227) | protected Map extractAttributes(T source, ConfigAc... method extractUserAttributes (line 247) | protected Map extractUserAttributes(UserModel user, Co... method extractClientAttributes (line 266) | protected Map extractClientAttributes(ClientModel clie... method extractRealmAttributes (line 271) | protected Map extractRealmAttributes(RealmModel realm,... method fetchGroupNames (line 276) | protected List fetchGroupNames(UserModel user) { method fetchClientRoles (line 280) | protected List fetchClientRoles(UserModel user, ClientModel cl... method fetchRealmRoles (line 289) | protected List fetchRealmRoles(UserModel user) { method normalizeRoleName (line 296) | protected String normalizeRoleName(RoleModel role) { method getBoolean (line 303) | protected boolean getBoolean(Map config, String key, b... method extractDefaultUserAttributes (line 312) | protected Map extractDefaultUserAttributes(UserModel u... method fetchResponse (line 316) | protected T fetchResponse(SimpleHttp request, Class responseTyp... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/checkaccess/CheckAccessAuthenticator.java class CheckAccessAuthenticator (line 51) | @JBossLog method authenticate (line 56) | @Override method checkGroups (line 85) | private CheckResult checkGroups(KeycloakSession session, RealmModel re... method checkRoles (line 91) | private CheckResult checkRoles(KeycloakSession session, RealmModel rea... method checkAttributes (line 97) | private CheckResult checkAttributes(KeycloakSession session, RealmMode... method evaluateCheck (line 104) | private CheckResult evaluateCheck(String check, Boolean allowResult, B... method checkGroupsInternal (line 123) | private Boolean checkGroupsInternal(KeycloakSession session, RealmMode... method checkRolesInternal (line 153) | private Boolean checkRolesInternal(KeycloakSession session, RealmModel... method resolveRole (line 183) | private static RoleModel resolveRole(KeycloakSession session, RealmMod... method checkAttributeInternal (line 203) | private static Boolean checkAttributeInternal(UserModel user, ClientMo... method action (line 234) | @Override method requiresUser (line 239) | @Override method configuredFor (line 244) | @Override method setRequiredActions (line 249) | @Override method close (line 254) | @Override class Factory (line 260) | @AutoService(AuthenticatorFactory.class) method create (line 265) | @Override method getId (line 270) | @Override method getDisplayType (line 275) | @Override method getHelpText (line 280) | @Override method getConfigProperties (line 285) | @Override method getReferenceCategory (line 290) | @Override method isUserSetupAllowed (line 295) | @Override type AccessCheck (line 302) | interface AccessCheck { method apply (line 303) | CheckResult apply(KeycloakSession session, RealmModel realm, UserMod... class CheckResult (line 306) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/confirmcookie/ConfirmCookieAuthenticator.java class ConfirmCookieAuthenticator (line 24) | @JBossLog method authenticate (line 29) | @Override method action (line 43) | @Override method requiresUser (line 48) | @Override method configuredFor (line 53) | @Override method setRequiredActions (line 58) | @Override method close (line 63) | @Override class Factory (line 68) | @AutoService(AuthenticatorFactory.class) method getId (line 71) | @Override method create (line 76) | @Override method getDisplayType (line 81) | @Override method getHelpText (line 86) | @Override method getReferenceCategory (line 91) | @Override method isConfigurable (line 96) | @Override method getConfigProperties (line 101) | @Override method getRequirementChoices (line 113) | @Override method isUserSetupAllowed (line 118) | @Override method postInit (line 123) | @Override method init (line 128) | @Override method close (line 133) | @Override method getOperationalInfo (line 138) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/customcookie/CustomCookieAuthenticator.java class CustomCookieAuthenticator (line 11) | public class CustomCookieAuthenticator extends CookieAuthenticator { method CustomCookieAuthenticator (line 15) | public CustomCookieAuthenticator(KeycloakSession session) { method authenticate (line 19) | @Override class Factory (line 25) | public static class Factory extends CookieAuthenticatorFactory { method create (line 26) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/debug/DebugAuthenticator.java class DebugAuthenticator (line 23) | @JBossLog method DebugAuthenticator (line 29) | public DebugAuthenticator() { method authenticate (line 32) | @Override method action (line 78) | @Override method requiresUser (line 83) | @Override method configuredFor (line 88) | @Override method setRequiredActions (line 93) | @Override method close (line 98) | @Override class Factory (line 103) | @AutoService(AuthenticatorFactory.class) method getId (line 123) | @Override method create (line 128) | @Override method getDisplayType (line 134) | @Override method getHelpText (line 139) | @Override method getReferenceCategory (line 144) | @Override method isConfigurable (line 149) | @Override method getRequirementChoices (line 154) | @Override method isUserSetupAllowed (line 159) | @Override method getConfigProperties (line 164) | @Override method init (line 169) | @Override method postInit (line 174) | @Override method close (line 179) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/demo/SkippableRequiredAction.java class SkippableRequiredAction (line 22) | public class SkippableRequiredAction implements RequiredActionProvider { method evaluateTriggers (line 34) | @Override method didUserSkipRequiredAction (line 56) | protected boolean didUserSkipRequiredAction(RequiredActionContext cont... method isUserActionRequired (line 62) | protected boolean isUserActionRequired(UserModel user) { method requiredActionChallenge (line 66) | @Override method createChallengeForm (line 73) | protected Response createChallengeForm(RequiredActionContext context) { method isSkipActionPossible (line 82) | protected boolean isSkipActionPossible(RequiredActionContext context) { method processAction (line 97) | @Override method markActionDone (line 122) | protected void markActionDone(UserModel user) { method recordActionSkipped (line 127) | protected void recordActionSkipped(UserModel user, AuthenticationSessi... method close (line 135) | @Override class Factory (line 140) | @AutoService(RequiredActionFactory.class) method getId (line 145) | @Override method getDisplayText (line 150) | @Override method create (line 155) | @Override method getConfigMetadata (line 160) | @Override method init (line 176) | @Override method postInit (line 181) | @Override method close (line 186) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/dynamicidp/DynamicIdpAuthenticator.java class DynamicIdpAuthenticator (line 33) | public class DynamicIdpAuthenticator implements Authenticator { method authenticate (line 35) | @Override method action (line 76) | @Override method requiresUser (line 81) | @Override method configuredFor (line 86) | @Override method setRequiredActions (line 91) | @Override method close (line 96) | @Override class Factory (line 101) | @AutoService(AuthenticatorFactory.class) method getId (line 104) | @Override method getDisplayType (line 109) | @Override method getHelpText (line 114) | @Override method getReferenceCategory (line 119) | @Override method create (line 124) | @Override method isConfigurable (line 129) | @Override method getRequirementChoices (line 134) | @Override method isUserSetupAllowed (line 139) | @Override method getConfigProperties (line 144) | @Override method init (line 150) | @Override method postInit (line 154) | @Override method close (line 158) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/hello/HelloAuthenticator.java class HelloAuthenticator (line 22) | @JBossLog method authenticate (line 27) | @Override method action (line 42) | @Override method requiresUser (line 50) | @Override method configuredFor (line 55) | @Override method setRequiredActions (line 60) | @Override method close (line 65) | @Override class Factory (line 70) | @AutoService(AuthenticatorFactory.class) method getId (line 73) | @Override method create (line 78) | @Override method getDisplayType (line 83) | @Override method getHelpText (line 88) | @Override method getReferenceCategory (line 93) | @Override method isConfigurable (line 98) | @Override method getConfigProperties (line 103) | @Override method getRequirementChoices (line 115) | @Override method isUserSetupAllowed (line 120) | @Override method postInit (line 125) | @Override method init (line 130) | @Override method close (line 139) | @Override method getOperationalInfo (line 144) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/idpselection/AcmeDynamicIdpLookupUsernameForm.java class AcmeDynamicIdpLookupUsernameForm (line 43) | @JBossLog method authenticate (line 52) | @Override method action (line 66) | @Override method resolveTargetIdpByEmailDomain (line 154) | private String resolveTargetIdpByEmailDomain(RealmModel realm, String ... method validateForm (line 181) | @Override method redirect (line 193) | private void redirect(AuthenticationFlowContext context, String provid... method challenge (line 217) | @Override method createLoginForm (line 228) | @Override method getDefaultChallengeMessage (line 233) | @Override method findUserInLookupRealm (line 241) | protected UserModel findUserInLookupRealm(KeycloakSession session, Str... class Factory (line 247) | @AutoService(AuthenticatorFactory.class) method getId (line 250) | @Override method getDisplayType (line 255) | @Override method getReferenceCategory (line 260) | @Override method getHelpText (line 265) | @Override method getRequirementChoices (line 270) | @Override method isUserSetupAllowed (line 275) | @Override method isConfigurable (line 280) | @Override method getConfigProperties (line 285) | @Override method create (line 310) | @Override method init (line 315) | @Override method postInit (line 321) | @Override method close (line 326) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/magiclink/MagicLinkAuthenticator.java class MagicLinkAuthenticator (line 27) | @Slf4j method authenticate (line 35) | @Override method action (line 67) | @Override method sendMagicLink (line 72) | private void sendMagicLink(AuthenticationFlowContext context) { method generateMagicLink (line 98) | private String generateMagicLink(AuthenticationFlowContext context, St... method displayMagicLinkPage (line 103) | private void displayMagicLinkPage(AuthenticationFlowContext context) { method requiresUser (line 109) | @Override method configuredFor (line 114) | @Override method setRequiredActions (line 119) | @Override method close (line 124) | @Override class Factory (line 129) | @AutoService(AuthenticatorFactory.class) method getId (line 134) | @Override method create (line 139) | @Override method getDisplayType (line 144) | @Override method getHelpText (line 149) | @Override method getReferenceCategory (line 154) | @Override method isConfigurable (line 159) | @Override method getRequirementChoices (line 164) | @Override method isUserSetupAllowed (line 169) | @Override method getConfigProperties (line 175) | @Override method init (line 180) | @Override method postInit (line 184) | @Override method close (line 188) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/MfaInfo.java class MfaInfo (line 6) | @Getter FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/emailcode/EmailCodeAuthenticatorForm.java class EmailCodeAuthenticatorForm (line 33) | @JBossLog method EmailCodeAuthenticatorForm (line 43) | public EmailCodeAuthenticatorForm(KeycloakSession session) { method authenticate (line 47) | @Override method challenge (line 52) | private void challenge(AuthenticationFlowContext context, FormMessage ... method generateAndSendEmailCode (line 70) | private void generateAndSendEmailCode(AuthenticationFlowContext contex... method toDisplayCode (line 83) | private String toDisplayCode(String emailCode) { method fromDisplayCode (line 87) | private String fromDisplayCode(String code) { method action (line 91) | @Override method resetEmailCode (line 125) | private void resetEmailCode(AuthenticationFlowContext context) { method validateCode (line 129) | private boolean validateCode(AuthenticationFlowContext context, String... method requiresUser (line 134) | @Override method configuredFor (line 139) | @Override method setRequiredActions (line 144) | @Override method close (line 149) | @Override method sendEmailWithCode (line 154) | private void sendEmailWithCode(RealmModel realm, UserModel user, Strin... method getCredentialProvider (line 180) | @Override class Factory (line 186) | @AutoService(AuthenticatorFactory.class) method getDisplayType (line 189) | @Override method getReferenceCategory (line 194) | @Override method isConfigurable (line 199) | @Override method getRequirementChoices (line 204) | @Override method isUserSetupAllowed (line 209) | @Override method getHelpText (line 214) | @Override method getConfigProperties (line 219) | @Override method close (line 224) | @Override method create (line 229) | @Override method init (line 234) | @Override method postInit (line 239) | @Override method getId (line 244) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/emailcode/EmailCodeCredentialModel.java class EmailCodeCredentialModel (line 5) | public class EmailCodeCredentialModel extends CredentialModel { method EmailCodeCredentialModel (line 9) | public EmailCodeCredentialModel() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/emailcode/EmailCodeCredentialProvider.java class EmailCodeCredentialProvider (line 18) | @JBossLog method EmailCodeCredentialProvider (line 25) | public EmailCodeCredentialProvider(KeycloakSession session) { method supportsCredentialType (line 29) | @Override method isConfiguredFor (line 34) | @Override method isValid (line 39) | @Override method getType (line 44) | @Override method createCredential (line 49) | @Override method deleteCredential (line 61) | @Override method getCredentialFromModel (line 71) | @Override method getCredentialTypeMetadata (line 81) | @Override class Factory (line 96) | @SuppressWarnings("rawtypes") method create (line 100) | @Override method getId (line 105) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/emailcode/RegisterEmailCodeRequiredAction.java class RegisterEmailCodeRequiredAction (line 16) | @JBossLog method evaluateTriggers (line 21) | @Override method initiatedActionSupport (line 26) | @Override method requiredActionChallenge (line 32) | @Override method processAction (line 52) | @Override method close (line 57) | @Override class Factory (line 62) | @AutoService(RequiredActionFactory.class) method create (line 67) | @Override method init (line 72) | @Override method postInit (line 77) | @Override method close (line 82) | @Override method getId (line 87) | @Override method getDisplayText (line 92) | @Override method isOneTimeAction (line 97) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/otp/AcmeOTPFormAuthenticator.java class AcmeOTPFormAuthenticator (line 35) | public class AcmeOTPFormAuthenticator extends OTPFormAuthenticator { method validateOTP (line 39) | @Override class Factory (line 51) | @AutoService(AuthenticatorFactory.class) method create (line 56) | @Override method getId (line 61) | @Override method getDisplayType (line 66) | @Override method getHelpText (line 71) | @Override method getConfigProperties (line 76) | @Override method getReferenceCategory (line 81) | @Override method isUserSetupAllowed (line 86) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/setup/SelectMfaMethodAuthenticator.java class SelectMfaMethodAuthenticator (line 36) | @JBossLog method authenticate (line 47) | @Override method action (line 68) | @Override method requiresUser (line 85) | @Override method configuredFor (line 90) | @Override method isMfaCredentialConfiguredForCurrentUser (line 95) | boolean isMfaCredentialConfiguredForCurrentUser(UserModel user, Set getConfiguredMfaCredentialTypes(Authenticat... method getConfiguredMfaCredentialTypesRequiredActionsMapping (line 114) | private static Map getConfiguredMfaCredentialTypesRequ... method setRequiredActions (line 127) | @Override method close (line 132) | @Override method mapToString (line 137) | private static String mapToString(Map map) { method stringToMap (line 145) | private static Map stringToMap(String string) { class Factory (line 155) | @AutoService(AuthenticatorFactory.class) method getId (line 158) | @Override method create (line 163) | @Override method getDisplayType (line 168) | @Override method getHelpText (line 173) | @Override method getReferenceCategory (line 178) | @Override method isConfigurable (line 183) | @Override method getConfigProperties (line 188) | @Override method getRequirementChoices (line 213) | @Override method isUserSetupAllowed (line 218) | @Override method postInit (line 223) | @Override method init (line 228) | @Override method close (line 237) | @Override method getOperationalInfo (line 242) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/PhoneNumberUtils.java class PhoneNumberUtils (line 5) | public class PhoneNumberUtils { method abbreviatePhoneNumber (line 7) | public static String abbreviatePhoneNumber(String phoneNumber) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/SmsAuthenticator.java class SmsAuthenticator (line 35) | @JBossLog method authenticate (line 61) | @Override method extractPhoneNumber (line 86) | protected String extractPhoneNumber(KeycloakSession session, RealmMode... method sendCodeAndChallenge (line 107) | protected void sendCodeAndChallenge(AuthenticationFlowContext context,... method generateLoginForm (line 126) | protected LoginFormsProvider generateLoginForm(AuthenticationFlowConte... method sendSmsWithCode (line 130) | protected boolean sendSmsWithCode(AuthenticationFlowContext context, U... method createSmsCodeSender (line 145) | protected SmsCodeSender createSmsCodeSender(AuthenticationFlowContext ... method validatePhoneNumberFormat (line 149) | protected boolean validatePhoneNumberFormat(String phoneNumber, Authen... method action (line 160) | @Override method handleFailure (line 222) | protected void handleFailure(AuthenticationFlowContext context, Authen... method isCodeExpired (line 233) | protected boolean isCodeExpired(String codeExpireAt) { method generateErrorForm (line 237) | protected LoginFormsProvider generateErrorForm(AuthenticationFlowConte... method requiresUser (line 249) | @Override method configuredFor (line 254) | @Override method setRequiredActions (line 263) | @Override method close (line 268) | @Override class Factory (line 273) | @AutoService(AuthenticatorFactory.class) method getId (line 339) | @Override method getDisplayType (line 344) | @Override method getHelpText (line 349) | @Override method getReferenceCategory (line 354) | @Override method isConfigurable (line 359) | @Override method isUserSetupAllowed (line 364) | @Override method getRequirementChoices (line 369) | @Override method getConfigProperties (line 374) | @Override method create (line 379) | @Override method init (line 384) | @Override method postInit (line 389) | @Override method close (line 394) | @Override method getOperationalInfo (line 399) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/SmsCodeSender.java class SmsCodeSender (line 19) | @JBossLog method sendVerificationCode (line 22) | public boolean sendVerificationCode(KeycloakSession session, RealmMode... method generateCode (line 49) | protected String generateCode(int length) { method resolveDomain (line 53) | protected String resolveDomain(KeycloakContext context) { method createSmsClient (line 58) | protected SmsClient createSmsClient(Map config) { method generateSmsText (line 63) | protected String generateSmsText(int ttlSeconds, String code, String s... method appendWebOtpFragment (line 72) | protected String appendWebOtpFragment(String code, String domain, Stri... method computeExpireAt (line 77) | protected String computeExpireAt(int ttlSeconds) { method resolveSender (line 81) | protected String resolveSender(RealmModel realm, Map c... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/client/SmsClient.java type SmsClient (line 3) | public interface SmsClient { method send (line 5) | void send(String sender, String receiver, String message); FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/client/SmsClientFactory.java class SmsClientFactory (line 11) | public class SmsClientFactory { method createClient (line 15) | public static SmsClient createClient(String name, Map ... method getAvailableClientNames (line 26) | public static Set getAvailableClientNames() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/client/mock/MockSmsClient.java class MockSmsClient (line 8) | @JBossLog method MockSmsClient (line 13) | public MockSmsClient(Map config) { method send (line 17) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/credentials/SmsCredentialModel.java class SmsCredentialModel (line 12) | @JBossLog method SmsCredentialModel (line 19) | public SmsCredentialModel() { method SmsCredentialModel (line 23) | public SmsCredentialModel(CredentialModel credentialModel) { method getPhoneNumber (line 33) | public String getPhoneNumber() { method setPhoneNumber (line 37) | public void setPhoneNumber(String phoneNumber) { method writeCredentialData (line 41) | public void writeCredentialData() { method readCredentialData (line 52) | public void readCredentialData() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/credentials/SmsCredentialProvider.java class SmsCredentialProvider (line 20) | @JBossLog method SmsCredentialProvider (line 27) | public SmsCredentialProvider(KeycloakSession session) { method supportsCredentialType (line 31) | @Override method isConfiguredFor (line 36) | @Override method isValid (line 41) | @Override method getType (line 46) | @Override method createCredential (line 51) | @Override method extractPhoneNumber (line 72) | private String extractPhoneNumber(SmsCredentialModel model, UserModel ... method deleteCredential (line 80) | @Override method getCredentialFromModel (line 85) | @Override method getCredentialTypeMetadata (line 95) | @Override class Factory (line 111) | @SuppressWarnings("rawtypes") method create (line 115) | @Override method getId (line 120) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/mfa/sms/updatephone/UpdatePhoneNumberRequiredAction.java class UpdatePhoneNumberRequiredAction (line 36) | @JBossLog method initiatedActionSupport (line 50) | @Override method evaluateTriggers (line 56) | @Override method requiredActionChallenge (line 73) | @Override method createForm (line 80) | protected Response createForm(RequiredActionContext context, Consumer<... method processAction (line 103) | @Override method afterPhoneNumberVerified (line 175) | protected void afterPhoneNumberVerified(RealmModel realm, UserModel us... method updateSmsMfaCredential (line 180) | protected void updateSmsMfaCredential(RealmModel realm, UserModel user... method isValidPhoneNumber (line 198) | private static boolean isValidPhoneNumber(String phoneNumber) { method createSmsSender (line 209) | protected SmsCodeSender createSmsSender(RequiredActionContext context) { method close (line 213) | @Override class Factory (line 218) | @AutoService(RequiredActionFactory.class) method create (line 223) | @Override method init (line 228) | @Override method postInit (line 233) | @Override method close (line 238) | @Override method getId (line 243) | @Override method getDisplayText (line 248) | @Override method isOneTimeAction (line 253) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/net/NetworkAuthenticator.java class NetworkAuthenticator (line 45) | @JBossLog method authenticate (line 65) | @Override method isAccessAllowed (line 109) | @VisibleForTesting method resolveAllowedNetworks (line 134) | @VisibleForTesting method errorResponse (line 150) | public Response errorResponse(AuthenticationFlowContext flowContext, i... method isAllowedNetworkConfigured (line 164) | private boolean isAllowedNetworkConfigured(String allowedNetworks) { method getAllowedNetworksForAuthenticator (line 168) | @VisibleForTesting method getAllowedNetworksForClient (line 183) | @VisibleForTesting method isRemoteIpAllowed (line 188) | @VisibleForTesting method resolveRemoteIp (line 215) | @VisibleForTesting method getRemoteIpHeaderName (line 241) | @VisibleForTesting method action (line 261) | @Override method requiresUser (line 266) | @Override method configuredFor (line 272) | @Override method setRequiredActions (line 277) | @Override method close (line 282) | @Override class Factory (line 287) | @AutoService(AuthenticatorFactory.class) method getId (line 314) | @Override method getDisplayType (line 319) | @Override method getReferenceCategory (line 324) | @Override method getHelpText (line 329) | @Override method create (line 334) | @Override method init (line 339) | @Override method postInit (line 344) | @Override method isConfigurable (line 349) | @Override method getRequirementChoices (line 354) | @Override method isUserSetupAllowed (line 359) | @Override method getConfigProperties (line 364) | @Override method close (line 369) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/opa/OpaAccessResponse.java class OpaAccessResponse (line 12) | @Data method OpaAccessResponse (line 20) | public OpaAccessResponse(AuthZen.AccessResponse result) { method isAllowed (line 24) | @JsonIgnore method getHint (line 29) | public String getHint() { method handleUnknownProperty (line 43) | @JsonAnySetter FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/opa/OpaAuthenticator.java class OpaAuthenticator (line 25) | @JBossLog method OpaAuthenticator (line 32) | public OpaAuthenticator(KeycloakSession session, OpaClient opaClient) { method authenticate (line 37) | @Override method action (line 62) | @Override method requiresUser (line 67) | @Override method configuredFor (line 72) | @Override method setRequiredActions (line 77) | @Override method close (line 82) | @Override class OpaAuthenticatorFactory (line 87) | @AutoService(AuthenticatorFactory.class) method getId (line 165) | public String getId() { method getDisplayType (line 169) | @Override method getReferenceCategory (line 174) | @Override method getHelpText (line 179) | @Override method isConfigurable (line 184) | @Override method getRequirementChoices (line 189) | @Override method isUserSetupAllowed (line 194) | @Override method getConfigProperties (line 199) | @Override method create (line 204) | @Override method init (line 209) | @Override method postInit (line 214) | @Override method close (line 219) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/opa/OpaCheckAccessAction.java class OpaCheckAccessAction (line 23) | public class OpaCheckAccessAction implements RequiredActionProvider { method OpaCheckAccessAction (line 106) | public OpaCheckAccessAction(OpaClient opaClient) { method evaluateTriggers (line 110) | @Override method requiredActionChallenge (line 122) | @Override method processAction (line 151) | @Override method close (line 156) | @Override class Factory (line 162) | @AutoService(RequiredActionFactory.class) method create (line 167) | @Override method init (line 172) | @Override method postInit (line 178) | @Override method getConfigMetadata (line 183) | @Override method close (line 188) | @Override method getId (line 193) | @Override method getDisplayText (line 198) | @Override method isOneTimeAction (line 203) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/opa/OpaClient.java class OpaClient (line 30) | @JBossLog method checkAccess (line 67) | public OpaAccessResponse checkAccess(KeycloakSession session, ConfigAc... method checkAccess (line 72) | public OpaAccessResponse checkAccess(KeycloakSession session, ConfigAc... method createSubject (line 101) | protected AuthZen.Subject createSubject(ConfigAccessor config, UserMod... method createResource (line 124) | protected AuthZen.Resource createResource(ConfigAccessor config, Realm... method createAccessContext (line 134) | protected Map createAccessContext(KeycloakSession sess... method extractRequestHeaders (line 143) | protected Map extractRequestHeaders(KeycloakSession se... method extractContextAttributes (line 164) | protected Map extractContextAttributes(KeycloakSession... method extractAttributes (line 176) | protected Map extractAttributes(T source, ConfigAc... method extractUserAttributes (line 196) | protected Map extractUserAttributes(UserModel user, Co... method extractClientAttributes (line 215) | protected Map extractClientAttributes(ClientModel clie... method extractRealmAttributes (line 220) | protected Map extractRealmAttributes(RealmModel realm,... method fetchGroupNames (line 225) | protected List fetchGroupNames(UserModel user) { method fetchClientRoles (line 229) | protected List fetchClientRoles(UserModel user, ClientModel cl... method fetchRealmRoles (line 238) | protected List fetchRealmRoles(UserModel user) { method normalizeRoleName (line 245) | protected String normalizeRoleName(RoleModel role) { method getBoolean (line 252) | protected boolean getBoolean(Map config, String key, b... method extractDefaultUserAttributes (line 261) | protected Map extractDefaultUserAttributes(UserModel u... method fetchResponse (line 265) | protected OpaAccessResponse fetchResponse(SimpleHttp request) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/passwordform/FederationAwarePasswordForm.java class FederationAwarePasswordForm (line 17) | public class FederationAwarePasswordForm extends PasswordForm { method FederationAwarePasswordForm (line 19) | public FederationAwarePasswordForm(KeycloakSession session) { method configuredFor (line 23) | @Override class Factory (line 35) | @JBossLog method create (line 39) | @Override method postInit (line 44) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/TrustedDeviceCookie.java class TrustedDeviceCookie (line 10) | public class TrustedDeviceCookie { method removeDeviceCookie (line 14) | public static void removeDeviceCookie(KeycloakSession session, RealmMo... method addDeviceCookie (line 19) | public static void addDeviceCookie(String deviceTokenString, int maxAg... method parseDeviceTokenFromCookie (line 23) | public static TrustedDeviceToken parseDeviceTokenFromCookie(HttpReques... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/TrustedDeviceName.java class TrustedDeviceName (line 12) | public class TrustedDeviceName { method generateDeviceName (line 16) | public static String generateDeviceName(HttpRequest request) { method guessOsFromUserAgentString (line 35) | private static String guessOsFromUserAgentString(String userAgentStrin... method guessDeviceTypeFromUserAgentString (line 44) | private static String guessDeviceTypeFromUserAgentString(String userAg... method sanitizeDeviceName (line 64) | public static String sanitizeDeviceName(String deviceNameInput) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/TrustedDeviceToken.java class TrustedDeviceToken (line 7) | public class TrustedDeviceToken extends JsonWebToken { method getCategory (line 12) | @Override method getDeviceId (line 17) | public String getDeviceId() { method setDeviceId (line 21) | public void setDeviceId(String deviceId) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/action/ManageTrustedDeviceAction.java class ManageTrustedDeviceAction (line 35) | @JBossLog method initiatedActionSupport (line 45) | @Override method evaluateTriggers (line 50) | @Override method requiredActionChallenge (line 55) | @Override method processAction (line 83) | @Override method afterTrustedDeviceRegistration (line 133) | private void afterTrustedDeviceRegistration(RequiredActionContext cont... method registerNewTrustedDevice (line 147) | private void registerNewTrustedDevice(KeycloakSession session, RealmMo... method removeTrustedDevices (line 177) | private void removeTrustedDevices(RequiredActionContext context) { method createDeviceToken (line 185) | protected TrustedDeviceToken createDeviceToken(String deviceId, int nu... method close (line 204) | @Override class Factory (line 209) | @AutoService(RequiredActionFactory.class) method create (line 214) | @Override method init (line 219) | @Override method postInit (line 224) | @Override method close (line 229) | @Override method getId (line 234) | @Override method getDisplayText (line 239) | @Override method isOneTimeAction (line 244) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/action/TrustedDeviceInfo.java class TrustedDeviceInfo (line 3) | public class TrustedDeviceInfo { method TrustedDeviceInfo (line 7) | public TrustedDeviceInfo(String deviceName) { method getDeviceName (line 11) | public String getDeviceName() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/auth/TrustedDeviceAuthenticator.java class TrustedDeviceAuthenticator (line 26) | @JBossLog method lookupTrustedDeviceCredentialModelFromCookie (line 31) | public static TrustedDeviceCredentialModel lookupTrustedDeviceCredenti... method authenticate (line 56) | @Override method action (line 78) | @Override method requiresUser (line 83) | @Override method configuredFor (line 88) | @Override method setRequiredActions (line 93) | @Override method close (line 98) | @Override method getCredentialProvider (line 103) | @Override class Factory (line 108) | @AutoService(AuthenticatorFactory.class) method getId (line 113) | @Override method getDisplayType (line 118) | @Override method getHelpText (line 123) | @Override method isConfigurable (line 128) | @Override method getRequirementChoices (line 133) | @Override method isUserSetupAllowed (line 138) | @Override method getReferenceCategory (line 143) | @Override method getConfigProperties (line 148) | @Override method create (line 153) | @Override method init (line 158) | @Override method postInit (line 163) | @Override method close (line 168) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/credentials/TrustedDeviceCredentialInput.java class TrustedDeviceCredentialInput (line 5) | public class TrustedDeviceCredentialInput implements CredentialInput { method TrustedDeviceCredentialInput (line 13) | public TrustedDeviceCredentialInput(String credentialId, String type, ... method getCredentialId (line 19) | @Override method getType (line 24) | @Override method getChallengeResponse (line 29) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/credentials/TrustedDeviceCredentialModel.java class TrustedDeviceCredentialModel (line 7) | public class TrustedDeviceCredentialModel extends CredentialModel { method TrustedDeviceCredentialModel (line 15) | public TrustedDeviceCredentialModel(String deviceName, TrustedDeviceTo... method TrustedDeviceCredentialModel (line 20) | public TrustedDeviceCredentialModel(String id, String deviceName, Stri... method getType (line 26) | @Override method getDeviceToken (line 31) | public TrustedDeviceToken getDeviceToken() { method getDeviceId (line 35) | public String getDeviceId() { method lookupTrustedDevice (line 39) | public static TrustedDeviceCredentialModel lookupTrustedDevice(UserMod... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/credentials/TrustedDeviceCredentialProvider.java class TrustedDeviceCredentialProvider (line 22) | @JBossLog method TrustedDeviceCredentialProvider (line 29) | public TrustedDeviceCredentialProvider(KeycloakSession session) { method getType (line 33) | @Override method createCredential (line 38) | @Override method createTrustedDeviceCredentialModel (line 57) | protected CredentialModel createTrustedDeviceCredentialModel(TrustedDe... method deleteCredential (line 70) | @Override method deleteMatchingDeviceCookieIfPresent (line 90) | private boolean deleteMatchingDeviceCookieIfPresent(RealmModel realm, ... method getCredentialFromModel (line 108) | @Override method getCredentialTypeMetadata (line 118) | @Override method supportsCredentialType (line 139) | @Override method isConfiguredFor (line 144) | @Override method isValid (line 149) | @Override class Factory (line 166) | @SuppressWarnings("rawtypes") method create (line 170) | @Override method getId (line 175) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/trusteddevice/support/UserAgentParser.java class UserAgentParser (line 8) | @JBossLog method parseUserAgent (line 23) | public static UserAgent parseUserAgent(String userAgentString) { method parseOperationSystem (line 32) | public static OS parseOperationSystem(String userAgentString) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/userpasswordform/AcmeCaptchaUsernamePasswordForm.java class AcmeCaptchaUsernamePasswordForm (line 24) | public class AcmeCaptchaUsernamePasswordForm extends UsernamePasswordForm { method challenge (line 32) | @Override method challenge (line 38) | @Override method challenge (line 44) | @Override method addCaptcha (line 50) | private void addCaptcha(AuthenticationFlowContext context) { method validateForm (line 90) | @Override method checkCaptcha (line 100) | private boolean checkCaptcha(AuthenticationFlowContext context, Multiv... class Factory (line 130) | @AutoService(AuthenticatorFactory.class) method getId (line 135) | @Override method create (line 140) | @Override method getDisplayType (line 145) | @Override method getHelpText (line 150) | @Override method getReferenceCategory (line 155) | @Override method isConfigurable (line 160) | @Override method getRequirementChoices (line 165) | @Override method isUserSetupAllowed (line 170) | @Override method getConfigProperties (line 176) | @Override method init (line 181) | @Override method postInit (line 185) | @Override method close (line 189) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/auth/verifyemailcode/VerifyEmailCodeAction.java class VerifyEmailCodeAction (line 40) | @JBossLog method evaluateTriggers (line 48) | @Override method requiredActionChallenge (line 56) | @Override method requiredActionChallenge (line 61) | public void requiredActionChallenge(RequiredActionContext context, For... method processAction (line 101) | @Override method generateAndSendEmailCode (line 140) | protected void generateAndSendEmailCode(RequiredActionContext context,... method toDisplayCode (line 153) | protected String toDisplayCode(String emailCode, VerifyEmailCodeAction... method fromDisplayCode (line 157) | protected String fromDisplayCode(String code) { method resetEmailCode (line 161) | protected void resetEmailCode(RequiredActionContext context) { method validateCode (line 165) | protected boolean validateCode(RequiredActionContext context, String g... method sendEmailWithCode (line 170) | protected void sendEmailWithCode(RequiredActionContext context, String... method close (line 200) | @Override method getId (line 204) | @Override method getDisplayText (line 209) | @Override method create (line 214) | @Override method init (line 219) | @Override method postInit (line 224) | @Override method getConfigMetadata (line 229) | @Override class VerifyEmailCodeActionConfig (line 261) | @Data method VerifyEmailCodeActionConfig (line 270) | public VerifyEmailCodeActionConfig(RequiredActionConfigModel config) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/authz/filter/AcmeAccessFilter.java class AcmeAccessFilter (line 24) | @JBossLog method filter (line 29) | @Override method authenticateRealmAdminRequest (line 47) | private AdminAuth authenticateRealmAdminRequest(KeycloakSession sessio... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/authz/policies/AcmeImpersonationPolicyProvider.java class AcmeImpersonationPolicyProvider (line 26) | @JBossLog method AcmeImpersonationPolicyProvider (line 32) | public AcmeImpersonationPolicyProvider(KeycloakSession session, Author... method evaluate (line 37) | @Override method isImpersonationAllowed (line 68) | protected boolean isImpersonationAllowed(RealmModel realm, UserModel s... method close (line 77) | @Override class AcmeImpersonationPolicyRepresentation (line 82) | public static class AcmeImpersonationPolicyRepresentation extends JSPo... class Factory (line 86) | @AutoService(PolicyProviderFactory.class) method getId (line 89) | @Override method getName (line 94) | @Override method getGroup (line 99) | @Override method create (line 104) | @Override method create (line 109) | @Override method create (line 114) | public PolicyProvider create(KeycloakSession session, AuthorizationP... method init (line 118) | @Override method postInit (line 123) | @Override method toRepresentation (line 128) | @Override method onUpdate (line 140) | @Override method getRepresentationType (line 147) | @Override method close (line 152) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/config/ClientConfig.java class ClientConfig (line 6) | @RequiredArgsConstructor method getType (line 11) | @Override method getSource (line 16) | @Override method getValue (line 21) | public String getValue(String key) { method containsKey (line 25) | public boolean containsKey(String key) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/config/ConfigAccessor.java type ConfigAccessor (line 9) | public interface ConfigAccessor { method getType (line 11) | String getType(); method getSource (line 13) | String getSource(); method containsKey (line 15) | boolean containsKey(String key); method getValue (line 17) | String getValue(String key); method getValueOrDefault (line 19) | default T getValueOrDefault(String key, T defaultValue, Function T getValue(String key, Function converter) { method getString (line 39) | default String getString(String key, String defaultValue) { method getString (line 43) | default String getString(String key) { method getInt (line 47) | default Integer getInt(String key, Integer defaultValue) { method getInt (line 51) | default int getInt(String key) { method getEnum (line 55) | default > T getEnum(Class enumType, String key, T... method getEnum (line 59) | default > T getEnum(Class enumType, String key) { method getLong (line 63) | default Long getLong(String key, Long defaultValue) { method getLong (line 67) | default long getLong(String key) { method getBoolean (line 71) | default Boolean getBoolean(String key, Boolean defaultValue) { method getBoolean (line 75) | default boolean getBoolean(String key) { method isConfigured (line 86) | default boolean isConfigured(String key, boolean defaultValue) { class MissingKeyException (line 97) | @RequiredArgsConstructor method getMessage (line 106) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/config/MapConfig.java class MapConfig (line 6) | public class MapConfig implements ConfigAccessor { method MapConfig (line 10) | public MapConfig(Map config) { method getType (line 14) | @Override method getSource (line 19) | @Override method containsKey (line 24) | @Override method getValue (line 29) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/config/RealmConfig.java class RealmConfig (line 8) | @Getter method getType (line 17) | @Override method getSource (line 22) | @Override method getValue (line 27) | public String getValue(String key) { method containsKey (line 31) | public boolean containsKey(String key) { method prefixed (line 35) | private String prefixed(String key) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/consent/ConsentSelectionAction.java class ConsentSelectionAction (line 39) | @AutoService(RequiredActionFactory.class) method getScopeFieldMapping (line 46) | private Map> getScopeFieldMapping() { method getId (line 71) | @Override method getDisplayText (line 76) | @Override method create (line 81) | @Override method initiatedActionSupport (line 86) | @Override method evaluateTriggers (line 92) | @Override method requiredActionChallenge (line 125) | @Override method createForm (line 132) | protected Response createForm(RequiredActionContext context, Consumer<... method processAction (line 172) | @Override method init (line 259) | @Override method postInit (line 264) | @Override method close (line 269) | @Override method getScopeInfo (line 274) | private ScopeInfo getScopeInfo(KeycloakSession session, Authentication... method computeRequestedScopes (line 303) | private RequestedScopes computeRequestedScopes(AuthenticationSessionMo... class ScopeInfo (line 331) | @Data class RequestedScopes (line 341) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/consent/ScopeBean.java class ScopeBean (line 10) | @RequiredArgsConstructor method isOptional (line 25) | public boolean isOptional() { method isGranted (line 29) | public boolean isGranted() { method getGuiOrder (line 33) | public String getGuiOrder() { method getScopeModel (line 43) | public ClientScopeModel getScopeModel() { method getName (line 47) | public String getName() { method getDescription (line 51) | public String getDescription() { method getFields (line 55) | public List getFields() { method toString (line 59) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/consent/ScopeField.java class ScopeField (line 8) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/consent/ScopeFieldBean.java class ScopeFieldBean (line 6) | @Data method getName (line 13) | public String getName() { method getType (line 17) | public String getType() { method getValue (line 21) | public String getValue() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/context/ContextSelectionAction.java class ContextSelectionAction (line 27) | @JBossLog method initiatedActionSupport (line 44) | @Override method evaluateTriggers (line 49) | @Override method isValidContextKey (line 98) | private boolean isValidContextKey(RequiredActionContext context, Strin... method requiredActionChallenge (line 110) | @Override method showContextSelectionForm (line 115) | private void showContextSelectionForm(RequiredActionContext context, C... method getCurrentContextItem (line 138) | private static ContextItem getCurrentContextItem(RequiredActionContext... method computeContextOptions (line 150) | private List computeContextOptions(RequiredActionContext ... method initiatedActionCanceled (line 161) | @Override method processAction (line 167) | @Override method close (line 201) | @Override class ContextItem (line 206) | @Data class Factory (line 213) | @AutoService(RequiredActionFactory.class) method getId (line 218) | @Override method getDisplayText (line 223) | @Override method create (line 228) | @Override method init (line 233) | @Override method postInit (line 238) | @Override method close (line 243) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/email/AcmeEmailSenderProvider.java class AcmeEmailSenderProvider (line 19) | public class AcmeEmailSenderProvider extends DefaultEmailSenderProvider { method AcmeEmailSenderProvider (line 23) | public AcmeEmailSenderProvider(KeycloakSession session, Map getAttributes() { method getSettings (line 116) | public List getSettings() { method getRawConfigSettings (line 122) | private List getRawConfigSettings(Predicate getApplicationsForUser(RealmModel re... method matches (line 122) | private boolean matches(ClientModel client, String name) { method modelToRepresentation (line 135) | private ClientRepresentation modelToRepresentation(ClientModel model, ... method getAccountMessages (line 153) | private Properties getAccountMessages(Locale locale) { method modelToRepresentation (line 161) | private ConsentRepresentation modelToRepresentation(UserConsentModel m... method withCors (line 168) | private Cors withCors() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/branding/BrandingResource.java class BrandingResource (line 15) | public class BrandingResource { method BrandingResource (line 19) | public BrandingResource(KeycloakSession session) { method getBranding (line 23) | @GET FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/credentials/UserCredentialsInfoResource.java class UserCredentialsInfoResource (line 48) | public class UserCredentialsInfoResource { method UserCredentialsInfoResource (line 59) | public UserCredentialsInfoResource(KeycloakSession session, AccessToke... method getCorsOptions (line 64) | @OPTIONS method readCredentialInfo (line 69) | @GET method removeCredentialByType (line 99) | @DELETE method removeCredentialForUser (line 159) | private boolean removeCredentialForUser(RealmModel realm, UserModel us... method loadCredentialInfosForUser (line 170) | private Map> loadCredentialInfosForUser(R... method newCredentialInfo (line 206) | private CredentialInfo newCredentialInfo(CredentialModel credential, S... method isCurrentRequestFromGivenTrustedDevice (line 233) | private boolean isCurrentRequestFromGivenTrustedDevice(CredentialModel... method shouldAggregate (line 243) | private boolean shouldAggregate(String credentialType) { method withCors (line 247) | private Cors withCors(HttpRequest request) { class CredentialInfo (line 251) | @Data class RemoveCredentialRequest (line 265) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/demo/DemosResource.java class DemosResource (line 25) | @Consumes(MediaType.APPLICATION_JSON) method DemosResource (line 31) | public DemosResource(KeycloakSession session) { method demoCachedServiceAccountToken (line 42) | @Path("cached-serviceaccount-token") method demoSlowQuery (line 66) | @Path("slow-query") method demoAcmeUser (line 83) | @Path("acme-legacy-user") method componentProviderLookupExample (line 114) | @Path("component-provider-lookup") FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/idp/IdpApplications.java class IdpApplications (line 47) | @JBossLog method IdpApplications (line 52) | public IdpApplications(KeycloakSession session) { method getCorsOptions (line 56) | @OPTIONS method applications (line 61) | @GET method redirect (line 112) | private Response redirect(KeycloakContext context, String providerId, ... method withCors (line 150) | private Cors withCors() { class ApplicationsBean (line 155) | @Data method getApplications (line 163) | public List getApplications() { class ApplicationInfo (line 180) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/migration/TokenMigrationResource.java class TokenMigrationResource (line 30) | @RequiredArgsConstructor method migrateToken (line 39) | @POST method isAllowedMigration (line 116) | private boolean isAllowedMigration(TokenMigrationInput input) { class TokenMigrationInput (line 120) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/migration/UserImportMigrationResource.java class UserImportMigrationResource (line 35) | @JBossLog method migrateUsers (line 49) | @POST method clearCache (line 152) | @Path("/cache") FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/offline/OfflineSessionPropagationResource.java class OfflineSessionPropagationResource (line 25) | @JBossLog method OfflineSessionPropagationResource (line 34) | public OfflineSessionPropagationResource(KeycloakSession session, Acce... method propagateSession (line 51) | @POST method resolveBaseUri (line 97) | private URI resolveBaseUri(ClientModel targetClient) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/offline/SessionPropagationActionToken.java class SessionPropagationActionToken (line 6) | public class SessionPropagationActionToken extends DefaultActionToken { method SessionPropagationActionToken (line 18) | public SessionPropagationActionToken(String userId, int absoluteExpira... method SessionPropagationActionToken (line 29) | @SuppressWarnings("unused") method getRedirectUri (line 33) | @JsonProperty(REDIRECT_URI) method setRedirectUri (line 38) | @JsonProperty(REDIRECT_URI) method getSourceClientId (line 47) | @JsonProperty(SOURCE_CLIENT_ID) method setSourceClientId (line 52) | @JsonProperty(SOURCE_CLIENT_ID) method getRememberMe (line 57) | @JsonProperty(REMEMBER_ME) method setRememberMe (line 62) | @JsonProperty(REMEMBER_ME) FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/offline/SessionPropagationActionTokenHandler.java class SessionPropagationActionTokenHandler (line 24) | @JBossLog method SessionPropagationActionTokenHandler (line 31) | public SessionPropagationActionTokenHandler() { method handleToken (line 35) | @Override method redirectTo (line 81) | private Response redirectTo(String redirectUri) { method getVerifiers (line 85) | @Override method canUseTokenRepeatedly (line 92) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/profile/ProfileData.java class ProfileData (line 5) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/profile/UserProfileResource.java class UserProfileResource (line 22) | public class UserProfileResource { method UserProfileResource (line 30) | public UserProfileResource(KeycloakSession session, AccessToken token) { method getCorsOptions (line 35) | @OPTIONS method readProfile (line 40) | @GET method updateProfile (line 61) | @PUT method withCors (line 96) | private Cors withCors() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/endpoints/settings/UserSettingsResource.java class UserSettingsResource (line 25) | public class UserSettingsResource { method UserSettingsResource (line 33) | public UserSettingsResource(KeycloakSession session, AccessToken token) { method getCorsOptions (line 38) | @OPTIONS method readSettings (line 43) | @GET method writeSettings (line 68) | @PUT method withCors (line 98) | private Cors withCors() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/eventpublishing/AcmeEventPublisherEventListener.java class AcmeEventPublisherEventListener (line 17) | @JBossLog method onEvent (line 27) | @Override method enrichUserEvent (line 32) | private Object enrichUserEvent(Event event) { method onEvent (line 36) | @Override method enrichAdminEvent (line 41) | private Object enrichAdminEvent(AdminEvent event, boolean includeRepre... method close (line 45) | @Override class Factory (line 50) | @AutoService(EventListenerProviderFactory.class) method getId (line 55) | @Override method create (line 60) | @Override // return singleton instance, create new AcmeAuditListener... method init (line 65) | @Override method createNatsPublisher (line 76) | private NatsEventPublisher createNatsPublisher(Config.Scope config) { method postInit (line 90) | @Override // we could init our provider with information from other ... method close (line 93) | @Override // close resources if necessary method getOperationalInfo (line 100) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/eventpublishing/EventPublisher.java type EventPublisher (line 5) | public interface EventPublisher { method publish (line 7) | void publish(String topic, Object event); method getOperationalInfo (line 9) | Map getOperationalInfo(); method init (line 11) | void init(); method close (line 13) | void close(); FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/eventpublishing/NatsEventPublisher.java class NatsEventPublisher (line 13) | @JBossLog method publish (line 25) | public void publish(String subject, Object event) { method getOperationalInfo (line 46) | public Map getOperationalInfo() { method getStatus (line 50) | public String getStatus() { method init (line 57) | public void init() { method close (line 72) | public void close() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/eventpublishing/NoopPublisher.java class NoopPublisher (line 7) | @JBossLog method publish (line 10) | @Override method getOperationalInfo (line 15) | @Override method init (line 20) | @Override method close (line 25) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/health/CustomHealthChecks.java class CustomHealthChecks (line 26) | @JBossLog method serverCheck (line 40) | @Produces FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/health/CustomReadinessCheck.java class CustomReadinessCheck (line 11) | @Readiness method call (line 18) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/idp/azure/CustomAzureADGroupMapper.java class CustomAzureADGroupMapper (line 36) | @JBossLog method supportsSyncMode (line 60) | @Override method getConfigProperties (line 65) | @Override method getId (line 70) | @Override method getCompatibleProviders (line 75) | @Override method getDisplayCategory (line 80) | @Override method getDisplayType (line 85) | @Override method getHelpText (line 90) | @Override method importNewUser (line 95) | @Override method updateBrokeredUser (line 100) | @Override method updateGroupsIfNecessary (line 105) | private void updateGroupsIfNecessary(KeycloakSession session, RealmMod... method fetchGroupListFromMsGraphApi (line 177) | private AADGroupList fetchGroupListFromMsGraphApi(KeycloakSession sess... method queryMsGraphApi (line 195) | private SimpleHttpRequest queryMsGraphApi(KeycloakSession session, Str... class AADData (line 203) | @Data method setData (line 208) | @JsonAnySetter class AADGroupInfo (line 214) | @Data class AADGroupList (line 225) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/idp/azure/CustomEntraIdProfileMapper.java class CustomEntraIdProfileMapper (line 31) | @JBossLog method supportsSyncMode (line 55) | @Override method getConfigProperties (line 60) | @Override method getId (line 65) | @Override method getCompatibleProviders (line 70) | @Override method getDisplayCategory (line 75) | @Override method getDisplayType (line 80) | @Override method getHelpText (line 85) | @Override method importNewUser (line 90) | @Override method updateBrokeredUser (line 95) | @Override method updateProfileIfNecessary (line 100) | private void updateProfileIfNecessary(KeycloakSession session, RealmMo... method updateLocaleInformation (line 123) | protected void updateLocaleInformation(RealmModel realm, UserModel use... method updatePhoneInformation (line 143) | protected void updatePhoneInformation(UserModel user, GraphApiData gra... method fetchProfileFromMsGraphApi (line 158) | private GraphApiData fetchProfileFromMsGraphApi(KeycloakSession sessio... method queryMsGraphApi (line 177) | private SimpleHttpRequest queryMsGraphApi(KeycloakSession session, Str... class GraphApiData (line 184) | @Data method setData (line 191) | @JsonAnySetter class EntraIdPhone (line 197) | @Data method setData (line 204) | @JsonAnySetter FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/idp/brokering/RestrictBrokeredUserMapper.java class RestrictBrokeredUserMapper (line 25) | @JBossLog method getId (line 49) | @Override method getCompatibleProviders (line 54) | @Override method getDisplayCategory (line 59) | @Override method getDisplayType (line 64) | @Override method getHelpText (line 69) | @Override method getConfigProperties (line 74) | @Override method supportsSyncMode (line 79) | @Override method create (line 84) | public IdentityProviderMapper create(KeycloakSession session) { method preprocessFederatedIdentity (line 88) | @Override method createErrorPageResponse (line 103) | private static Response createErrorPageResponse(KeycloakSession sessio... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/idp/linking/AcmeIdpLinkAction.java class AcmeIdpLinkAction (line 29) | public class AcmeIdpLinkAction extends IdpLinkAction { method getDisplayText (line 31) | @Override method requiredActionChallenge (line 36) | @Override method isAllowAccountLinkingForcedFor (line 82) | protected boolean isAllowAccountLinkingForcedFor(RealmModel realm, Cli... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/idp/oidc/AcmeOidcIdentityProvider.java class AcmeOidcIdentityProvider (line 19) | public class AcmeOidcIdentityProvider extends OIDCIdentityProvider { method AcmeOidcIdentityProvider (line 21) | public AcmeOidcIdentityProvider(KeycloakSession session, OIDCIdentityP... method extractIdentity (line 25) | @Override class Factory (line 36) | public static class Factory extends OIDCIdentityProviderFactory { method create (line 38) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/idp/social/linkedin/LinkedInUserProfileImportIdpMapper.java class LinkedInUserProfileImportIdpMapper (line 28) | @JBossLog method getId (line 34) | @Override method getCompatibleProviders (line 39) | @Override method getDisplayCategory (line 44) | @Override method getDisplayType (line 49) | @Override method getHelpText (line 54) | @Override method importNewUser (line 59) | @Override method updateBrokeredUser (line 65) | @Override type Action (line 71) | enum Action { method updateUser (line 75) | private void updateUser(RealmModel realm, UserModel user, BrokeredIden... method getConfigProperties (line 97) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/infinispan/CustomInfinispanUserSessionProviderFactory.java class CustomInfinispanUserSessionProviderFactory (line 19) | @JBossLog method create (line 23) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/jpa/CustomQuarkusJpaConnectionProviderFactory.java class CustomQuarkusJpaConnectionProviderFactory (line 12) | @JBossLog method getEntityManagerFactory (line 31) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/metrics/KeycloakMetric.java class KeycloakMetric (line 6) | @Getter FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/metrics/KeycloakMetricAccessor.java type KeycloakMetricAccessor (line 3) | public interface KeycloakMetricAccessor { method getMetricValue (line 5) | Double getMetricValue(String metricKey); FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/metrics/KeycloakMetricStore.java class KeycloakMetricStore (line 24) | @JBossLog method KeycloakMetricStore (line 40) | public KeycloakMetricStore(KeycloakSessionFactory sessionFactory, Mete... method getMetricValue (line 46) | public Double getMetricValue(String metricKey) { method isRefreshNecessary (line 67) | private boolean isRefreshNecessary() { method refreshMetricsIfNecessary (line 77) | private void refreshMetricsIfNecessary() { method refreshMetrics (line 92) | private Map refreshMetrics() { method collectCustomRealmMetricsIntoBuffer (line 114) | private void collectCustomRealmMetricsIntoBuffer(KeycloakSession sessi... method registerCustomMetricIfMissing (line 154) | private String registerCustomMetricIfMissing(KeycloakMetric metric, Ta... method toMetricKey (line 174) | private static String toMetricKey(String metricName, Tags tags) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/metrics/KeycloakMetrics.java class KeycloakMetrics (line 25) | @JBossLog method newKeycloakMetric (line 90) | private static KeycloakMetric newKeycloakMetric(String name, String de... method KeycloakMetrics (line 100) | public KeycloakMetrics(MeterRegistry meterRegistry, KeycloakSessionFac... method collectRealmSessionStats (line 131) | private RealmSessionStats collectRealmSessionStats(KeycloakSession ses... class RealmSessionStats (line 139) | @Data method registerInstanceMetrics (line 146) | public void registerInstanceMetrics() { method getMeterRegistry (line 158) | public MeterRegistry getMeterRegistry() { method removeRealmMetrics (line 162) | public void removeRealmMetrics(RealmModel realm) { method initialize (line 189) | public void initialize() { type Level (line 193) | public enum Level { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/metrics/RealmMetricUpdater.java type RealmMetricUpdater (line 9) | public interface RealmMetricUpdater { method updateMetricValue (line 20) | void updateMetricValue(KeycloakMetric keycloakMetric, MetricUpdateValu... class MetricUpdateValue (line 22) | @Data class MultiMetricUpdateValues (line 28) | class MultiMetricUpdateValues extends MetricUpdateValue value) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/metrics/RealmMetricsUpdater.java type RealmMetricsUpdater (line 6) | public interface RealmMetricsUpdater { method updateGlobalMetrics (line 8) | void updateGlobalMetrics(KeycloakSession session, RealmMetricUpdater m... method updateRealmMetrics (line 10) | void updateRealmMetrics(KeycloakSession session, RealmMetricUpdater me... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/metrics/events/MetricEventListenerProvider.java class MetricEventListenerProvider (line 21) | public class MetricEventListenerProvider implements EventListenerProvider { method MetricEventListenerProvider (line 25) | public MetricEventListenerProvider(MetricEventRecorder recorder) { method onEvent (line 29) | @Override method onEvent (line 34) | @Override method close (line 39) | @Override class Factory (line 44) | @JBossLog method getId (line 50) | @Override method create (line 55) | @Override method init (line 60) | @Override method postInit (line 65) | @Override method lookupMeterRegistry (line 91) | protected MeterRegistry lookupMeterRegistry() { method close (line 95) | @Override class NoopEventListenerProvider (line 101) | private static class NoopEventListenerProvider implements EventListene... method onEvent (line 103) | @Override method onEvent (line 109) | @Override method close (line 115) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/metrics/events/MetricEventRecorder.java class MetricEventRecorder (line 38) | @JBossLog method MetricEventRecorder (line 52) | public MetricEventRecorder(KeycloakMetrics keycloakMetrics) { method registerCustomUserEventHandlers (line 57) | private Map> registerCustomUserEventHandler... method recordEvent (line 78) | public void recordEvent(Event event) { method recordEvent (line 82) | public void recordEvent(AdminEvent event, boolean includeRepresentatio... method recordGenericAdminEvent (line 89) | private void recordGenericAdminEvent(AdminEvent event) { method lookupUserEventHandler (line 101) | public Consumer lookupUserEventHandler(Event event) { method recordOauthUserInfoRequestError (line 105) | protected void recordOauthUserInfoRequestError(Event event) { method recordOauthUserInfoRequest (line 116) | protected void recordOauthUserInfoRequest(Event event) { method recordOauthTokenExchange (line 126) | protected void recordOauthTokenExchange(Event event) { method recordOauthTokenExchangeError (line 136) | protected void recordOauthTokenExchangeError(Event event) { method recordUserLogout (line 146) | protected void recordUserLogout(Event event) { method recordUserLogoutError (line 156) | protected void recordUserLogoutError(Event event) { method recordOauthCodeToTokenError (line 167) | protected void recordOauthCodeToTokenError(Event event) { method recordOauthCodeToToken (line 179) | protected void recordOauthCodeToToken(Event event) { method recordClientLogin (line 190) | protected void recordClientLogin(Event event) { method recordClientLoginError (line 200) | protected void recordClientLoginError(Event event) { method recordOauthTokenRefreshError (line 211) | protected void recordOauthTokenRefreshError(Event event) { method recordOauthTokenRefresh (line 223) | protected void recordOauthTokenRefresh(Event event) { method recordUserRegistrationError (line 233) | protected void recordUserRegistrationError(Event event) { method recordUserRegistration (line 245) | protected void recordUserRegistration(Event event) { method recordUserLoginError (line 255) | protected void recordUserLoginError(Event event) { method recordUserLogin (line 267) | protected void recordUserLogin(Event event) { method recordGenericUserEvent (line 283) | protected void recordGenericUserEvent(Event event) { method getIdentityProvider (line 305) | private String getIdentityProvider(Event event) { method createCounter (line 322) | private Counter createCounter(String name, boolean isAdmin) { method resolveClientId (line 328) | private String resolveClientId(String clientId) { method resolveRealmName (line 335) | private String resolveRealmName(String realmId) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/migration/acmecred/AcmeCredentialModel.java class AcmeCredentialModel (line 12) | public class AcmeCredentialModel extends CredentialModel { method AcmeCredentialModel (line 20) | public AcmeCredentialModel(PasswordCredentialData acmeCredentialData, ... method createFromCredentialModel (line 25) | public static AcmeCredentialModel createFromCredentialModel(Credential... method getAcmeCredentialData (line 47) | public PasswordCredentialData getAcmeCredentialData() { method getAcmeSecretData (line 51) | public PasswordSecretData getAcmeSecretData() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/migration/acmecred/AcmeCredentialProvider.java class AcmeCredentialProvider (line 18) | @JBossLog method AcmeCredentialProvider (line 23) | public AcmeCredentialProvider(KeycloakSession session) { method getType (line 27) | @Override method createCredential (line 32) | @Override method deleteCredential (line 38) | @Override method getCredentialFromModel (line 43) | @Override method getCredentialTypeMetadata (line 53) | @Override method supportsCredentialType (line 75) | @Override method isConfiguredFor (line 82) | @Override method isAcmeCredentialConfigured (line 89) | private boolean isAcmeCredentialConfigured(UserModel user) { method isValid (line 93) | @Override method migrateCredential (line 122) | protected void migrateCredential(RealmModel realm, UserModel user, Str... class Factory (line 136) | @AutoService(CredentialProviderFactory.class) method getId (line 139) | @Override method create (line 144) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/migration/acmecred/AcmePasswordValidator.java class AcmePasswordValidator (line 10) | public class AcmePasswordValidator { method validateLegacyPassword (line 12) | public static boolean validateLegacyPassword(String password, AcmeCred... method verifyPasswordSha1 (line 19) | private static boolean verifyPasswordSha1(String password, String expe... method encodePassword (line 26) | public static String encodePassword(String password, String salt) { method createHashedPassword (line 38) | private static byte[] createHashedPassword(byte[] passwordBytes, byte[... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oauth/client/OauthClientCredentialsTokenManager.java class OauthClientCredentialsTokenManager (line 23) | @JBossLog method getToken (line 47) | public String getToken(KeycloakSession session) { method createTokenCacheKey (line 86) | private String createTokenCacheKey(KeycloakSession session) { method fetchToken (line 92) | protected AccessTokenResponse fetchToken(KeycloakSession session, Stri... method createKeycloakSessionProxy (line 136) | private KeycloakSession createKeycloakSessionProxy(KeycloakSession tar... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oauth/tokenexchange/ApiKeyTokenExchangeProvider.java class ApiKeyTokenExchangeProvider (line 30) | @JBossLog method exchangeClientToClient (line 44) | @Override method exchangeExternalToken (line 86) | @Override method exchangeToIdentityProvider (line 91) | @Override method unsupportedResponse (line 96) | private Response unsupportedResponse() { method supports (line 100) | @Override method close (line 116) | @Override class Factory (line 121) | @AutoService(TokenExchangeProviderFactory.class) method getId (line 124) | @Override method create (line 129) | @Override method order (line 134) | @Override method init (line 141) | @Override method postInit (line 146) | @Override method close (line 151) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oauth/tokenexchange/CustomTokenExchangeProvider.java class CustomTokenExchangeProvider (line 23) | @JBossLog method exchangeClientToClient (line 32) | @Override method exchangeExternalToken (line 37) | @Override method exchangeToIdentityProvider (line 42) | @Override method unsupportedResponse (line 64) | private Response unsupportedResponse() { method supports (line 68) | @Override method close (line 77) | @Override class Factory (line 82) | @AutoService(TokenExchangeProviderFactory.class) method getId (line 87) | @Override method create (line 92) | @Override method order (line 97) | @Override method init (line 104) | @Override method postInit (line 109) | @Override method close (line 114) | @Override method isSupported (line 119) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oauth/tokenexchange/CustomV2TokenExchangeProvider.java class CustomV2TokenExchangeProvider (line 18) | @JBossLog method exchangeClientToOIDCClient (line 21) | @Override class Factory (line 27) | public static class Factory extends StandardTokenExchangeProviderFacto... method create (line 29) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oidc/ageinfo/AgeInfoMapper.java class AgeInfoMapper (line 26) | @AutoService(ProtocolMapper.class) method getId (line 43) | @Override method getDisplayType (line 48) | @Override method getHelpText (line 53) | @Override method getDisplayCategory (line 58) | @Override method getConfigProperties (line 63) | @Override method setClaim (line 68) | @Override method computeAgeClass (line 78) | @VisibleForTesting method parseLocalDate (line 106) | private LocalDate parseLocalDate(String maybeLocalDate) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oidc/authzenclaims/AuthzenClaimMapper.java class AuthzenClaimMapper (line 30) | @JBossLog method getId (line 152) | @Override method getDisplayType (line 157) | @Override method getHelpText (line 162) | @Override method getDisplayCategory (line 167) | @Override method getConfigProperties (line 172) | @Override method setClaim (line 177) | @Override method copyAccessResultToClaim (line 214) | protected void copyAccessResultToClaim(IDToken token, MapConfig config... method copySearchResultToClaim (line 218) | protected void copySearchResultToClaim(IDToken token, MapConfig config... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oidc/opaclaims/OpaClaimMapper.java class OpaClaimMapper (line 26) | @JBossLog method getId (line 134) | @Override method getDisplayType (line 139) | @Override method getHelpText (line 144) | @Override method getDisplayCategory (line 149) | @Override method getConfigProperties (line 154) | @Override method setClaim (line 159) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oidc/remoteclaims/RemoteOidcMapper.java class RemoteOidcMapper (line 57) | @JBossLog method getDisplayCategory (line 113) | @Override method getDisplayType (line 118) | @Override method getHelpText (line 123) | @Override method getConfigProperties (line 128) | @Override method getId (line 133) | @Override method setClaim (line 138) | @Override method copyClaimsToRoot (line 184) | private boolean copyClaimsToRoot(Object claimValue, String claimName) { method fetchRemoteClaims (line 188) | private Object fetchRemoteClaims(ProtocolMapperModel mappingModel, Use... method createInternalAccessToken (line 215) | private String createInternalAccessToken(UserSessionModel userSession,... method createUri (line 222) | protected String createUri(ProtocolMapperModel mappingModel, UserSessi... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oidc/scopes/OnlyGrantedScopesMapper.java class OnlyGrantedScopesMapper (line 24) | @AutoService(ProtocolMapper.class) method getDisplayCategory (line 39) | @Override method getDisplayType (line 44) | @Override method getHelpText (line 49) | @Override method getConfigProperties (line 54) | @Override method getId (line 59) | @Override method setClaim (line 64) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oidc/userdata/AcmeUserInfoMapper.java class AcmeUserInfoMapper (line 21) | @JBossLog method getDisplayCategory (line 36) | @Override method getDisplayType (line 41) | @Override method getHelpText (line 46) | @Override method getConfigProperties (line 51) | @Override method getId (line 56) | @Override method setClaim (line 61) | protected void setClaim(IDToken token, ProtocolMapperModel mappingMode... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/oidc/wellknown/AcmeOidcWellKnownProvider.java class AcmeOidcWellKnownProvider (line 17) | public class AcmeOidcWellKnownProvider implements WellKnownProvider { method AcmeOidcWellKnownProvider (line 22) | public AcmeOidcWellKnownProvider(KeycloakSession session, OIDCWellKnow... method getConfig (line 27) | @Override method close (line 56) | @Override class Factory (line 65) | @AutoService(WellKnownProviderFactory.class) method create (line 68) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/profile/AcmeUserAttributes.java type AcmeUserAttributes (line 3) | public enum AcmeUserAttributes { method AcmeUserAttributes (line 11) | AcmeUserAttributes(String name) { method getAttributeName (line 15) | public String getAttributeName() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/profile/emailupdate/UpdateEmailRequiredAction.java class UpdateEmailRequiredAction (line 37) | @JBossLog method initiatedActionSupport (line 50) | @Override method evaluateTriggers (line 56) | @Override method requiredActionChallenge (line 72) | @Override method createForm (line 79) | protected Response createForm(RequiredActionContext context, Consumer<... method processAction (line 100) | @Override method close (line 225) | @Override class Factory (line 231) | @AutoService(RequiredActionFactory.class) method create (line 236) | @Override method init (line 241) | @Override method postInit (line 246) | @Override method close (line 251) | @Override method getId (line 256) | @Override method getDisplayText (line 261) | @Override method isOneTimeAction (line 266) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/profile/phonenumber/AcmePhoneValidator.java class AcmePhoneValidator (line 15) | @AutoService(ValidatorFactory.class) method getId (line 51) | @Override method getHelpText (line 56) | @Override method getConfigProperties (line 61) | @Override method doValidate (line 66) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/registration/actiontokens/AcmeExecuteActionsActionTokenHandler.java class AcmeExecuteActionsActionTokenHandler (line 15) | @AutoService(ActionTokenHandlerFactory.class) method startFreshAuthenticationSession (line 18) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/registration/formaction/CustomRegistrationUserCreation.java class CustomRegistrationUserCreation (line 24) | @AutoService(FormActionFactory.class) method getId (line 34) | @Override method getDisplayType (line 39) | @Override method validate (line 44) | @Override method success (line 63) | @Override method buildPage (line 69) | @Override method addCustomDynamicProfileFields (line 77) | private void addCustomDynamicProfileFields(FormContext context, LoginF... class CustomProfile (line 105) | public static class CustomProfile { method CustomProfile (line 109) | public CustomProfile(UserProfileMetadata profileMetadata) { method createAttributes (line 113) | private List createAttributes(UserProfileMetadata p... method getAttributes (line 124) | public List getAttributes() { class CustomAttribute (line 129) | public static class CustomAttribute { method CustomAttribute (line 137) | public CustomAttribute(AttributeMetadata attributeMetadata, String v... method getName (line 143) | public String getName() { method getDisplayName (line 147) | public String getDisplayName() { method isRequired (line 151) | public boolean isRequired() { method isReadOnly (line 155) | public boolean isReadOnly() { method getAutocomplete (line 159) | public String getAutocomplete() { method getValue (line 163) | public String getValue() { method getAnnotations (line 167) | public Map getAnnotations() { method getGroup (line 171) | public String getGroup() { method getGroupDisplayHeader (line 175) | public String getGroupDisplayHeader() { method getGroupDisplayDescription (line 179) | public String getGroupDisplayDescription() { method getGroupAnnotations (line 183) | public Map getGroupAnnotations() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/registration/formaction/WelcomeEmailFormAction.java class WelcomeEmailFormAction (line 29) | @JBossLog method buildPage (line 32) | @Override method validate (line 37) | @Override method success (line 42) | @Override method getUserDisplayName (line 73) | private String getUserDisplayName(UserModel user) { method requiresUser (line 85) | @Override method configuredFor (line 91) | @Override method setRequiredActions (line 96) | @Override method close (line 101) | @Override class Factory (line 106) | @AutoService(FormActionFactory.class) method getId (line 113) | @Override method getDisplayType (line 118) | @Override method getHelpText (line 123) | @Override method getReferenceCategory (line 128) | @Override method isConfigurable (line 133) | @Override method getRequirementChoices (line 138) | @Override method isUserSetupAllowed (line 143) | @Override method getConfigProperties (line 148) | @Override method create (line 153) | @Override method init (line 158) | @Override method postInit (line 163) | @Override method close (line 168) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/saml/AcmeSamlAuthenticationPreprocessor.java class AcmeSamlAuthenticationPreprocessor (line 18) | @AutoService(SamlAuthenticationPreprocessor.class) method getId (line 21) | @Override method beforeProcessingLoginRequest (line 26) | @Override method beforeProcessingLogoutRequest (line 31) | @Override method beforeSendingLoginRequest (line 36) | @Override method beforeSendingLogoutRequest (line 41) | @Override method beforeProcessingLoginResponse (line 46) | @Override method beforeSendingResponse (line 51) | @Override method create (line 56) | @Override method init (line 61) | @Override method postInit (line 66) | @Override method close (line 71) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/saml/brokering/AcmeSamlRoleImporter.java class AcmeSamlRoleImporter (line 28) | @AutoService(IdentityProviderMapper.class) method supportsSyncMode (line 72) | @Override method getConfigProperties (line 77) | @Override method getId (line 82) | @Override method getCompatibleProviders (line 87) | @Override method getDisplayCategory (line 92) | @Override method getDisplayType (line 97) | @Override method getHelpText (line 102) | @Override method importNewUser (line 107) | @Override method getRolesForUser (line 117) | private List getRolesForUser(BrokeredIdentityContext contex... method updateBrokeredUser (line 176) | @Override method applies (line 199) | protected boolean applies(final IdentityProviderMapperModel mapperMode... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/saml/rolelist/AcmeSamlRoleListMapper.java class AcmeSamlRoleListMapper (line 27) | @AutoService(ProtocolMapper.class) method getDisplayCategory (line 87) | @Override method getDisplayType (line 92) | @Override method getHelpText (line 97) | @Override method getConfigProperties (line 102) | @Override method getId (line 107) | @Override method transformAttributeStatement (line 112) | @Override method create (line 158) | public static ProtocolMapperModel create(String name, String samlAttri... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/scheduling/ScheduledTaskProvider.java type ScheduledTaskProvider (line 6) | public interface ScheduledTaskProvider extends Provider { method getScheduledTask (line 8) | ScheduledTask getScheduledTask(); method getInterval (line 10) | long getInterval(); method getTaskName (line 12) | String getTaskName(); FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/scheduling/ScheduledTaskProviderFactory.java class ScheduledTaskProviderFactory (line 9) | @JBossLog method postInit (line 14) | @Override method close (line 28) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/scheduling/ScheduledTaskSpi.java class ScheduledTaskSpi (line 8) | @AutoService(Spi.class) method isInternal (line 11) | @Override method getName (line 16) | @Override method getProviderClass (line 21) | @Override method getProviderFactoryClass (line 26) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/scheduling/tasks/AcmeScheduledTaskProvider.java class AcmeScheduledTaskProvider (line 17) | @JBossLog method getScheduledTask (line 25) | @Override method getInterval (line 44) | @Override method getTaskName (line 49) | @Override method close (line 54) | @Override class Factory (line 59) | @AutoService(ScheduledTaskProviderFactory.class) method getId (line 66) | @Override method create (line 71) | @Override method init (line 76) | @Override method getOperationalInfo (line 82) | @Override method isSupported (line 93) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/security/filter/IpAccessFilter.java class IpAccessFilter (line 26) | @JBossLog method IpAccessFilter (line 41) | public IpAccessFilter() { method createAdminIpFilterRules (line 45) | private PathIpFilterRules createAdminIpFilterRules(Config config) { method makeContextPath (line 74) | private String makeContextPath(String contextPath, String subPath) { method filter (line 81) | @Override method isAdminRequestAllowed (line 99) | private boolean isAdminRequestAllowed() { class PathIpFilterRules (line 112) | @Data method toString (line 121) | public String toString() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/security/friendlycaptcha/FriendlyCaptcha.java class FriendlyCaptcha (line 14) | @Getter method FriendlyCaptcha (line 25) | public FriendlyCaptcha(KeycloakSession session, FriendlyCaptchaConfig ... method FriendlyCaptcha (line 30) | public FriendlyCaptcha(KeycloakSession session) { method configureForm (line 35) | public void configureForm(LoginFormsProvider form, Locale locale) { method isEnabled (line 45) | public boolean isEnabled() { method verifySolution (line 49) | public boolean verifySolution(String solutionValue) { method verifySolution (line 53) | public VerificationResult verifySolution(MultivaluedMap getConfig(AuthenticatorConfigModel c... method getConfigValue (line 23) | public static String getConfigValue(AuthenticatorConfigModel configMod... method getConfigValue (line 32) | public static String getConfigValue(Map config, String... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/CookieHelper.java class CookieHelper (line 10) | public class CookieHelper { method addCookie (line 26) | public static void addCookie(String name, String value, String path, S... method addCookie (line 67) | public static void addCookie(String name, String value, String path, S... method getCookieValue (line 71) | public static String getCookieValue(KeycloakSession session, String na... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/CookieUtils.java class CookieUtils (line 11) | public class CookieUtils { method parseCookie (line 13) | public static String parseCookie(String cookieName, HttpRequest httpRe... method addCookie (line 21) | public static void addCookie(String cookieName, String cookieValue, Ke... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/CredentialUtils.java class CredentialUtils (line 9) | public class CredentialUtils { method findFirstOtpCredential (line 11) | public static Optional findFirstOtpCredential(UserMod... method findFirstCredentialOfType (line 15) | public static Optional findFirstCredentialOfType(User... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/LocaleUtils.java class LocaleUtils (line 8) | public class LocaleUtils { method extractLocaleWithFallbackToRealmLocale (line 10) | public static Locale extractLocaleWithFallbackToRealmLocale(HttpReques... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/RealmUtils.java class RealmUtils (line 5) | public class RealmUtils { method getDisplayName (line 7) | public static String getDisplayName(RealmModel realm) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/RequiredActionUtils.java class RequiredActionUtils (line 12) | public class RequiredActionUtils { method isCancelApplicationInitiatedAction (line 14) | public static boolean isCancelApplicationInitiatedAction(RequiredActio... method cancelApplicationInitiatedAction (line 21) | public static void cancelApplicationInitiatedAction(RequiredActionCont... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/ScopeUtils.java class ScopeUtils (line 5) | public class ScopeUtils { method hasScope (line 9) | public static boolean hasScope(String requiredScope, String scopeParam) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/TokenUtils.java class TokenUtils (line 28) | public class TokenUtils { method generateServiceAccountAccessToken (line 39) | public static String generateServiceAccountAccessToken(KeycloakSession... method generateAccessToken (line 99) | public static String generateAccessToken(KeycloakSession session, User... method generateAccessToken (line 140) | public static String generateAccessToken(KeycloakSession session, Real... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/UserSessionUtils.java class UserSessionUtils (line 7) | public class UserSessionUtils { method getUserSessionFromAuthenticationSession (line 9) | public static UserSessionModel getUserSessionFromAuthenticationSession... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/support/UserUtils.java class UserUtils (line 5) | public class UserUtils { method deriveDisplayName (line 7) | public static String deriveDisplayName(UserModel user) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/terms/AcmeTermsAndConditionsAction.java class AcmeTermsAndConditionsAction (line 16) | @AutoService(RequiredActionFactory.class) method create (line 31) | @Override method init (line 36) | @Override method postInit (line 41) | @Override method getId (line 46) | @Override method evaluateTriggers (line 52) | @Override method hasUserAcceptedCurrentTerms (line 62) | private boolean hasUserAcceptedCurrentTerms(RequiredActionContext cont... method getActiveTermsId (line 69) | private String getActiveTermsId() { method requiredActionChallenge (line 74) | @Override method processAction (line 82) | @Override method getDisplayText (line 97) | @Override method close (line 102) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/themes/login/AcmeFreeMarkerLoginFormsProvider.java class AcmeFreeMarkerLoginFormsProvider (line 22) | @JBossLog method AcmeFreeMarkerLoginFormsProvider (line 25) | public AcmeFreeMarkerLoginFormsProvider(KeycloakSession session) { method processTemplate (line 29) | @Override class Factory (line 47) | @AutoService(LoginFormsProviderFactory.class) method create (line 50) | @Override method init (line 55) | @Override method postInit (line 60) | @Override method close (line 65) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/themes/login/AcmeLoginBean.java class AcmeLoginBean (line 19) | public class AcmeLoginBean { method AcmeLoginBean (line 24) | public AcmeLoginBean(KeycloakSession session, AuthenticationContextBea... method getAuthenticationSelections (line 35) | public List getAuthenticationSelections... method narrowUserAuthenticationOptions (line 39) | private List narrowUserAuthenticationOp... method getPasswordPolicy (line 65) | public String getPasswordPolicy() { method getLastProcessedAction (line 73) | public String getLastProcessedAction() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/themes/login/AcmeUrlBean.java class AcmeUrlBean (line 11) | public class AcmeUrlBean { method AcmeUrlBean (line 31) | public AcmeUrlBean(KeycloakSession session) { method AcmeUrlBean (line 35) | public AcmeUrlBean(KeycloakSession session, ClientBean clientBean) { method getSiteUrl (line 49) | public String getSiteUrl() { method getTermsUrl (line 53) | public String getTermsUrl() { method getPrivacyUrl (line 58) | public String getPrivacyUrl() { method getImprintUrl (line 63) | public String getImprintUrl() { method getLogoUrl (line 68) | public String getLogoUrl() { method getAccountDeletedUrl (line 73) | public String getAccountDeletedUrl() { method clientAttribute (line 82) | private Optional clientAttribute(String key) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/adhoc/AdhocUserStorageProvider.java class AdhocUserStorageProvider (line 33) | @JBossLog method AdhocUserStorageProvider (line 48) | public AdhocUserStorageProvider(KeycloakSession session, ComponentMode... method close (line 53) | @Override method getUserById (line 58) | @Override method getUserByUsername (line 64) | @Override method getUserByEmail (line 94) | @Override method supportsCredentialType (line 99) | @Override method isConfiguredFor (line 104) | @Override method isValid (line 109) | @Override method addUser (line 117) | @Override method removeUser (line 127) | @Override method sync (line 134) | @Override method syncSince (line 139) | @Override method validate (line 144) | @Override class Factory (line 151) | @SuppressWarnings("rawtypes") method getId (line 155) | @Override method getHelpText (line 160) | @Override method create (line 165) | @Override method create (line 171) | @Override method getConfigProperties (line 176) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/ldap/AcmeLDAPStorageProvider.java class AcmeLDAPStorageProvider (line 24) | public class AcmeLDAPStorageProvider extends LDAPStorageProvider { method AcmeLDAPStorageProvider (line 28) | public AcmeLDAPStorageProvider(LDAPStorageProviderFactory factory, Key... method proxy (line 33) | @Override class Factory (line 39) | @JBossLog method init (line 47) | @Override method create (line 55) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/ldap/AcmeReadonlyLDAPUserModelDelegate.java class AcmeReadonlyLDAPUserModelDelegate (line 11) | public class AcmeReadonlyLDAPUserModelDelegate extends ReadonlyLDAPUserM... method AcmeReadonlyLDAPUserModelDelegate (line 15) | public AcmeReadonlyLDAPUserModelDelegate(UserModel delegate, Pattern l... method setAttribute (line 20) | @Override method removeAttribute (line 32) | @Override method getRootDelegate (line 50) | private UserModel getRootDelegate(UserModel delegate) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/AcmeUserAdapter.java class AcmeUserAdapter (line 12) | public class AcmeUserAdapter extends InMemoryUserAdapter { method AcmeUserAdapter (line 14) | public AcmeUserAdapter(KeycloakSession session, RealmModel realm, Stri... method getFederatedStorage (line 24) | public UserFederatedStorageProvider getFederatedStorage() { method addRequiredAction (line 28) | @Override method addRequiredAction (line 34) | @Override method removeRequiredAction (line 39) | @Override method removeRequiredAction (line 45) | @Override method getRequiredActionsStream (line 50) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/AcmeUserStorageProvider.java class AcmeUserStorageProvider (line 47) | @JBossLog method close (line 76) | @Override method getUserById (line 81) | @Override method getUserByUsername (line 91) | @Override method getUserByEmail (line 97) | @Override method wrap (line 103) | private AcmeUserAdapter wrap(RealmModel realm, AcmeUser acmeUser) { method supportsCredentialType (line 119) | public boolean supportsCredentialType(String credentialType) { method isConfiguredFor (line 124) | public boolean isConfiguredFor(RealmModel realm, UserModel user, Strin... method isValid (line 129) | public boolean isValid(RealmModel realm, UserModel user, CredentialInp... method addUser (line 135) | @Override method removeUser (line 140) | @Override method getUsersCount (line 147) | public int getUsersCount(RealmModel realm, Map params) { method searchForUserStream (line 164) | @Override method getGroupMembersStream (line 181) | @Override method searchForUserByUserAttributeStream (line 186) | @Override method sync (line 193) | @Override method syncSince (line 201) | @Override class Factory (line 206) | @AutoService(UserStorageProviderFactory.class) method getId (line 209) | @Override method getHelpText (line 214) | @Override method create (line 219) | @Override method getConfigProperties (line 232) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/accountclient/AccountClientOptions.java class AccountClientOptions (line 6) | @Data FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/accountclient/AcmeAccountClient.java type AcmeAccountClient (line 3) | public interface AcmeAccountClient { method getUserByUsername (line 5) | AcmeUser getUserByUsername(String username); method getUserByEmail (line 7) | AcmeUser getUserByEmail(String email); method getUserById (line 9) | AcmeUser getUserById(String userId); method verifyCredentials (line 11) | VerifyCredentialsOutput verifyCredentials(String userId, VerifyCredent... method searchForUsers (line 13) | UserSearchOutput searchForUsers(UserSearchInput userSearchInput); FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/accountclient/AcmeUser.java class AcmeUser (line 8) | @Data method AcmeUser (line 22) | public AcmeUser(String id, String username, String email, boolean emai... FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/accountclient/SimpleAcmeAccountClient.java class SimpleAcmeAccountClient (line 12) | @JBossLog method getUserByUsername (line 20) | @Override method createHttpClient (line 34) | protected SimpleHttp createHttpClient(KeycloakSession session) { method getUserByEmail (line 45) | @Override method getUserById (line 58) | @Override method verifyCredentials (line 70) | @Override method searchForUsers (line 83) | @Override FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/accountclient/UserSearchInput.java class UserSearchInput (line 7) | @Data method UserSearchInput (line 18) | public UserSearchInput(String search, Integer firstResult, Integer max... type UserSearchOptions (line 25) | public enum UserSearchOptions { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/accountclient/UserSearchOutput.java class UserSearchOutput (line 5) | public class UserSearchOutput { method getUsers (line 11) | public List getUsers() { method getCount (line 15) | public int getCount() { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/accountclient/VerifyCredentialsInput.java class VerifyCredentialsInput (line 6) | @Data method VerifyCredentialsInput (line 11) | public VerifyCredentialsInput(String password) { FILE: keycloak/extensions/src/main/java/com/github/thomasdarimont/keycloak/custom/userstorage/remote/accountclient/VerifyCredentialsOutput.java class VerifyCredentialsOutput (line 6) | @Data method VerifyCredentialsOutput (line 12) | public VerifyCredentialsOutput(boolean valid) { FILE: keycloak/extensions/src/main/resources/my-script-authenticator.js function authenticate (line 3) | function authenticate(context) { FILE: keycloak/extensions/src/test/java/com/github/thomasdarimont/keycloak/custom/BoostrapTest.java class BoostrapTest (line 6) | public class BoostrapTest { method shouldRunAsUnitTest (line 8) | @Test FILE: keycloak/extensions/src/test/java/com/github/thomasdarimont/keycloak/custom/KeycloakEnvironment.java class KeycloakEnvironment (line 10) | @Slf4j method local (line 27) | public KeycloakEnvironment local() { method custom (line 34) | public KeycloakEnvironment custom(String authServerUrl, String adminUs... method start (line 44) | public void start() { method stop (line 71) | public void stop() { method getKeycloak (line 81) | public KeycloakContainer getKeycloak() { method getKeycloakConfigCli (line 85) | public GenericContainer getKeycloakConfigCli() { method getAdminClient (line 89) | public Keycloak getAdminClient() { method getTokenService (line 93) | public TokenService getTokenService() { method getClientProxy (line 97) | public T getClientProxy(Class iface) { method getAuthServerUrl (line 101) | public String getAuthServerUrl() { method setAuthServerUrl (line 105) | public KeycloakEnvironment setAuthServerUrl(String authServerUrl) { method getAdminUsername (line 110) | public String getAdminUsername() { method setAdminUsername (line 114) | public KeycloakEnvironment setAdminUsername(String adminUsername) { method getAdminPassword (line 119) | public String getAdminPassword() { method setAdminPassword (line 123) | public KeycloakEnvironment setAdminPassword(String adminPassword) { method getMode (line 128) | public Mode getMode() { method setMode (line 132) | public void setMode(Mode mode) { method isRunConfigCli (line 136) | public boolean isRunConfigCli() { method setRunConfigCli (line 140) | public void setRunConfigCli(boolean runConfigCli) { type Mode (line 144) | enum Mode { FILE: keycloak/extensions/src/test/java/com/github/thomasdarimont/keycloak/custom/KeycloakIntegrationTest.java class KeycloakIntegrationTest (line 31) | @Slf4j method beforeAll (line 42) | @BeforeAll method afterAll (line 47) | @AfterAll method ageInfoMapperShouldAddAgeClassClaim (line 52) | @Test method auditListenerShouldPrintLogMessage (line 89) | @Test method pingResourceShouldBeAccessibleForUser (line 114) | @Test type CustomResources (line 139) | interface CustomResources { method ping (line 141) | @GET FILE: keycloak/extensions/src/test/java/com/github/thomasdarimont/keycloak/custom/KeycloakTestSupport.java class KeycloakTestSupport (line 31) | @Slf4j method createKeycloakContainer (line 40) | public static KeycloakContainer createKeycloakContainer() { method createKeycloakContainer (line 44) | public static KeycloakContainer createKeycloakContainer(String realmIm... method createKeycloakContainer (line 48) | public static KeycloakContainer createKeycloakContainer(String imageNa... method getResteasyWebTarget (line 68) | public static ResteasyWebTarget getResteasyWebTarget(KeycloakContainer... method createOrUpdateTestUser (line 73) | public static UserRef createOrUpdateTestUser(RealmResource realm, Stri... method createKeycloakConfigCliContainer (line 104) | public static GenericContainer createKeycloakConfigCliContainer(Key... class UserRef (line 131) | @Data class CustomKeycloak (line 138) | @Getter method start (line 147) | public void start() { method followOutput (line 151) | @Override FILE: keycloak/misc/custom-keycloak-server/src/main/java/demo/events/MyEventListener.java class MyEventListener (line 12) | @AutoService(EventListenerProviderFactory.class) method getId (line 15) | @Override method onEvent (line 20) | @Override method onEvent (line 25) | @Override method create (line 30) | @Override method init (line 35) | @Override method postInit (line 39) | @Override method close (line 43) | @Override FILE: keycloak/patches/keycloak-model-infinispan-patch/src/main/java/org/keycloak/models/sessions/infinispan/CacheDecorators.java class CacheDecorators (line 7) | public class CacheDecorators { method CacheDecorators (line 12) | public CacheDecorators() { method localCache (line 15) | public static AdvancedCache localCache(Cache cache) { method skipCacheLoaders (line 19) | public static AdvancedCache skipCacheLoaders(Cache ... method skipCacheStore (line 23) | public static AdvancedCache skipCacheStore(Cache ca... FILE: keycloak/patches/keycloak-model-infinispan-patch/src/main/java/org/keycloak/patch/infinispan/keymappers/CustomDefaultTwoWayKey2StringMapper.java class CustomDefaultTwoWayKey2StringMapper (line 17) | public class CustomDefaultTwoWayKey2StringMapper implements TwoWayKey2St... method getStringMapping (line 35) | @Override method getKeyMapping (line 70) | @Override method isSupportedType (line 108) | @Override method generateString (line 113) | private String generateString(char identifier, String s) { method isPrimitive (line 117) | private static boolean isPrimitive(Class key) { FILE: keycloak/patches/wildfly-clustering-infinispan-extension-patch-25.0.x/src/main/java/org/jboss/as/clustering/infinispan/subsystem/InfinispanSubsystemXMLReader.java class InfinispanSubsystemXMLReader (line 64) | @SuppressWarnings({ "deprecation", "static-method" }) method InfinispanSubsystemXMLReader (line 69) | InfinispanSubsystemXMLReader(InfinispanSchema schema) { method readElement (line 73) | @Override method parseContainer (line 104) | private void parseContainer(XMLExtendedStreamReader reader, PathAddres... method parseTransport (line 313) | private void parseTransport(XMLExtendedStreamReader reader, PathAddres... method parseLocalCache (line 400) | private void parseLocalCache(XMLExtendedStreamReader reader, PathAddre... method parseReplicatedCache (line 416) | private void parseReplicatedCache(XMLExtendedStreamReader reader, Path... method parseScatteredCache (line 432) | private void parseScatteredCache(XMLExtendedStreamReader reader, PathA... method parseDistributedCache (line 461) | private void parseDistributedCache(XMLExtendedStreamReader reader, Pat... method parseInvalidationCache (line 519) | private void parseInvalidationCache(XMLExtendedStreamReader reader, Pa... method parseCacheAttribute (line 535) | private void parseCacheAttribute(XMLExtendedStreamReader reader, int i... method parseSegmentedCacheAttribute (line 608) | private void parseSegmentedCacheAttribute(XMLExtendedStreamReader read... method parseClusteredCacheAttribute (line 630) | private void parseClusteredCacheAttribute(XMLExtendedStreamReader read... method parseCacheElement (line 665) | private void parseCacheElement(XMLExtendedStreamReader reader, PathAdd... method parseSharedStateCacheElement (line 780) | private void parseSharedStateCacheElement(XMLExtendedStreamReader read... method parsePartitionHandling (line 812) | private void parsePartitionHandling(XMLExtendedStreamReader reader, Pa... method parseStateTransfer (line 833) | private void parseStateTransfer(XMLExtendedStreamReader reader, PathAd... method parseBackups (line 874) | private void parseBackups(XMLExtendedStreamReader reader, PathAddress ... method parseBackup (line 894) | private void parseBackup(XMLExtendedStreamReader reader, PathAddress b... method parseBackupFor (line 960) | private void parseBackupFor(XMLExtendedStreamReader reader, PathAddres... method parseLocking (line 984) | private void parseLocking(XMLExtendedStreamReader reader, PathAddress ... method parseTransaction (line 1017) | private void parseTransaction(XMLExtendedStreamReader reader, PathAddr... method parseEviction (line 1062) | private void parseEviction(XMLExtendedStreamReader reader, PathAddress... method parseExpiration (line 1094) | private void parseExpiration(XMLExtendedStreamReader reader, PathAddre... method parseIndexing (line 1123) | private void parseIndexing(XMLExtendedStreamReader reader, PathAddress... method parseHeapMemory (line 1155) | private void parseHeapMemory(XMLExtendedStreamReader reader, PathAddre... method parseBinaryMemory (line 1178) | private void parseBinaryMemory(XMLExtendedStreamReader reader, PathAdd... method parseOffHeapMemory (line 1190) | private void parseOffHeapMemory(XMLExtendedStreamReader reader, PathAd... method parseBinaryMemoryAttribute (line 1217) | private void parseBinaryMemoryAttribute(XMLExtendedStreamReader reader... method parseMemoryAttribute (line 1231) | private void parseMemoryAttribute(XMLExtendedStreamReader reader, int ... method parseCustomStore (line 1245) | private void parseCustomStore(XMLExtendedStreamReader reader, PathAddr... method parseFileStore (line 1277) | private void parseFileStore(XMLExtendedStreamReader reader, PathAddres... method parseRemoteStore (line 1309) | private void parseRemoteStore(XMLExtendedStreamReader reader, PathAddr... method parseHotRodStore (line 1385) | private void parseHotRodStore(XMLExtendedStreamReader reader, PathAddr... method parseJDBCStore (line 1416) | private void parseJDBCStore(XMLExtendedStreamReader reader, PathAddres... method parseLegacyJDBCStore (line 1442) | private void parseLegacyJDBCStore(XMLExtendedStreamReader reader, Path... method parseBinaryKeyedJDBCStore (line 1499) | private void parseBinaryKeyedJDBCStore(XMLExtendedStreamReader reader,... method parseStringKeyedJDBCStore (line 1525) | private void parseStringKeyedJDBCStore(XMLExtendedStreamReader reader,... method parseMixedKeyedJDBCStore (line 1551) | private void parseMixedKeyedJDBCStore(XMLExtendedStreamReader reader, ... method parseJDBCStoreAttributes (line 1581) | private void parseJDBCStoreAttributes(XMLExtendedStreamReader reader, ... method parseJDBCStoreBinaryTable (line 1616) | private void parseJDBCStoreBinaryTable(XMLExtendedStreamReader reader,... method parseJDBCStoreStringTable (line 1638) | private void parseJDBCStoreStringTable(XMLExtendedStreamReader reader,... method parseJDBCStoreTableAttribute (line 1660) | private void parseJDBCStoreTableAttribute(XMLExtendedStreamReader read... method parseJDBCStoreTableElements (line 1693) | private void parseJDBCStoreTableElements(XMLExtendedStreamReader reade... method parseJDBCStoreColumn (line 1723) | private void parseJDBCStoreColumn(XMLExtendedStreamReader reader, Colu... method removeStoreOperations (line 1743) | private void removeStoreOperations(PathAddress storeAddress, Map ... method parseScheduledThreadPool (line 1887) | private

... method parseScheduledThreadPool (line 1887) | private

... method parseScheduledThreadPool (line 1872) | private

commandLine) { method createFolderIfMissing (line 372) | private static void createFolderIfMissing(String folderPath) { method getRootCALocation (line 380) | private static String getRootCALocation() throws IOException { FILE: stop.java class start (line 17) | class start { method main (line 23) | public static void main(String[] args) throws IOException{ FILE: tools/session-generator/.mvn/wrapper/MavenWrapperDownloader.java class MavenWrapperDownloader (line 22) | public class MavenWrapperDownloader { method main (line 49) | public static void main(String args[]) { method downloadFileFromURL (line 98) | private static void downloadFileFromURL(String urlString, File destina... FILE: tools/session-generator/src/main/java/com/github/thomasdarimont/keycloak/tools/sessiongenerator/SessionGeneratorApplication.java class SessionGeneratorApplication (line 37) | @Slf4j method main (line 41) | public static void main(String[] args) { method clr (line 45) | @Bean method deleteOfflineSession (line 60) | private boolean deleteOfflineSession(String issuerUri, String adminUri... method getAdminSvcAccessToken (line 82) | private static String getAdminSvcAccessToken(String issuerUri) { method generateOfflineSessions (line 102) | private static void generateOfflineSessions(String issuerUri, int sess... FILE: tools/session-generator/src/test/java/com/github/thomasdarimont/keycloak/tools/sessiongenerator/SessionGeneratorApplicationTests.java class SessionGeneratorApplicationTests (line 6) | @SpringBootTest method contextLoads (line 9) | @Test