From bba8bfec21d26bc06fe25a3b2ecb827b80fc0fb1 Mon Sep 17 00:00:00 2001 From: Jacek Kowalski <Jacek@jacekk.info> Date: Wed, 28 Jun 2023 10:55:12 +0000 Subject: [PATCH] GitHub Actions: add "contents: write" permission for update-deps job --- src/main/java/org/keycloak/protocol/cas/mappers/AbstractCASProtocolMapper.java | 16 ++++++++++++++++ 1 files changed, 16 insertions(+), 0 deletions(-) diff --git a/src/main/java/org/keycloak/protocol/cas/mappers/AbstractCASProtocolMapper.java b/src/main/java/org/keycloak/protocol/cas/mappers/AbstractCASProtocolMapper.java index 2c19433..6838f6d 100644 --- a/src/main/java/org/keycloak/protocol/cas/mappers/AbstractCASProtocolMapper.java +++ b/src/main/java/org/keycloak/protocol/cas/mappers/AbstractCASProtocolMapper.java @@ -3,8 +3,12 @@ import org.keycloak.Config; import org.keycloak.models.KeycloakSession; import org.keycloak.models.KeycloakSessionFactory; +import org.keycloak.models.ProtocolMapperModel; import org.keycloak.protocol.ProtocolMapper; import org.keycloak.protocol.cas.CASLoginProtocol; +import org.keycloak.protocol.oidc.mappers.OIDCAttributeMapperHelper; + +import java.util.Map; public abstract class AbstractCASProtocolMapper implements ProtocolMapper, CASAttributeMapper { public static final String TOKEN_MAPPER_CATEGORY = "Token mapper"; @@ -35,4 +39,16 @@ public String getDisplayCategory() { return TOKEN_MAPPER_CATEGORY; } + + protected void setMappedAttribute(Map<String, Object> attributes, ProtocolMapperModel mappingModel, Object attributeValue) { + setPlainAttribute(attributes, mappingModel, OIDCAttributeMapperHelper.mapAttributeValue(mappingModel, attributeValue)); + } + + protected void setPlainAttribute(Map<String, Object> attributes, ProtocolMapperModel mappingModel, Object attributeValue) { + String protocolClaim = mappingModel.getConfig().get(OIDCAttributeMapperHelper.TOKEN_CLAIM_NAME); + if (protocolClaim == null || attributeValue == null) { + return; + } + attributes.put(protocolClaim, attributeValue); + } } -- Gitblit v1.9.1