Tag: acs

如何将用户重定向到ACS默认登录页面

我在我的Web应用程序中使用azure Access Control System (ACS)来validation来自不同身份提供商的用户。 我成功注册了我的应用程序以使用ACS。 现在我通过从web.config文件中删除以下内容来删除我对ACS的完整网站安全性: 删除后,我的用户无需登录即可访问我的网站主页。 现在在我的主页上我设置了一个链接SignIn 。 我想知道当用户点击SignIn链接时,如何将用户重定向到ACS默认登录页面? ( 类似地,当asp.net应用程序将用户重定向到ACS登录页面时,如果用户未经过身份validation并尝试访问由Authorize属性修饰的控制器 )

validationSWT令牌REST WCF服务

我目前正在开发一个WPF客户端,它从Windows Azure AppFabric ACS获取SWT令牌。 有了这个令牌,我想使用RESTful WCF服务。 我使用本教程获取SWT令牌,它完美无缺。 在这个MSDN教程的帮助下,我创建了RESTful WCF服务。 问题是令牌可能具有错误的格式,因为令牌validation器无法validation它(令牌validation器的IsHMACValid方法中的错误,swtWithSignatur.Length == 1)。 与服务器联系的令牌示例: {“appliesTo”:”http://localhost:7100/Service/Default.aspx”,”context”:null,”created”:1326996221,”expires”:1326999821,”securityToken”:”<?xml version="1.0" encoding="utf-16"?><wsse:BinarySecurityToken wsu:Id="uuid:74ba5667-04ea-4074-9544-aaafb570c648" ValueType="http://schemas.xmlsoap.org/ws/2009/11/swt-token-profile-1.0" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">aHR</wsse:BinarySecurityToken>”,”tokenType”:”http://schemas.xmlsoap.org/ws/2009/11/swt-token-profile-1.0″} 在Windows Azure管理门户中,我选择SWT作为我的依赖方应用程序的令牌格式。 根据第一个教程,SWT令牌的格式看起来不错,但令牌validation器不会接受它。 PS:如果有人正在尝试第二个教程(如何:使用ACS部署到Windows Azure的REST WCF服务进行身份validation):我认为步骤3中的第11点存在错误,您必须修改web.config文件( system/webService部分不存在)。 配置应如下所示:

重定向到ACS并返回后,Cookie在极少数情况下为空

在我的网站上,有一个注册表。 填写完成后,用户将被重定向到Azure ACS以便登录。登录后,用户将被重定向回我的网站并进行注册和登录。 注册表由JavaScript提交。 用户填写的信息通过RegisterController中的RedirectToProvider方法保存到cookie中,用户被重定向到ACS。 当用户从ACS重定向回网站时,然后通过RegisterController中的RegisterUser方法读取cookie。 问题是:这在95%的时间都有效。 5%的时间,当用户回来时,cookie为空。 我一直无法追踪原因,我想知道是否有任何已知的问题或我可能会监督的事情。 表单代码如下所示: @using (Html.BeginForm(“RedirectToProvider”, “Register”, FormMethod.Post, new { id = “registerForm” })) … various fields… } 提交表单的RegisterRedirect()JavaScript(此处省略了相关的function): var RegisterRedirect = function () { $(“#registerForm”).valid(); $(“#registerForm”).submit(); } RegisterController中的RedirectToProvider方法: [AllowAnonymous] [HttpPost] public ActionResult RedirectToProvider(RegisterViewModel viewModel) { if (ModelState.IsValid) { var providerUrl = viewModel.SelectedProviderUrl; viewModel.SelectedProviderUrl = “”; var json = […]