Azure 访问当前会话/用户的令牌

Azure 访问当前会话/用户的令牌,azure,azure-active-directory,azure-web-app-service,azure-ad-b2c,Azure,Azure Active Directory,Azure Web App Service,Azure Ad B2c,我已使用AAD身份验证保护azurewebsites域 我已经导航到主页,登录到B2C帐户,并且可以访问Azure网站的内容-API、视图 我感到困惑的是,每次我做这件事之前,它都来自Xamarin应用程序中的MSAL或ADAL库。然后我知道了如何检索和使用令牌 由于我刚刚登录并正在浏览该站点,如果我想编写一些代码来使用令牌与后端进行交互,那么如何开始编写代码来访问当前令牌?当我登录应用程序时,它是否保存在某个地方 更新此问题:我决定调用AcquireTokenSilentAsync看看会发生什

我已使用AAD身份验证保护azurewebsites域

我已经导航到主页,登录到B2C帐户,并且可以访问Azure网站的内容-API、视图

我感到困惑的是,每次我做这件事之前,它都来自Xamarin应用程序中的MSAL或ADAL库。然后我知道了如何检索和使用令牌

由于我刚刚登录并正在浏览该站点,如果我想编写一些代码来使用令牌与后端进行交互,那么如何开始编写代码来访问当前令牌?当我登录应用程序时,它是否保存在某个地方

更新此问题:我决定调用AcquireTokenSilentAsync看看会发生什么,它的响应是“缓存中找不到令牌”


我不希望用户在登录后必须再次登录,那么我如何才能从初始登录中获得可以使用的令牌呢?

因此,MSAL不会存储其缓存,除非您为其提供了via。有3个常见的令牌缓存提供程序:

  • 记忆中
  • 会议
  • 数据库
我建议您检查这个项目,了解缓存实现的想法:。 如果您不想使用其中任何一个,那么如果您的
PublicClientApplication
是单例对象,则可以使用
AcquireTokenSilentAsync
检索缓存的令牌


关于要求用户在每次需要令牌时登录,这是一个否。用户只需登录一次,然后MSAL将以静默方式完成其工作

因此,MSAL不会存储其缓存,除非您为其提供过孔。有3个常见的令牌缓存提供程序:

  • 记忆中
  • 会议
  • 数据库
我建议您检查这个项目,了解缓存实现的想法:。 如果您不想使用其中任何一个,那么如果您的
PublicClientApplication
是单例对象,则可以使用
AcquireTokenSilentAsync
检索缓存的令牌


关于要求用户在每次需要令牌时登录,这是一个否。用户只需登录一次,然后MSAL将以静默方式完成其工作

从服务器代码中,特定于提供者的令牌被注入到请求头中,因此您可以轻松访问它们。请参阅该文件

例如,在代码中获取访问令牌

string accessToken = this.Request.Headers["X-MS-TOKEN-AAD-ACCESS-TOKEN"];

从服务器代码中,特定于提供者的令牌被注入到请求头中,因此您可以轻松地访问它们。请参阅该文件

例如,在代码中获取访问令牌

string accessToken = this.Request.Headers["X-MS-TOKEN-AAD-ACCESS-TOKEN"];

很抱歉,我不明白,我没有在代码中触发MSAL-我已经触发了,所以我知道它是如何工作的,但这对我来说是一个新的,我想在其中构建一个web应用程序,默认情况下,当你导航到azurewebsites域时,它会让你登录-所以我的问题是,这会导致一个cookie,然后我可以使用ADAL库阅读吗?对不起,我不明白,我没有在代码中触发MSAL-我已经做了,所以我知道它是如何工作的,但这对我来说是一个新的,我想在这里构建一个web应用程序,默认情况下,当您导航到azurewebsites域时,它会让您登录-因此我的问题是,这是否会导致我可以使用ADAL库阅读cookie?答案在这里答案在这里