keycloak-service
静的公開メンバ関数 | 静的公開変数類 | 全メンバ一覧
org.keycloak.protocol.saml.mappers.AttributeStatementHelper クラス
org.keycloak.protocol.saml.mappers.AttributeStatementHelper 連携図
Collaboration graph

静的公開メンバ関数

static void addAttribute (AttributeStatementType attributeStatement, ProtocolMapperModel mappingModel, String attributeValue)
 
static void addAttributes (AttributeStatementType attributeStatement, ProtocolMapperModel mappingModel, List< String > attributeValues)
 
static AttributeType createAttributeType (ProtocolMapperModel mappingModel)
 
static void setConfigProperties (List< ProviderConfigProperty > configProperties)
 
static ProtocolMapperModel createAttributeMapper (String name, String userAttribute, String samlAttributeName, String nameFormat, String friendlyName, String mapperId)
 

静的公開変数類

static final String SAML_ATTRIBUTE_NAME = "attribute.name"
 
static final String ATTRIBUTE_STATEMENT_CATEGORY = "AttributeStatement Mapper"
 
static final String FRIENDLY_NAME = "friendly.name"
 
static final String FRIENDLY_NAME_LABEL = "Friendly Name"
 
static final String FRIENDLY_NAME_HELP_TEXT = "Standard SAML attribute setting. An optional, more human-readable form of the attribute's name that can be provided if the actual attribute name is cryptic."
 
static final String SAML_ATTRIBUTE_NAMEFORMAT = "attribute.nameformat"
 
static final String BASIC = "Basic"
 
static final String URI_REFERENCE = "URI Reference"
 
static final String UNSPECIFIED = "Unspecified"
 

詳解

著者
Bill Burke
バージョン
Revision
1

関数詳解

◆ addAttribute()

static void org.keycloak.protocol.saml.mappers.AttributeStatementHelper.addAttribute ( AttributeStatementType  attributeStatement,
ProtocolMapperModel  mappingModel,
String  attributeValue 
)
inlinestatic
49  {
50  AttributeType attribute = createAttributeType(mappingModel);
51  attribute.addAttributeValue(attributeValue);
52  attributeStatement.addAttribute(new AttributeStatementType.ASTChoiceType(attribute));
53  }
static AttributeType createAttributeType(ProtocolMapperModel mappingModel)
Definition: AttributeStatementHelper.java:64

◆ addAttributes()

static void org.keycloak.protocol.saml.mappers.AttributeStatementHelper.addAttributes ( AttributeStatementType  attributeStatement,
ProtocolMapperModel  mappingModel,
List< String >  attributeValues 
)
inlinestatic
56  {
57 
58  AttributeType attribute = createAttributeType(mappingModel);
59  attributeValues.forEach(attribute::addAttributeValue);
60 
61  attributeStatement.addAttribute(new AttributeStatementType.ASTChoiceType(attribute));
62  }
static AttributeType createAttributeType(ProtocolMapperModel mappingModel)
Definition: AttributeStatementHelper.java:64

◆ createAttributeMapper()

static ProtocolMapperModel org.keycloak.protocol.saml.mappers.AttributeStatementHelper.createAttributeMapper ( String  name,
String  userAttribute,
String  samlAttributeName,
String  nameFormat,
String  friendlyName,
String  mapperId 
)
inlinestatic
101  {
102  ProtocolMapperModel mapper = new ProtocolMapperModel();
103  mapper.setName(name);
104  mapper.setProtocolMapper(mapperId);
105  mapper.setProtocol(SamlProtocol.LOGIN_PROTOCOL);
106  Map<String, String> config = new HashMap<String, String>();
107  if (userAttribute != null) config.put(ProtocolMapperUtils.USER_ATTRIBUTE, userAttribute);
108  config.put(SAML_ATTRIBUTE_NAME, samlAttributeName);
109  if (friendlyName != null) {
110  config.put(FRIENDLY_NAME, friendlyName);
111  }
112  if (nameFormat != null) {
113  config.put(SAML_ATTRIBUTE_NAMEFORMAT, nameFormat);
114  }
115  mapper.setConfig(config);
116  return mapper;
117  }
static final String SAML_ATTRIBUTE_NAMEFORMAT
Definition: AttributeStatementHelper.java:43
static final String SAML_ATTRIBUTE_NAME
Definition: AttributeStatementHelper.java:38
static final String FRIENDLY_NAME
Definition: AttributeStatementHelper.java:40

