繁体   English   中英

Azure移动服务Active Directory登录未授权

[英]Azure Mobile Services Active Directory Login unauthorized

我的设置是从iOS到Azure移动服务的.NET后端

我在这里尝试遵循Active Directory身份验证指南,网址为http://azure.microsoft.com/zh-cn/documentation/articles/mobile-services-dotnet-backend-ios-adal-sso-authentication/调试本地托管在IIS上。

我已按照web.config https://social.msdn.microsoft.com/forums/windowsapps/en-US/23e7163b-dad5-46ae-bf9b-c71ab067e535/microsoftwindowsazuremobileservicesmobileserviceinvalidoperationexception-the-request中此处所述设置了MS_MasterKeyMS_ApplicationKey -不能?forum = wpdevelop

并且还在web.config的appSettings中添加了MS_AadClientIDMS_AadTenants键。

我可以访问http://localhost/MobileService/help并输入密码的应用程序密钥并在那里访问帮助。

但是,在iOS上,我正在使用ADALiOS库进行身份验证,该库成功进行身份验证并返回资源的有效访问令牌。 尽管将其传递给移动服务后,我收到401未经授权的响应,我认为这是由于应用程序密钥造成的。 结果,我将其照原样传递给了移动服务客户端。

let payload = ["access_token": result.accessToken]

client.loginWithProvider("aad", token: payload) { user, error in

}

关于缺少的内容以及为什么此登录调用仍返回401状态的任何想法或建议?

编辑:

请求标头为:

Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
"User-Agent" = "ZUMO/2.0 (lang=objective-c; os=--; os_version=--; arch=iOSSimulator; version=2.0.0.0)";
"X-ZUMO-APPLICATION" = <actual application key here>;
"X-ZUMO-INSTALLATION-ID" = "DB14CBCD-98EA-4014-AD6E-62E0CF02A9D0";
"X-ZUMO-VERSION" = "ZUMO/2.0 (lang=objective-c; os=--; os_version=--; arch=iOSSimulator; version=2.0.0.0)";

我得到的答复是:

<NSHTTPURLResponse: 0x7fa882f81240> { URL: http://localhost/MobileService/login/aad } { status code: 401, headers {
"Content-Length" = 0;
Date = "Sun, 09 Nov 2014 22:39:16 GMT";
Server = "Microsoft-IIS/8.0";
"Www-Authenticate" = "Basic realm=\"Service\"";
"X-Powered-By" = "ASP.NET";
} }

编辑:

从Fiddler到login / aad端点的POST也会立即以401响应进行响应,甚至在头中有app键或master键,无论是否有access_token主体

问题出在web.config中的配置中。 我发现这的唯一方法是重做所有内容,然后进行更改

我的问题是密钥MS_AadAudience密钥的值中的尾随空格。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM