【发布时间】:2020-06-26 09:53:36
【问题描述】:
我是 SAML 和 Azure 的新手,但我需要将我的 PHP Web 应用程序与 Azure 集成,我不明白 Azure 名称属性(声明?)如何与 simpleSAMLphp 一起使用。
问题 1 - Azure 中的属性难以读取
这是从 Azure 返回的数据集 - 属性被命名为 HTTP URL:
我可以通过某种方式查看 URL 中每个属性的用途,但有没有办法显示更短且更友好的名称?友好名称是否应该由我们的 Azure 团队提供,或者是否有可以完成的标准翻译?
问题 2 - 我无法读取 Azure 提供的所有属性/声明
我们的 Azure 团队告诉我,他们为我提供了比上图中可见的更多的属性 - 例如。我们的组织,头衔等等,他们已经把这张照片发给我作为证明:
这似乎是 URL 和友好名称/描述的奇怪组合,但我似乎无法从 simpleSAMLphp 读取所有 Azure 属性!?我是否需要以不同于$azure->getAttributes(); 的方式读取(额外?)属性?
我的尝试
我(除其他外)使用此指南来设置 simpleSAMLphp,https://www.lewisroberts.com/2015/09/05/single-sign-on-to-azure-ad-using-simplesamlphp/,该指南指的是以下设置,我已将其包含在 \config\authsources.php:
'NameIDFormat' => 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent',
'simplesaml.nameidattribute' => 'eduPersonTargetedID',
但老实说,这让我感到困惑,无论这是否相关。
我还查看了How do I map attributes returned by an IDP to friendly names inSimpleSAMLphp?,它接近我的问题,但我没有更接近解决方案。
任何提示或帮助将不胜感激 :-) 我的猜测是不可能获得友好的名称/声明,我们的 Azure 团队将需要修复缺失的属性/声明,但我没有任何确凿的证据为了证明这一点。
【问题讨论】:
标签: php azure saml-2.0 simplesamlphp