Java Code Examples for org.keycloak.models.ClientModel#setName()
The following examples show how to use
org.keycloak.models.ClientModel#setName() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: MigrateTo1_2_0.java From keycloak with Apache License 2.0 | 6 votes |
public void setupBrokerService(RealmModel realm) { ClientModel client = realm.getClientByClientId(Constants.BROKER_SERVICE_CLIENT_ID); if (client == null) { client = KeycloakModelUtils.createClient(realm, Constants.BROKER_SERVICE_CLIENT_ID); client.setEnabled(true); client.setName("${client_" + Constants.BROKER_SERVICE_CLIENT_ID + "}"); client.setFullScopeAllowed(false); for (String role : Constants.BROKER_SERVICE_ROLES) { RoleModel roleModel = client.getRole(role); if (roleModel != null) continue; roleModel = client.addRole(role); roleModel.setDescription("${role_" + role.toLowerCase().replaceAll("_", "-") + "}"); } } }
Example 2
Source File: SystemClientUtil.java From keycloak with Apache License 2.0 | 6 votes |
/** * @return system client used during usecases when some "metaclient" is needed (EG. For fresh authenticationSession used during actionTokenFlow when email link is opened in new browser) */ public static ClientModel getSystemClient(RealmModel realm) { // Try to return builtin "account" client first ClientModel client = realm.getClientByClientId(Constants.ACCOUNT_MANAGEMENT_CLIENT_ID); if (client != null) { return client; } // Fallback to "system" client client = realm.getClientByClientId(SYSTEM_CLIENT_ID); if (client != null) { return client; } else { // Return system client logger.warnf("Client '%s' not available. Creating system client '%s' for system operations", Constants.ACCOUNT_MANAGEMENT_CLIENT_ID, SYSTEM_CLIENT_ID); client = realm.addClient(SYSTEM_CLIENT_ID); client.setName(SYSTEM_CLIENT_ID); return client; } }
Example 3
Source File: ClientModelTest.java From keycloak with Apache License 2.0 | 6 votes |
private ClientModel setUpClient(RealmModel realm) { ClientModel client = realm.addClient("application"); client.setName("Application"); client.setDescription("Description"); client.setBaseUrl("http://base"); client.setManagementUrl("http://management"); client.setClientId("app-name"); client.setProtocol("openid-connect"); client.addRole("role-1"); client.addRole("role-2"); client.addRole("role-3"); client.addDefaultRole("role-1"); client.addDefaultRole("role-2"); client.addRedirectUri("redirect-1"); client.addRedirectUri("redirect-2"); client.addWebOrigin("origin-1"); client.addWebOrigin("origin-2"); client.registerNode("node1", 10); client.registerNode("10.20.30.40", 50); client.addProtocolMapper(AddressMapper.createAddressMapper()); client.updateClient(); return client; }
Example 4
Source File: RealmManager.java From keycloak with Apache License 2.0 | 6 votes |
protected void setupAdminConsole(RealmModel realm) { ClientModel adminConsole = realm.getClientByClientId(Constants.ADMIN_CONSOLE_CLIENT_ID); if (adminConsole == null) adminConsole = KeycloakModelUtils.createClient(realm, Constants.ADMIN_CONSOLE_CLIENT_ID); adminConsole.setName("${client_" + Constants.ADMIN_CONSOLE_CLIENT_ID + "}"); adminConsole.setRootUrl(Constants.AUTH_ADMIN_URL_PROP); String baseUrl = "/admin/" + realm.getName() + "/console/"; adminConsole.setBaseUrl(baseUrl); adminConsole.addRedirectUri(baseUrl + "*"); adminConsole.setWebOrigins(Collections.singleton("+")); adminConsole.setEnabled(true); adminConsole.setAlwaysDisplayInConsole(false); adminConsole.setPublicClient(true); adminConsole.setFullScopeAllowed(false); adminConsole.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); adminConsole.setAttribute(OIDCConfigAttributes.PKCE_CODE_CHALLENGE_METHOD, "S256"); }
Example 5
Source File: RealmManager.java From keycloak with Apache License 2.0 | 6 votes |
private void setupRealmAdminManagement(RealmModel realm) { if (realm.getName().equals(Config.getAdminRealm())) { return; } // don't need to do this for master realm String realmAdminClientId = getRealmAdminClientId(realm); ClientModel realmAdminClient = realm.getClientByClientId(realmAdminClientId); if (realmAdminClient == null) { realmAdminClient = KeycloakModelUtils.createClient(realm, realmAdminClientId); realmAdminClient.setName("${client_" + realmAdminClientId + "}"); } RoleModel adminRole = realmAdminClient.addRole(AdminRoles.REALM_ADMIN); adminRole.setDescription("${role_" + AdminRoles.REALM_ADMIN + "}"); realmAdminClient.setBearerOnly(true); realmAdminClient.setFullScopeAllowed(false); realmAdminClient.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); for (String r : AdminRoles.ALL_REALM_ROLES) { addAndSetAdminRole(r, realmAdminClient, adminRole); } addQueryCompositeRoles(realmAdminClient); }
Example 6
Source File: RealmManager.java From keycloak with Apache License 2.0 | 6 votes |
public void setupBrokerService(RealmModel realm) { ClientModel client = realm.getClientByClientId(Constants.BROKER_SERVICE_CLIENT_ID); if (client == null) { client = KeycloakModelUtils.createClient(realm, Constants.BROKER_SERVICE_CLIENT_ID); client.setEnabled(true); client.setAlwaysDisplayInConsole(false); client.setName("${client_" + Constants.BROKER_SERVICE_CLIENT_ID + "}"); client.setFullScopeAllowed(false); client.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); for (String role : Constants.BROKER_SERVICE_ROLES) { RoleModel roleModel = client.addRole(role); roleModel.setDescription("${role_"+ role.toLowerCase().replaceAll("_", "-") +"}"); } } }
Example 7
Source File: MigrateTo9_0_0.java From keycloak with Apache License 2.0 | 5 votes |
protected void addAccountConsoleClient(RealmModel realm) { if (realm.getClientByClientId(Constants.ACCOUNT_CONSOLE_CLIENT_ID) == null) { ClientModel client = KeycloakModelUtils.createClient(realm, Constants.ACCOUNT_CONSOLE_CLIENT_ID); client.setName("${client_" + Constants.ACCOUNT_CONSOLE_CLIENT_ID + "}"); client.setEnabled(true); client.setFullScopeAllowed(false); client.setPublicClient(true); client.setDirectAccessGrantsEnabled(false); client.setRootUrl(Constants.AUTH_BASE_URL_PROP); String baseUrl = "/realms/" + realm.getName() + "/account/"; client.setBaseUrl(baseUrl); client.addRedirectUri(baseUrl + "*"); client.setProtocol("openid-connect"); RoleModel role = realm.getClientByClientId(Constants.ACCOUNT_MANAGEMENT_CLIENT_ID).getRole(AccountRoles.MANAGE_ACCOUNT); if (role != null) client.addScopeMapping(role); ProtocolMapperModel audienceMapper = new ProtocolMapperModel(); audienceMapper.setName("audience resolve"); audienceMapper.setProtocol("openid-connect"); audienceMapper.setProtocolMapper("oidc-audience-resolve-mapper"); client.addProtocolMapper(audienceMapper); } }
Example 8
Source File: ClientTokenExchangeSAML2Test.java From keycloak with Apache License 2.0 | 5 votes |
private static void addDirectExchanger(KeycloakSession session) { RealmModel realm = session.realms().getRealmByName(TEST); RoleModel exampleRole = realm.addRole("example"); AdminPermissionManagement management = AdminPermissions.management(session, realm); ClientModel directExchanger = realm.addClient("direct-exchanger"); directExchanger.setName("direct-exchanger"); directExchanger.setClientId("direct-exchanger"); directExchanger.setPublicClient(false); directExchanger.setDirectAccessGrantsEnabled(true); directExchanger.setEnabled(true); directExchanger.setSecret("secret"); directExchanger.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); directExchanger.setFullScopeAllowed(false); // permission for client to client exchange to "target" client management.clients().setPermissionsEnabled(realm.getClientByClientId(SAML_SIGNED_TARGET), true); management.clients().setPermissionsEnabled(realm.getClientByClientId(SAML_ENCRYPTED_TARGET), true); management.clients().setPermissionsEnabled(realm.getClientByClientId(SAML_SIGNED_AND_ENCRYPTED_TARGET), true); management.clients().setPermissionsEnabled(realm.getClientByClientId(SAML_UNSIGNED_AND_UNENCRYPTED_TARGET), true); ClientPolicyRepresentation clientImpersonateRep = new ClientPolicyRepresentation(); clientImpersonateRep.setName("clientImpersonatorsDirect"); clientImpersonateRep.addClient(directExchanger.getId()); ResourceServer server = management.realmResourceServer(); Policy clientImpersonatePolicy = management.authz().getStoreFactory().getPolicyStore().create(clientImpersonateRep, server); management.users().setPermissionsEnabled(true); management.users().adminImpersonatingPermission().addAssociatedPolicy(clientImpersonatePolicy); management.users().adminImpersonatingPermission().setDecisionStrategy(DecisionStrategy.AFFIRMATIVE); UserModel impersonatedUser = session.users().addUser(realm, "impersonated-user"); impersonatedUser.setEnabled(true); session.userCredentialManager().updateCredential(realm, impersonatedUser, UserCredentialModel.password("password")); impersonatedUser.grantRole(exampleRole); }
Example 9
Source File: RealmManager.java From keycloak with Apache License 2.0 | 5 votes |
public void setupAdminCli(RealmModel realm) { ClientModel adminCli = realm.getClientByClientId(Constants.ADMIN_CLI_CLIENT_ID); if (adminCli == null) { adminCli = KeycloakModelUtils.createClient(realm, Constants.ADMIN_CLI_CLIENT_ID); adminCli.setName("${client_" + Constants.ADMIN_CLI_CLIENT_ID + "}"); adminCli.setEnabled(true); adminCli.setAlwaysDisplayInConsole(false); adminCli.setPublicClient(true); adminCli.setFullScopeAllowed(false); adminCli.setStandardFlowEnabled(false); adminCli.setDirectAccessGrantsEnabled(true); adminCli.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); } }
Example 10
Source File: RealmManager.java From keycloak with Apache License 2.0 | 5 votes |
private void createMasterAdminManagement(RealmModel realm) { RealmModel adminRealm; RoleModel adminRole; if (realm.getName().equals(Config.getAdminRealm())) { adminRealm = realm; adminRole = realm.addRole(AdminRoles.ADMIN); RoleModel createRealmRole = realm.addRole(AdminRoles.CREATE_REALM); adminRole.addCompositeRole(createRealmRole); createRealmRole.setDescription("${role_" + AdminRoles.CREATE_REALM + "}"); } else { adminRealm = model.getRealm(Config.getAdminRealm()); adminRole = adminRealm.getRole(AdminRoles.ADMIN); } adminRole.setDescription("${role_"+AdminRoles.ADMIN+"}"); ClientModel realmAdminApp = KeycloakModelUtils.createClient(adminRealm, KeycloakModelUtils.getMasterRealmAdminApplicationClientId(realm.getName())); // No localized name for now realmAdminApp.setName(realm.getName() + " Realm"); realmAdminApp.setBearerOnly(true); realm.setMasterAdminClient(realmAdminApp); for (String r : AdminRoles.ALL_REALM_ROLES) { RoleModel role = realmAdminApp.addRole(r); role.setDescription("${role_"+r+"}"); adminRole.addCompositeRole(role); } addQueryCompositeRoles(realmAdminApp); }
Example 11
Source File: MigrateTo1_2_0.java From keycloak with Apache License 2.0 | 4 votes |
private void setupClientName(ClientModel client) { if (client != null && client.getName() == null) client.setName("${client_" + client.getClientId() + "}"); }
Example 12
Source File: ClientTokenExchangeTest.java From keycloak with Apache License 2.0 | 4 votes |
private static void addDirectExchanger(KeycloakSession session) { RealmModel realm = session.realms().getRealmByName(TEST); RoleModel exampleRole = realm.addRole("example"); AdminPermissionManagement management = AdminPermissions.management(session, realm); ClientModel target = realm.addClient("target"); target.setName("target"); target.setClientId("target"); target.setDirectAccessGrantsEnabled(true); target.setEnabled(true); target.setSecret("secret"); target.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); target.setFullScopeAllowed(false); target.addScopeMapping(exampleRole); ClientModel directExchanger = realm.addClient("direct-exchanger"); directExchanger.setName("direct-exchanger"); directExchanger.setClientId("direct-exchanger"); directExchanger.setPublicClient(false); directExchanger.setDirectAccessGrantsEnabled(true); directExchanger.setEnabled(true); directExchanger.setSecret("secret"); directExchanger.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); directExchanger.setFullScopeAllowed(false); // permission for client to client exchange to "target" client management.clients().setPermissionsEnabled(target, true); ClientPolicyRepresentation clientImpersonateRep = new ClientPolicyRepresentation(); clientImpersonateRep.setName("clientImpersonatorsDirect"); clientImpersonateRep.addClient(directExchanger.getId()); ResourceServer server = management.realmResourceServer(); Policy clientImpersonatePolicy = management.authz().getStoreFactory().getPolicyStore().create(clientImpersonateRep, server); management.users().setPermissionsEnabled(true); management.users().adminImpersonatingPermission().addAssociatedPolicy(clientImpersonatePolicy); management.users().adminImpersonatingPermission().setDecisionStrategy(DecisionStrategy.AFFIRMATIVE); UserModel impersonatedUser = session.users().addUser(realm, "impersonated-user"); impersonatedUser.setEnabled(true); session.userCredentialManager().updateCredential(realm, impersonatedUser, UserCredentialModel.password("password")); impersonatedUser.grantRole(exampleRole); }
Example 13
Source File: RealmManager.java From keycloak with Apache License 2.0 | 4 votes |
private void setupAccountManagement(RealmModel realm) { ClientModel accountClient = realm.getClientByClientId(Constants.ACCOUNT_MANAGEMENT_CLIENT_ID); if (accountClient == null) { accountClient = KeycloakModelUtils.createClient(realm, Constants.ACCOUNT_MANAGEMENT_CLIENT_ID); accountClient.setName("${client_" + Constants.ACCOUNT_MANAGEMENT_CLIENT_ID + "}"); accountClient.setEnabled(true); accountClient.setAlwaysDisplayInConsole(false); accountClient.setFullScopeAllowed(false); accountClient.setRootUrl(Constants.AUTH_BASE_URL_PROP); String baseUrl = "/realms/" + realm.getName() + "/account/"; accountClient.setBaseUrl(baseUrl); accountClient.addRedirectUri(baseUrl + "*"); accountClient.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); for (String role : AccountRoles.ALL) { accountClient.addDefaultRole(role); RoleModel roleModel = accountClient.getRole(role); roleModel.setDescription("${role_" + role + "}"); } RoleModel manageAccountLinks = accountClient.addRole(AccountRoles.MANAGE_ACCOUNT_LINKS); manageAccountLinks.setDescription("${role_" + AccountRoles.MANAGE_ACCOUNT_LINKS + "}"); RoleModel manageAccount = accountClient.getRole(AccountRoles.MANAGE_ACCOUNT); manageAccount.addCompositeRole(manageAccountLinks); RoleModel viewAppRole = accountClient.addRole(AccountRoles.VIEW_APPLICATIONS); viewAppRole.setDescription("${role_" + AccountRoles.VIEW_APPLICATIONS + "}"); RoleModel viewConsentRole = accountClient.addRole(AccountRoles.VIEW_CONSENT); viewConsentRole.setDescription("${role_" + AccountRoles.VIEW_CONSENT + "}"); RoleModel manageConsentRole = accountClient.addRole(AccountRoles.MANAGE_CONSENT); manageConsentRole.setDescription("${role_" + AccountRoles.MANAGE_CONSENT + "}"); manageConsentRole.addCompositeRole(viewConsentRole); ClientModel accountConsoleClient = realm.getClientByClientId(Constants.ACCOUNT_CONSOLE_CLIENT_ID); if (accountConsoleClient == null) { accountConsoleClient = KeycloakModelUtils.createClient(realm, Constants.ACCOUNT_CONSOLE_CLIENT_ID); accountConsoleClient.setName("${client_" + Constants.ACCOUNT_CONSOLE_CLIENT_ID + "}"); accountConsoleClient.setEnabled(true); accountConsoleClient.setAlwaysDisplayInConsole(false); accountConsoleClient.setFullScopeAllowed(false); accountConsoleClient.setPublicClient(true); accountConsoleClient.setDirectAccessGrantsEnabled(false); accountConsoleClient.setRootUrl(Constants.AUTH_BASE_URL_PROP); accountConsoleClient.setBaseUrl(baseUrl); accountConsoleClient.addRedirectUri(baseUrl + "*"); accountConsoleClient.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); accountConsoleClient.addScopeMapping(accountClient.getRole(AccountRoles.MANAGE_ACCOUNT)); ProtocolMapperModel audienceMapper = new ProtocolMapperModel(); audienceMapper.setName(OIDCLoginProtocolFactory.AUDIENCE_RESOLVE); audienceMapper.setProtocol(OIDCLoginProtocol.LOGIN_PROTOCOL); audienceMapper.setProtocolMapper(AudienceResolveProtocolMapper.PROVIDER_ID); accountConsoleClient.addProtocolMapper(audienceMapper); accountConsoleClient.setAttribute(OIDCConfigAttributes.PKCE_CODE_CHALLENGE_METHOD, "S256"); } } }