Как настроить simplesamlphp для использования ADFS 2 в качестве idp
Я пытаюсь заставить simplesamlphp 1.8 использовать ADFS 2 в качестве IDP.
Теперь я серьезно застрял при получении диалога аутентификации NTLM браузера, который не принимает никаких логинов (после выбора "Источники проверки подлинности" -> "по умолчанию-sp").
В config/config.php
'default-sp' => array(
'saml:SP',
'privatekey' => 'saml.pem',
'certificate' => 'saml.crt',
'idp' => 'http://fs.example.org/adfs/services/trust',
),
В metadata/saml20-idp-remote.php (Преобразовано из https://fs.example.com/FederationMetadata/2007-06/FederationMetadata.xml с/admin/metadata-converter.php)
$metadata['http://fs.example.com/adfs/services/trust'] = array (
'entityid' => 'http://fs.example.com/adfs/services/trust',
'contacts' =>
array (
),
'metadata-set' => 'saml20-idp-remote',
'SingleSignOnService' =>
array (
0 =>
array (
'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect',
'Location' => 'https://fs.example.com/adfs/ls/',
),
1 =>
array (
'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST',
'Location' => 'https://fs.example.com/adfs/ls/',
),
),
'SingleLogoutService' =>
array (
0 =>
array (
'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect',
'Location' => 'https://fs.example.com/adfs/ls/',
),
1 =>
array (
'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST',
'Location' => 'https://fs.example.com/adfs/ls/',
),
),
'ArtifactResolutionService' =>
array (
),
'keys' =>
array (
0 =>
array (
'encryption' => true,
'signing' => false,
'type' => 'X509Certificate',
'X509Certificate' => 'MIIC3DCCA....',
),
1 =>
array (
'encryption' => false,
'signing' => true,
'type' => 'X509Certificate',
'X509Certificate' => 'MIIC1j....',
),
),
);
В ADFS Утверждает, что у меня есть правила "Разрешить доступ всем пользователям" и правило преобразования "Адрес электронной почты -> Идентификатор имени"
Есть идеи, как действовать дальше?
1 answers
Фактическая проблема заключалась в том, что при настройке записей DNS я создал CNAME fs.example.com чтобы dc.exampledomain.com . После замены записи CNAME на запись прошла аутентификация.
Это не решило весь вопрос, но ответило на застрявшую часть:)
Мне также нужно было установить SHA-1 в качестве безопасного алгоритма хэширования в свойствах проверяющей стороны вместо SHA-256.