2

Azure的AD B2CUWPsample在GitHub上需要一些可选的步骤,在GitHub上的自述,其要求为我们创造一个网络API描述步骤4并且因此使用API范围用于写入app.xaml.cs用于UWP Azure的AD B2C需要API范围,但我没有任何

public static string[] ApiScopes = { "https://fabrikamb2c.onmicrosoft.com/demoapi/demo.read" }; 

习题的代码,网络API lem:对于我的项目,我没有后端API,我不想为我的项目制作传统的Web API,我将使用Azure功能来实现无服务器API。

但登录按钮导致越来越authenticationToken用下面的方法:

authResult = await App.PublicClientApp.AcquireTokenAsync(App.ApiScopes, GetUserByPolicy(App.PublicClientApp.Users, App.PolicySignUpSignIn), UIBehavior.SelectAccount, string.Empty, null, App.Authority); 

正如你可以看到上面App.ApiScopes这里提供这是这种方法必须的参数,如果我只在这里提供了一个带有空字符串的字符串[]的列表,我可以登录,但是在我的UWP UI中输出中没有看到任何标记。

那么我怎么能绕过这个API范围的问题,并为我自己有一个工作示例,或者我必须创建一个Web API由于某种安全原因,我的意思是一个强制性的部分?

回答

0

您可以使用应用程序的为了得到发给自己的令牌CLIENT_ID的范围。

如果你想要紧密地耦合你的客户端和API,但是如果你最终拥有多个Azure函数,多个客户端并且不希望所有客户端都能够调用所有函数,需要开始拆分他们的应用程序注册并相应地定义范围。

+0

我试图提供客户端ID作为API范围,并得到这个异常:“API不接受客户端ID作为使用提供的范围” – touseef

+0

我有没有错过任何一步? – touseef