Search in sources :

Example 41 with IdentityProviderResource

use of org.keycloak.admin.client.resource.IdentityProviderResource in project keycloak by keycloak.

the class IdentityProviderTest method testRemove.

@Test
public void testRemove() {
    IdentityProviderRepresentation newIdentityProvider = createRep("remove-identity-provider", "saml");
    create(newIdentityProvider);
    IdentityProviderResource identityProviderResource = realm.identityProviders().get("remove-identity-provider");
    assertNotNull(identityProviderResource);
    IdentityProviderRepresentation representation = identityProviderResource.toRepresentation();
    assertNotNull(representation);
    identityProviderResource.remove();
    assertAdminEvents.assertEvent(realmId, OperationType.DELETE, AdminEventPaths.identityProviderPath("remove-identity-provider"), ResourceType.IDENTITY_PROVIDER);
    try {
        realm.identityProviders().get("remove-identity-provider").toRepresentation();
        Assert.fail("Not expected to found");
    } catch (NotFoundException nfe) {
    // Expected
    }
}
Also used : IdentityProviderResource(org.keycloak.admin.client.resource.IdentityProviderResource) IdentityProviderRepresentation(org.keycloak.representations.idm.IdentityProviderRepresentation) NotFoundException(javax.ws.rs.NotFoundException) Test(org.junit.Test)

Example 42 with IdentityProviderResource

use of org.keycloak.admin.client.resource.IdentityProviderResource in project keycloak by keycloak.

the class KcSamlIdPInitiatedSsoTest method resetPrincipalType.

@Before
public void resetPrincipalType() {
    IdentityProviderResource idp = adminClient.realm(REALM_CONS_NAME).identityProviders().get("saml-leaf");
    IdentityProviderRepresentation rep = idp.toRepresentation();
    rep.getConfig().put(SAMLIdentityProviderConfig.NAME_ID_POLICY_FORMAT, JBossSAMLURIConstants.NAMEID_FORMAT_PERSISTENT.get());
    rep.getConfig().put(SAMLIdentityProviderConfig.PRINCIPAL_TYPE, SamlPrincipalType.SUBJECT.name());
    idp.update(rep);
}
Also used : IdentityProviderResource(org.keycloak.admin.client.resource.IdentityProviderResource) IdentityProviderRepresentation(org.keycloak.representations.idm.IdentityProviderRepresentation) Before(org.junit.Before)

Example 43 with IdentityProviderResource

use of org.keycloak.admin.client.resource.IdentityProviderResource in project keycloak by keycloak.

the class KcOidcUsernameTemplateMapperTest method createMapperInIdp.

@Override
protected void createMapperInIdp(IdentityProviderRepresentation idp, IdentityProviderMapperSyncMode syncMode) {
    IdentityProviderMapperRepresentation usernameTemplateMapper = new IdentityProviderMapperRepresentation();
    usernameTemplateMapper.setName("oidc-username-template-mapper");
    usernameTemplateMapper.setIdentityProviderMapper(UsernameTemplateMapper.PROVIDER_ID);
    usernameTemplateMapper.setConfig(ImmutableMap.<String, String>builder().put(IdentityProviderMapperModel.SYNC_MODE, syncMode.toString()).put("template", "${ALIAS}-${CLAIM.user-attribute}").build());
    IdentityProviderResource idpResource = realm.identityProviders().get(idp.getAlias());
    usernameTemplateMapper.setIdentityProviderAlias(bc.getIDPAlias());
    idpResource.addMapper(usernameTemplateMapper).close();
}
Also used : IdentityProviderMapperRepresentation(org.keycloak.representations.idm.IdentityProviderMapperRepresentation) IdentityProviderResource(org.keycloak.admin.client.resource.IdentityProviderResource)

Example 44 with IdentityProviderResource

use of org.keycloak.admin.client.resource.IdentityProviderResource in project keycloak by keycloak.

the class OidcMultipleClaimToRoleMappersTest method createClaimToRoleMapper.

