带有 ADFS 服务器的 Azure ACS
Azure ACS with ADFS Server
我们有一个场景,我们有一个应用程序,可以从我们的组织访问,也可以从外部组织访问。我们将在 Azure 中托管此 Web 应用程序。我将 MVC 5 与 Owin WSFederation 中间件一起使用。我可以连接到我的本地 ADFS 服务器并且它按预期工作。
app.UseWsFederationAuthentication(
new WsFederationAuthenticationOptions
{
Wtrealm = "https://localhost:44321/",
MetadataAddress = "https://sso2.xxxxx.com/FederationMetadata/2007-06/FederationMetadata.xml"
});
当我使用 ACS 作为主要 STS 并将我们的 ADFS 服务器设置为 IDP 时,它会路由到正确的 ADFS 登录页面,但是一旦我进行身份验证,我就会收到此错误
ID4037:无法从以下安全密钥标识符解析验证签名所需的密钥“SecurityKeyIdentifier
(
IsReadOnly = 假,
计数 = 1,
Clause[0] = X509RawDataKeyIdentifierClause(RawData = MIIC4DCCAc...'。确保 SecurityTokenResolver 填充了所需的密钥。
app.UseWsFederationAuthentication(
new WsFederationAuthenticationOptions
{
Wtrealm = "https://localhost:44321/",
MetadataAddress = "https://xxxxxxxx.accesscontrol.windows.net/FederationMetadata/2007-06/FederationMetadata.xml"
});
我觉得这是个问题,因为联合元数据包含签名密钥,并且由于 owin 中间件只有来自 ACS 的元数据,因此无法确定签名者。
想法?
ACS中是否配置了realm?
如果我正在实施这个,那么我可能会使用 ADFS 而不是 ACS 来进行我的 Home Realm Discovery,因为 ACS 即将过时。
我会将 Azure 配置为 ADFS 中的附加声明提供程序,并且只让我的应用程序使用 ADFS。
您还可以更好地控制 HRD 页面的外观。
我们有一个场景,我们有一个应用程序,可以从我们的组织访问,也可以从外部组织访问。我们将在 Azure 中托管此 Web 应用程序。我将 MVC 5 与 Owin WSFederation 中间件一起使用。我可以连接到我的本地 ADFS 服务器并且它按预期工作。
app.UseWsFederationAuthentication(
new WsFederationAuthenticationOptions
{
Wtrealm = "https://localhost:44321/",
MetadataAddress = "https://sso2.xxxxx.com/FederationMetadata/2007-06/FederationMetadata.xml"
});
当我使用 ACS 作为主要 STS 并将我们的 ADFS 服务器设置为 IDP 时,它会路由到正确的 ADFS 登录页面,但是一旦我进行身份验证,我就会收到此错误
ID4037:无法从以下安全密钥标识符解析验证签名所需的密钥“SecurityKeyIdentifier ( IsReadOnly = 假, 计数 = 1, Clause[0] = X509RawDataKeyIdentifierClause(RawData = MIIC4DCCAc...'。确保 SecurityTokenResolver 填充了所需的密钥。
app.UseWsFederationAuthentication(
new WsFederationAuthenticationOptions
{
Wtrealm = "https://localhost:44321/",
MetadataAddress = "https://xxxxxxxx.accesscontrol.windows.net/FederationMetadata/2007-06/FederationMetadata.xml"
});
我觉得这是个问题,因为联合元数据包含签名密钥,并且由于 owin 中间件只有来自 ACS 的元数据,因此无法确定签名者。
想法?
ACS中是否配置了realm?
如果我正在实施这个,那么我可能会使用 ADFS 而不是 ACS 来进行我的 Home Realm Discovery,因为 ACS 即将过时。
我会将 Azure 配置为 ADFS 中的附加声明提供程序,并且只让我的应用程序使用 ADFS。
您还可以更好地控制 HRD 页面的外观。