如何使用Azure广告保护Azure移动服务?ADAL.JS

如何使用Azure广告保护Azure移动服务?ADAL.JS,azure,azure-mobile-services,azure-active-directory,adal,Azure,Azure Mobile Services,Azure Active Directory,Adal,我已经在Azure广告中创建了一个应用程序。我切换到移动服务并转到“身份”选项卡。For MS identity要求提供客户端ID。我在Azure AD配置选项卡中找到了客户端ID 但是,我不知道客户端机密和包SID使用什么。它似乎期望您使用Windows应用商店应用程序来访问该服务,而不是我正在使用的Javascript应用程序 所以,我的问题是,当AngularJS web应用程序访问Azure移动服务时,如何使用Azure AD保护该服务 (我不想使用谷歌,因为我想控制可以访问该服务的用户

我已经在Azure广告中创建了一个应用程序。我切换到移动服务并转到“身份”选项卡。For MS identity要求提供客户端ID。我在Azure AD配置选项卡中找到了客户端ID

但是,我不知道客户端机密和包SID使用什么。它似乎期望您使用Windows应用商店应用程序来访问该服务,而不是我正在使用的Javascript应用程序

所以,我的问题是,当AngularJS web应用程序访问Azure移动服务时,如何使用Azure AD保护该服务

(我不想使用谷歌,因为我想控制可以访问该服务的用户,所以我将手动将用户添加到Azure广告中,我想授予该服务的访问权。)

更新:

根据下面的答案,我尝试使用ADAL.JS。它“主要处理”以下问题

  • 铬合金锁紧-它不工作

  • 当使用添加到我的Azure AD域的Microsoft帐户时,它只是进入循环并不断重定向我


  • 在移动服务标识配置中,根据您的要求为Azure AD请求以下参数

    • 应用程序URL
    • 客户端ID
    • 准租户
    包SID与MSA帐户身份验证相关。Azure广告位于最后一个底部

    参考:

    在Azure AD中,您需要创建一个应用程序,使客户端ID和应用程序ID URI与移动服务端的信息相匹配

    在此处填写的其他重要信息:

    • 回复URL:您应该有一个带有web应用程序(托管)URI的条目
    • 允许启用单一登录并将用户配置文件作为委托权限读取
    • 通过编辑和更新应用程序清单文件允许OAuth隐式流
    有关要遵循的更详细步骤,特别是关于我列表中的最后一项,请查看此示例 及其自述

    一旦您通过ADAL.JS库获得了访问令牌,就可以使用它调用移动服务的登录方法,只需提供正确的身份验证提供商名称,并使用ADAL.JS检索访问令牌


    使用ADAL.JS代替Mobile Services SDK获取访问令牌,还可以返回刷新令牌,您可以缓存并存储该令牌以自动更新访问令牌;避免用户每次输入凭据

    谢谢。我就是找不到这个信息。我的google fu让我失望。在本地主机上运行angular应用程序时可以测试这个吗?另外,如果有必要的话,我正在使用javascript移动服务。是的,当然。添加
    http://localhost:
    作为附加重定向URI。注意:在这种情况下http也是可能的,所以,我点击我的应用程序,它会重定向到,但当我输入用户名时,它会显示重定向到microsoft登录。(就像一个循环)我不能使用我的Ms帐户吗?我的Ms帐户是我域中的一个用户,并被授予访问我在该域中设置的Azure AD应用程序的权限?我刚刚创建了一个用户,这似乎很有效。虽然它没有发送XHR流量的承载头,但您如何在本地测试JS后端?对于真正的服务,请尝试添加
    https://.azure-mobile.net/login/aad
    作为重定向URI。如果这个问题解决了,我会更新我的答案。然后尝试直接从浏览器使用您的服务/API。