0

我们正在开发一个自定义身份提供者 (STS) 来验证我们的应用程序。在这个项目中,我们使用 Azure 访问控制服务 2.0,我们的身份提供者是一个 wsfederation。

因此,在启动项目时,azure ACS 有一个名为 wctx 的 url 参数,该参数用于传递任何内容,并且 ACS 在 de ACS 重定向到身份提供者时保留该参数,但是现在该参数的值在登录页面时被加密是开放的,所以我们无法阅读。

我想传递一种文化以及谁在调用登录页面。

有人有任何想法吗?

4

1 回答 1

2

wctx您的身份提供者不应使用该参数。此参数的目的是让您的 RP 存储它需要的任何数据,当 ACS 发送 WS-Federation 登录响应时,这些数据将与令牌一起返回给它。如果您想向您的身份提供者发送消息,最简单的方法是托管您自己的 HRD 页面,如此 MSDN 页面的“选项 2:托管自定义登录页面”部分。下载您命名空间中的链接示例作为起点,然后修改以下代码:

    // Sets a cookie to remember the chosen identity provider and navigates to it.
    function IdentityProviderButtonClicked() {
        SetCookie(this.getAttribute("name"));

        // Add any extra query parameters you want before redirecting.
        window.location = this.getAttribute("id") + "&extraParameter=value";
        return false;
    }

您想要传递的任何额外参数都可以通过这种方式添加,并将其提供给您的身份提供者。

于 2013-02-26T21:57:17.833 回答