IDP から SP(ID ブリッジの場合は Unified Access Gateway)への SAML 応答には、SAML 属性を持つ SAML アサーションが含まれています。SAML 属性は、ユーザー名や E メールなどのさまざまなパラメータを参照するように IDP で構成することができます。
SAML を使用するヘッダーベースの認証では、SAML 属性の値をバックエンドのプロキシされた宛先に HTTP ヘッダーとして送信できます。Unified Access Gateway で定義された SAML 属性名は、IDP と同じです。たとえば、ID プロバイダが Name: userName
Value: idmadmin
として定義された属性を持つ場合、Unified Access Gateway の SAML 属性名は "userName"
として定義する必要があります。
IDP で定義された属性と一致しない SAML 属性は無視されます。Unified Access Gateway は、複数の SAML 属性と複数値の SAML 属性の両方をサポートします。ID プロバイダから期待される SAML アサーションのサンプルの抜粋は、ケースごとに以下のようになります。次に例を示します。
1. 複数の SAML 属性に対して IDP から期待される SAML 応答
<saml:AttributeStatement> <saml:Attribute Name="userName" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"> <saml:AttributeValue xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">idmadmin</saml:AttributeValue> </saml:Attribute> <saml:Attribute Name="userEmail" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"> <saml:AttributeValue xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">63ecfabf-a577-46c3-b4fa-caf7ae49a6a3</saml:AttributeValue> </saml:Attribute> </saml:AttributeStatement>
上記の例では、アサーションには "userName"
および "userEmail"
の 2 つの属性が含まれています。ヘッダーベースの認証が、ヘッダー名が "HTTP_USER_NAME"
である "userName"
に対してのみ構成されている場合、ヘッダーは "HTTP_USER_NAME: idmadmin"
として送信されます。ヘッダーベースの認証では "userEmail"
は Unified Access Gateway[] で構成されないため、ヘッダーとして送信されません。
2. 複数値の SAML 属性に対して IDP から期待される SAML 応答
<saml:AttributeStatement> <saml:Attribute Name="group" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"> <saml:AttributeValue xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">All Employees</saml:AttributeValue> <saml:AttributeValue xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">All Contractors</saml:AttributeValue> <saml:AttributeValue xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">All Executives</saml:AttributeValue> <saml:AttributeValue xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xsd:string">All</saml:AttributeValue> </saml:Attribute> </saml:AttributeStatement>
上記の例では、属性 "group"
には "All Employees"
、"All Contractors"
、"All Executives"
、および "All"
の 4 つの値が含まれています。ヘッダーベースの認証が、ヘッダー名が "HTTP_GROUP"
である "group"
に対してのみ構成されている場合、ヘッダーは "HTTP_GROUP: All Employees, All Contractors, All Executives, All"
として送信され、すべての属性値はコンマ区切りのリストとしてヘッダー値に指定されます。