【问题标题】:How to set up simplesamlphp to use ADFS 2 as idp如何设置 simplesamlphp 以使用 ADFS 2 作为 idp
【发布时间】:2011-12-07 18:30:51
【问题描述】:

我正在尝试让 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 声明规则中,我有“允许所有用户访问”和转换规则“电子邮件地址 -> 名称 ID”

任何想法如何进行?

【问题讨论】:

  • 您是否在 ADFS 中将 simpleSAML 设置为“索赔提供者”或“依赖方”?您为 simpleSAML 联合元数据地址使用了什么 URL?

标签: php saml adfs2.0 federated-identity saml-2.0


【解决方案1】:

实际问题在于,在设置 DNS 记录时,我创建了一个 CNAME fs.example.com 到 dc.exampledomain.com。将CNAME记录替换为A记录后认证通过。

这并没有解决整个问题,但回答了卡住的部分:)

我还需要将 SHA-1 设置为依赖方属性中的安全哈希算法,而不是 SHA-256。

【讨论】:

    猜你喜欢
    • 2015-02-10
    • 2013-03-27
    • 1970-01-01
    • 2017-04-09
    • 2018-07-31
    • 2016-09-16
    • 2022-12-23
    • 2017-06-25
    • 2016-09-29
    相关资源
    最近更新 更多