Я настроил несколько SP в saml20-sp-hosted. php, я хочу, чтобы один из моих SP использовал атрибут mail как nameid.
saml20-sp-hosted. php
$metadata['entityId1'] = array (
'entityid1' => 'entityId',
'contacts' =>
array (
0 =>
array (
'contactType' => 'technical',
'givenName' => 'XXX',
'surName' => 'XXX',
'emailAddress' =>
array (
0 => 'XXX@YYY.com',
),
),
),
'metadata-set' => 'saml20-sp-remote',
'attributes' => array('mail', 'sn', 'givenName', 'uid'),
'AssertionConsumerService' =>
array (
0 =>
array (
'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST',
'Location' => 'http://www.XXXYYY.com/SSO/ACS.aspx',
'index' => 0,
),
),
'NameIDFormat' => 'urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress',
);
для указанного выше SP я хочу использовать атрибут «mail» как nameid, но я определил атрибут «uid» в приведенном ниже файле idp, поэтому он перезаписывает атрибут. Если я пытаюсь перезаписать с помощью атрибута mail в файле saml20-sp-hosted. php, он отправляет временный идентификатор имени.
saml20-idp-hosted. php
'authproc' => array(
3 => array(
'class' => 'saml:AttributeNameID',
'attribute' => 'uid',
'Format' => 'urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress',
),
50 => array(
'class' => 'core:AttributeMap',
'mail' => 'Email',
'sn' => 'Lastname',
'givenName' => 'Firstname',
// 'memberOf' => 'Groups',
'uid' => 'Username'
//'cn' => array('name', 'displayName', 'sn'),
),
),