◆ createAttributeType()

static AttributeType org.keycloak.protocol.saml.mappers.AttributeStatementHelper.createAttributeType ( ProtocolMapperModel  mappingModel)
inlinestatic
64  {
65  String attributeName = mappingModel.getConfig().get(SAML_ATTRIBUTE_NAME);
66  AttributeType attribute = new AttributeType(attributeName);
67  String attributeType = mappingModel.getConfig().get(SAML_ATTRIBUTE_NAMEFORMAT);
68  String attributeNameFormat = JBossSAMLURIConstants.ATTRIBUTE_FORMAT_BASIC.get();
69  if ("URI Reference".equals(attributeType)) attributeNameFormat = JBossSAMLURIConstants.ATTRIBUTE_FORMAT_URI.get();
70  else if ("Unspecified".equals(attributeType)) attributeNameFormat = "urn:oasis:names:tc:SAML2.0:attrname-format:unspecified";
71  attribute.setNameFormat(attributeNameFormat);
72  String friendlyName = mappingModel.getConfig().get(FRIENDLY_NAME);
73  if (friendlyName != null && !friendlyName.trim().equals("")) attribute.setFriendlyName(friendlyName);
74  return attribute;
75  }
static final String SAML_ATTRIBUTE_NAMEFORMAT
Definition: AttributeStatementHelper.java:43
static final String SAML_ATTRIBUTE_NAME
Definition: AttributeStatementHelper.java:38
static final String FRIENDLY_NAME
Definition: AttributeStatementHelper.java:40

◆ setConfigProperties()

static void org.keycloak.protocol.saml.mappers.AttributeStatementHelper.setConfigProperties ( List< ProviderConfigProperty >  configProperties)
inlinestatic
77  {
78  ProviderConfigProperty property = new ProviderConfigProperty();
79  property.setName(AttributeStatementHelper.FRIENDLY_NAME);
80  property.setLabel(AttributeStatementHelper.FRIENDLY_NAME_LABEL);
81  property.setHelpText(AttributeStatementHelper.FRIENDLY_NAME_HELP_TEXT);
82  configProperties.add(property);
83  property = new ProviderConfigProperty();
84  property.setName(AttributeStatementHelper.SAML_ATTRIBUTE_NAME);
85  property.setLabel("SAML Attribute Name");
86  property.setHelpText("SAML Attribute Name");
87  configProperties.add(property);
88  property = new ProviderConfigProperty();
89  property.setName(AttributeStatementHelper.SAML_ATTRIBUTE_NAMEFORMAT);
90  property.setLabel("SAML Attribute NameFormat");
91  property.setHelpText("SAML Attribute NameFormat. Can be basic, URI reference, or unspecified.");
92  List<String> types = new ArrayList(3);
93  types.add(AttributeStatementHelper.BASIC);
94  types.add(AttributeStatementHelper.URI_REFERENCE);
95  types.add(AttributeStatementHelper.UNSPECIFIED);
96  property.setType(ProviderConfigProperty.LIST_TYPE);
97  property.setOptions(types);
98  configProperties.add(property);
99 
100  }

メンバ詳解

◆ ATTRIBUTE_STATEMENT_CATEGORY

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.ATTRIBUTE_STATEMENT_CATEGORY = "AttributeStatement Mapper"
static

◆ BASIC

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.BASIC = "Basic"
static

◆ FRIENDLY_NAME

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.FRIENDLY_NAME = "friendly.name"
static

◆ FRIENDLY_NAME_HELP_TEXT

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.FRIENDLY_NAME_HELP_TEXT = "Standard SAML attribute setting. An optional, more human-readable form of the attribute's name that can be provided if the actual attribute name is cryptic."
static

◆ FRIENDLY_NAME_LABEL

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.FRIENDLY_NAME_LABEL = "Friendly Name"
static

◆ SAML_ATTRIBUTE_NAME

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.SAML_ATTRIBUTE_NAME = "attribute.name"
static

◆ SAML_ATTRIBUTE_NAMEFORMAT

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.SAML_ATTRIBUTE_NAMEFORMAT = "attribute.nameformat"
static

◆ UNSPECIFIED

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.UNSPECIFIED = "Unspecified"
static

◆ URI_REFERENCE

final String org.keycloak.protocol.saml.mappers.AttributeStatementHelper.URI_REFERENCE = "URI Reference"
static

このクラス詳解は次のファイルから抽出されました: