我在azure WebRole中托管WCF 4.5服务,并使用Azure ACS服务标识来管理我的wcf用户(主动身份验证).我接受这个模型,因为我们的用户数量有限
现在我想知道如何通过C#代码以编程方式管理(创建/读取/更新/删除)ACS服务标识.
我正在看几个使用ACS的例子,他们确实让我感到愚蠢.
我在网上查看了教程,似乎我需要的是配置中的以下行:
httpRuntime requestValidationMode="2.0"
Run Code Online (Sandbox Code Playgroud)
但是此示例项目 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;
}
Run Code Online (Sandbox Code Playgroud)
并在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",
Run Code Online (Sandbox Code Playgroud)
HUH !?
看,我可以得到一些简单的(白痴证明)指针吗?
正如我们在Web上所知道的那样,Azure ACS获得了很多教程,但大多数教程都是将简单的ACS插入到网站或应用程序中.现在,我想知道是否有可能识别并链接所有着名的用户oauth提供者,并在数据库中添加新用户然后为他们分配角色?在此过程之后,他们只需点击任何提供商,然后将他们带回同一个帐户?你有这样的教程可以分享吗?这是我想要制作的流程:Window live + google + Yahoo + Facebook,一个人可能拥有所有四个帐户,但后来我也需要他们的信息,然后我创建我的cuatom数据进入页面,问题是我怎么能衔接 ?如何撤销识别的唯一ID?所以我能认出来......并赋予它一定的作用..
问题1:如何链接?
问题2:如何在系统中识别?
问题3:如何发挥作用?不是从azure管理页面给出,而是通过代码
谢谢
我们正在使用 Oauth 在 Azure 中使用 SharePoint Online 对我们的云服务进行身份验证 - https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/three-authorization-systems-for-sharepoint-add -ins#low-trust并且我们收到此错误 - System.Net.Sockets.SocketException: '现有连接被远程主机强行关闭'
尝试下面的 clientContext.ExecuteQuery() 代码时。
Microsoft.SharePoint.Client.User spUser = null;
try
{
using (clientContext)
{
if (clientContext != null)
{
spUser = clientContext.Web.CurrentUser;
clientContext.Load(spUser);
clientContext.ExecuteQuery();
return spUser.LoginName.Split('|')[2];
}
}
return string.Empty;//no context = no id
}
Run Code Online (Sandbox Code Playgroud)
知道这个问题可能是什么或如何解决这个问题吗?谢谢