我正在查看几个使用 ACS 的示例,它们确实让我觉得自己很愚蠢。
我在网上查看了教程,似乎我所需要的只是配置中的以下行:
httpRuntime requestValidationMode="2.0"
但是这个 示例项目SimpleMVC4 中的其他一些示例在其配置中没有这样的行。更糟糕的是,我在那里没有看到任何引用 ACS 库的东西。
另一方面,MVC3 示例有一堆乱码,包括对 javascript 的 ajax 请求啊!?
public const string HrdPath = "v2/metadata/IdentityProviders.js";
/// <summary>
/// Gets the url with its query string representing this request
/// </summary>
/// <returns></returns>
public string GetUrlWithQueryString()
{
uriBuilder.Path = HrdPath;
uriBuilder.Query = parameters.ToQueryString();
return uriBuilder.Uri.AbsoluteUri;
}
在 Raxor 视图中
$("#signIn").click(function () {
//
// Explicit JSONP callback can be used to do client side caching of identity provider data.
//
$.ajax({
url: "@Html.Raw(Model.GetUrlWithQueryString())",
dataType: "jsonp",
咦!?
看我能不能得到一些简单的(白痴证明)指针?
- 我是依赖方
- 我有一个 MVC控制器动作,我想在这里告诉用户他们可以使用的身份提供程序 (IP),以及他们各自的 URL 以及生成将在下面的步骤 (3) 中验证的令牌。如何在 C# 代码中实现这一点?
- 曾经,客户端、ACS、IP 完成了他们的业务,我不在乎那是什么,就我而言,所有这些都在客户端、ACS 和 IP 之间。我应该从用户那里得到另一个请求。我该如何处理这个请求?我如何验证用户是否是 kosher?并且他们没有从上面的步骤(2)中伪造令牌。