@Override
protected void createClaimToRoleMapper(IdentityProviderRepresentation idp, String claimValue, IdentityProviderMapperSyncMode syncMode) {
    // first mapper that maps attributes the user has - it should perform the mapping to the expected role.
    IdentityProviderMapperRepresentation firstOidcClaimToRoleMapper = new IdentityProviderMapperRepresentation();
    firstOidcClaimToRoleMapper.setName("claim-to-role-mapper");
    firstOidcClaimToRoleMapper.setIdentityProviderMapper(ClaimToRoleMapper.PROVIDER_ID);
    firstOidcClaimToRoleMapper.setConfig(ImmutableMap.<String, String>builder().put(IdentityProviderMapperModel.SYNC_MODE, syncMode.toString()).put(ClaimToRoleMapper.CLAIM, OidcClaimToRoleMapperTest.CLAIM).put(ClaimToRoleMapper.CLAIM_VALUE, claimValue).put(ConfigConstants.ROLE, CLIENT_ROLE_MAPPER_REPRESENTATION).build());
    IdentityProviderResource idpResource = realm.identityProviders().get(idp.getAlias());
    firstOidcClaimToRoleMapper.setIdentityProviderAlias(bc.getIDPAlias());
    idpResource.addMapper(firstOidcClaimToRoleMapper).close();
    // second mapper that maps an external role claim the test user doesn't have - it would normally end up removing the
    // mapped role but it should now check if a previous mapper has already granted the same role.
    IdentityProviderMapperRepresentation secondOidcClaimToRoleMapper = new IdentityProviderMapperRepresentation();
    secondOidcClaimToRoleMapper.setName("external-keycloak-role-mapper");
    secondOidcClaimToRoleMapper.setIdentityProviderMapper(ExternalKeycloakRoleToRoleMapper.PROVIDER_ID);
    secondOidcClaimToRoleMapper.setConfig(ImmutableMap.<String, String>builder().put(IdentityProviderMapperModel.SYNC_MODE, syncMode.toString()).put("external.role", "missing-role").put("role", CLIENT_ROLE_MAPPER_REPRESENTATION).build());
    secondOidcClaimToRoleMapper.setIdentityProviderAlias(bc.getIDPAlias());
    idpResource.addMapper(secondOidcClaimToRoleMapper).close();
    // third mapper (advanced) that maps a claim the test user doesn't have - it would normally end up removing the
    // mapped role but it should now check if a previous mapper has already granted the same role.
    IdentityProviderMapperRepresentation thirdOidcClaimToRoleMapper = new IdentityProviderMapperRepresentation();
    thirdOidcClaimToRoleMapper.setName("advanced-claim-to-role-mapper");
    thirdOidcClaimToRoleMapper.setIdentityProviderMapper(AdvancedClaimToRoleMapper.PROVIDER_ID);
    thirdOidcClaimToRoleMapper.setConfig(ImmutableMap.<String, String>builder().put(IdentityProviderMapperModel.SYNC_MODE, syncMode.toString()).put(AdvancedClaimToRoleMapper.CLAIM_PROPERTY_NAME, CLAIMS_OR_ATTRIBUTES).put(AdvancedClaimToRoleMapper.ARE_CLAIM_VALUES_REGEX_PROPERTY_NAME, Boolean.TRUE.toString()).put(ConfigConstants.ROLE, CLIENT_ROLE_MAPPER_REPRESENTATION).build());
    thirdOidcClaimToRoleMapper.setIdentityProviderAlias(bc.getIDPAlias());
    idpResource.addMapper(thirdOidcClaimToRoleMapper).close();
}
Also used : IdentityProviderMapperRepresentation(org.keycloak.representations.idm.IdentityProviderMapperRepresentation) IdentityProviderResource(org.keycloak.admin.client.resource.IdentityProviderResource)

Example 45 with IdentityProviderResource

use of org.keycloak.admin.client.resource.IdentityProviderResource in project keycloak by keycloak.

the class SocialLoginTest method addAttributeMapper.

private void addAttributeMapper(String name, String jsonField) {
    IdentityProviderResource identityProvider = adminClient.realm(REALM).identityProviders().get(currentTestProvider.id);
    IdentityProviderRepresentation identityProviderRepresentation = identityProvider.toRepresentation();
    // Add birthday mapper
    IdentityProviderMapperRepresentation mapperRepresentation = new IdentityProviderMapperRepresentation();
    mapperRepresentation.setName(name);
    mapperRepresentation.setIdentityProviderAlias(identityProviderRepresentation.getAlias());
    mapperRepresentation.setIdentityProviderMapper(currentTestProvider.id + "-user-attribute-mapper");
    mapperRepresentation.setConfig(ImmutableMap.<String, String>builder().put(IdentityProviderMapperModel.SYNC_MODE, IdentityProviderMapperSyncMode.IMPORT.toString()).put(AbstractJsonUserAttributeMapper.CONF_JSON_FIELD, jsonField).put(AbstractJsonUserAttributeMapper.CONF_USER_ATTRIBUTE, name).build());
    identityProvider.addMapper(mapperRepresentation).close();
}
Also used : IdentityProviderMapperRepresentation(org.keycloak.representations.idm.IdentityProviderMapperRepresentation) IdentityProviderResource(org.keycloak.admin.client.resource.IdentityProviderResource) IdentityProviderRepresentation(org.keycloak.representations.idm.IdentityProviderRepresentation)

Aggregations

IdentityProviderResource (org.keycloak.admin.client.resource.IdentityProviderResource)47 IdentityProviderMapperRepresentation (org.keycloak.representations.idm.IdentityProviderMapperRepresentation)26 IdentityProviderRepresentation (org.keycloak.representations.idm.IdentityProviderRepresentation)22 Test (org.junit.Test)20 Response (javax.ws.rs.core.Response)11 Matchers.containsString (org.hamcrest.Matchers.containsString)10 RealmResource (org.keycloak.admin.client.resource.RealmResource)9 Before (org.junit.Before)6 URL (java.net.URL)4 HashMap (java.util.HashMap)4 MultipartFormDataOutput (org.jboss.resteasy.plugins.providers.multipart.MultipartFormDataOutput)4 ClientsResource (org.keycloak.admin.client.resource.ClientsResource)4 UsersResource (org.keycloak.admin.client.resource.UsersResource)4 ByteArrayInputStream (java.io.ByteArrayInputStream)3 IOException (java.io.IOException)3 URI (java.net.URI)3 List (java.util.List)3 Map (java.util.Map)3 Set (java.util.Set)3 NotFoundException (javax.ws.rs.NotFoundException)3