Package org.keycloak.organization.utils
Class Organizations
java.lang.Object
org.keycloak.organization.utils.Organizations
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringAuthentication session note holding the invitation token that started the flow, so the invitation survives the redirect to an identity provider and the flow reset that follows. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic booleancanManageOrganizationGroup(KeycloakSession session, GroupModel group) static voidcheckEnabled(OrganizationProvider provider, AdminPermissionEvaluator auth) static voidcheckGroupMapperOrgPermission(KeycloakSession session, IdentityProviderMapperModel mapper, AdminPermissionEvaluator auth) static voidfilterOrganizationLinks(IdentityProviderRepresentation rep, KeycloakSession session, AdminPermissionEvaluator auth) static intgetDomainPartsSize(String domain) static StringgetEmailDomain(String email) static StringgetEmailDomain(UserModel user) static OrganizationDomainModelgetMatchingDomain(String domain, OrganizationModel organization) Returns the most specific matching organization domain for the givendomainandorganization.static OrganizationProvidergetProvider(KeycloakSession session) static booleanisEnabled(KeycloakSession session) static booleanstatic booleanisEnabledAndOrganizationsPresent(OrganizationProvider orgProvider) static booleanisOrganizationGroup(GroupModel group) static booleanisReadOnlyOrganizationMember(KeycloakSession session, UserModel delegate) static booleanisRegistrationAllowed(KeycloakSession session, RealmModel realm) static booleanisSameDomain(String domain, String expectedDomain) static booleanisSameDomain(String domain, OrganizationDomainModel model) static InviteOrgActionTokenparseInvitationToken(KeycloakSession session, String tokenString) static InviteOrgActionTokenparseInvitationToken(KeycloakSession session, HttpRequest request) static Consumer<GroupModel>removeGroup(KeycloakSession session, RealmModel realm) static OrganizationModelresolveByDomain(List<OrganizationModel> organizations, String domain) static List<IdentityProviderModel>resolveHomeBroker(KeycloakSession session, UserModel user) static OrganizationModelresolveOrganization(KeycloakSession session) static OrganizationModelresolveOrganization(KeycloakSession session, UserModel user) static OrganizationModelresolveOrganization(KeycloakSession session, UserModel user, String domain) static voidstripOrganizationId(IdentityProviderRepresentation representation) static voidvalidateDomain(String rawDomain) static voidvalidateGroupMapperOrganization(KeycloakSession session, IdentityProviderModel idp, IdentityProviderMapperModel mapper) Validates the organization recorded on an identity provider group mapper.
-
Field Details
-
INVITATION_TOKEN_NOTE
Authentication session note holding the invitation token that started the flow, so the invitation survives the redirect to an identity provider and the flow reset that follows.- See Also:
-
-
Constructor Details
-
Organizations
public Organizations()
-
-
Method Details
-
isOrganizationGroup
-
validateGroupMapperOrganization
public static void validateGroupMapperOrganization(KeycloakSession session, IdentityProviderModel idp, IdentityProviderMapperModel mapper) Validates the organization recorded on an identity provider group mapper. A mapper targeting organization groups applies to exactly one organization, which it must name throughConfigConstants.ORGANIZATION_ID. To map groups of several organizations of a shared identity provider, add one mapper per organization.- Parameters:
session- the Keycloak sessionidp- the identity provider owning the mappermapper- the mapper to validate
-
checkGroupMapperOrgPermission
public static void checkGroupMapperOrgPermission(KeycloakSession session, IdentityProviderMapperModel mapper, AdminPermissionEvaluator auth) -
canManageOrganizationGroup
-
resolveHomeBroker
public static List<IdentityProviderModel> resolveHomeBroker(KeycloakSession session, UserModel user) -
stripOrganizationId
-
filterOrganizationLinks
public static void filterOrganizationLinks(IdentityProviderRepresentation rep, KeycloakSession session, AdminPermissionEvaluator auth) -
removeGroup
-
isEnabled
-
isEnabledAndOrganizationsPresent
-
isEnabledAndOrganizationsPresent
-
checkEnabled
-
parseInvitationToken
public static InviteOrgActionToken parseInvitationToken(KeycloakSession session, HttpRequest request) throws VerificationException - Throws:
VerificationException
-
parseInvitationToken
public static InviteOrgActionToken parseInvitationToken(KeycloakSession session, String tokenString) throws VerificationException - Throws:
VerificationException
-
getDomainPartsSize
-
validateDomain
-
getMatchingDomain
public static OrganizationDomainModel getMatchingDomain(String domain, OrganizationModel organization) Returns the most specific matching organization domain for the givendomainandorganization. When several domains of the organization match (e.g. an exact domain and a parent wildcard, or nested wildcards), the one with the largest number of parts wins.- Parameters:
domain- the domainorganization- the organization- Returns:
- the most specific matching organization domain, or
nullif no match is found
-
isSameDomain
-
isSameDomain
-
getEmailDomain
-
getEmailDomain
-
resolveOrganization
-
resolveOrganization
-
resolveOrganization
public static OrganizationModel resolveOrganization(KeycloakSession session, UserModel user, String domain) -
getProvider
-
isRegistrationAllowed
-
isReadOnlyOrganizationMember
-
resolveByDomain
public static OrganizationModel resolveByDomain(List<OrganizationModel> organizations, String domain)
-