小编JCB*_*JCB的帖子

Azure移动服务和Azure Web App身份验证

当用户通过Azure Web App(ASP.NET MVC)和Xamarin.iOS应用程序登录时,我为同一用户获得两个不同的SID

建立

带有API控制器的Azure WebApp ASP.NET 5

Xamarin iOS应用程序与Microsoft.WindowsAzure.Mobile.Client SDK Azure B2C AAD

用户在网上

我得到的是Object Adentifier值,即AAD SID:

var userClaim = ClaimsPrincipal.Current.FindFirst("http://schemas.microsoft.com/identity/claims/objectidentifier").Value;
Run Code Online (Sandbox Code Playgroud)

移动用户

我只获得Nameidentifier值而没有ObjectIdentifier

ClaimsPrincipal mobileUser = this.User as ClaimsPrincipal;
var mobileUserClaim = mobileUser.FindFirst("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier");
Run Code Online (Sandbox Code Playgroud)

SID完全不同,用户通过Mobile进行身份验证的SID获取SID:xxxx,而来自Web获取xxx

我知道如果我设置一个Azure移动应用程序和一个Azure Web应用程序,则在进行身份验证时SID是相同的.但我不想管理我的应用程序的大小(小)的两个网站.该应用程序的目的是让一个简单的Web应用程序在电话上执行某些操作和相同的操作,从电话我使用Azure移动服务SDK和InvokeAPIAsync来使用Web应用程序中的API控制器.

谢谢

azure claims-based-identity azure-web-sites azure-mobile-services azure-active-directory

5
推荐指数
1
解决办法
638
查看次数