Subsystem documentation / consistency fixes

This commit is contained in:
AFaust
2020-10-21 19:04:26 +02:00
parent a31309296a
commit 4ad55b7a77
5 changed files with 196 additions and 25 deletions

View File

@@ -50,8 +50,8 @@
<property name="active" value="${keycloak.authentication.enabled}" />
<property name="defaultAdministratorUserNameList" value="${keycloak.authentication.defaultAdministratorUserNames}" />
<property name="allowUserNamePasswordLogin" value="${keycloak.authentication.allowUserNamePasswordLogin}" />
<property name="allowGuestLogin" value="${keycloak.authentication.failExpiredUserNamePasswordLoginTokens}" />
<property name="failExpiredTicketTokens" value="${keycloak.authentication.allowGuestLogin}" />
<property name="allowGuestLogin" value="${keycloak.authentication.allowGuestLogin}" />
<property name="failExpiredTicketTokens" value="${keycloak.authentication.failExpiredTicketTokens}" />
<property name="mapAuthorities" value="${keycloak.authentication.mapAuthorities}" />
<property name="mapPersonPropertiesOnLogin" value="${keycloak.authentication.mapPersonPropertiesOnLogin}" />
<property name="deployment" ref="keycloakDeployment" />

View File

@@ -6,7 +6,7 @@ keycloak.authentication.defaultAdministratorUserNames=
keycloak.authentication.allowTicketLogons=true
keycloak.authentication.allowHttpBasicLogon=true
keycloak.authentication.allowUserNamePasswordLogin=true
keycloak.authentication.failExpiredUserNamePasswordLoginTokens=false
keycloak.authentication.failExpiredTicketTokens=false
keycloak.authentication.allowGuestLogin=true
keycloak.authentication.mapAuthorities=true
keycloak.authentication.mapPersonPropertiesOnLogin=true
@@ -118,18 +118,20 @@ keycloak.synchronization.userMapper.default.property.mapEmail=true
keycloak.synchronization.userMapper.default.property.mapEnabledState=true
keycloak.synchronization.userMapper.simpleAttributes.property.enabled=true
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.middleName=cm:middleName
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.organization=cm:organization
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.jobTitle=cm:jobtitle
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.location=cm:location
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.telephone=cm:telephone
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.mobile=cm:mobile
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.companyAddress1=cm:companyaddress1
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.companyAddress2=cm:companyaddress2
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.companyAddress3=cm:companyaddress3
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.companyPostCode=cm:companypostcode
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.companyTelephone=cm:companytelephone
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.companyFax=cm:companyfax
keycloak.synchronization.userMapper.simpleAttributes.property.attributePropertyMappings.map.companyEmail=cm:companyemail
keycloak.synchronization.userMapper.simpleAttributes.property.mapNull=true
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.middleName=cm:middleName
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.organization=cm:organization
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.jobTitle=cm:jobtitle
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.location=cm:location
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.telephone=cm:telephone
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.mobile=cm:mobile
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.companyAddress1=cm:companyaddress1
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.companyAddress2=cm:companyaddress2
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.companyAddress3=cm:companyaddress3
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.companyPostCode=cm:companypostcode
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.companyTelephone=cm:companytelephone
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.companyFax=cm:companyfax
keycloak.synchronization.userMapper.simpleAttributes.property.attributes.map.companyEmail=cm:companyemail
keycloak.synchronization.groupMapper.simpleAttributes.property.enabled=true
keycloak.synchronization.groupMapper.simpleAttributes.property.enabled=true
keycloak.synchronization.groupMapper.simpleAttributes.property.mapNull=true

View File

@@ -37,7 +37,9 @@ public abstract class BaseAttributeProcessor implements InitializingBean
protected NamespaceService namespaceService;
protected Map<String, String> attributePropertyMappings;
protected boolean mapNull;
protected Map<String, String> attributes;
protected Map<String, QName> attributePropertyQNameMappings;
@@ -50,10 +52,10 @@ public abstract class BaseAttributeProcessor implements InitializingBean
{
PropertyCheck.mandatory(this, "namespaceService", this.namespaceService);
if (this.attributePropertyMappings != null && !this.attributePropertyMappings.isEmpty())
if (this.attributes != null && !this.attributes.isEmpty())
{
this.attributePropertyQNameMappings = new HashMap<>();
this.attributePropertyMappings
this.attributes
.forEach((k, v) -> this.attributePropertyQNameMappings.put(k, QName.resolveToQName(this.namespaceService, v)));
}
}
@@ -68,12 +70,21 @@ public abstract class BaseAttributeProcessor implements InitializingBean
}
/**
* @param attributePropertyMappings
* the attributePropertyMappings to set
* @param attributes
* the attributes to set
*/
public void setAttributePropertyMappings(final Map<String, String> attributePropertyMappings)
public void setAttributes(final Map<String, String> attributes)
{
this.attributePropertyMappings = attributePropertyMappings;
this.attributes = attributes;
}
/**
* @param mapNull
* the mapNull to set
*/
public void setMapNull(final boolean mapNull)
{
this.mapNull = mapNull;
}
/**
@@ -124,5 +135,9 @@ public abstract class BaseAttributeProcessor implements InitializingBean
}
nodeDescription.getProperties().put(propertyQName, value);
}
else if (this.mapNull)
{
nodeDescription.getProperties().put(propertyQName, null);
}
}
}