Azure AD v2.0使用令牌进行MobileApp身份验证

时间:2017-10-19 14:43:32

标签: azure azure-active-directory azure-mobile-services

我有一个Xamarin表单2.4项目,用户Azure AD v2.0端点进行身份验证。 Xamarin的登录部分运行良好。但我可以找到使用收到的令牌的正确方法将其传递给Azure MobilApp以使用一些数据? 现在,登录发生在Xamarin项目中,如:

ar = await App.PCA.AcquireTokenAsync(App.Scopes, App.UiParent);

然后我可以使用ar.AccessToken调用Graph v1.0来获取一些用户信息。我如何为Azure AppService执行相同的操作?

我读到了这个:https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-devquickstarts-webapp-webapi-dotnet

但我认为这更适用于在v2.0端点上进行身份验证的Azure门户网站项目。在我的情况下,用户已经过身份验证。 我想我需要在AzurePortal-> AppService-> Authentication / Authorization-> AD Provider-> Advanced中配置身份验证。但我不知道在我的app.dev.mocrosoft.com(AD v2.0端点)中的IssuerURL和AllowedTokenAudience VS中的信息... 然后我可以将我的AppService的身份验证设置为On,并在请求未经过身份验证时设置Action take:使用Azure AD登录??

我在想: 1-使用AcquireTokenAsync登录到Azure AD 2.0门户 2-在我的AppService中调用服务时,使用令牌“登录”到我的AppService或在Request头中使用它 3-消费数据/服务

有什么建议吗? 谢谢,

1 个答案:

答案 0 :(得分:0)

Azure AD v2.0端点此时只能获取Microsoft Graph的令牌,因此除非您希望Azure移动应用程序尝试调用图形,否则它可能不是您要使用的内容。

如果您确实发现需要调用其他API,则您使用的库(MSAL)也需要更改为(ADAL .NET),并且您需要在{Azure portal上重新注册您的应用{3}}。

如果您的目标是以编程方式部署Azure App Services部署,那么我建议使用Azure Resource Manager这项服务来管理各种Azure资源。为此,您可能需要将身份验证模型更改为Azure AD v1.0 endpoint

如果我误解了你的问题,我也会放弃link to Azure App Services,这可能会有所帮助。