抓取访问令牌-ASP Net Cor 2.x webapp(工作或学校帐户)

时间:2019-02-16 07:35:53

标签: azure asp.net-core azure-active-directory azure-ad-b2c azure-ad-b2b

我使用Visual Studio 2017创建了一个简单的Web应用程序。 通过选择下面的模板并提供我的域详细信息,VS创建了一个已经由Azure AD保护的项目。

enter image description here

现在,登录后,我想捕获Azure AD Identity Server返回的访问令牌。我想检查https://jwt.io/

中的令牌

是否可以在此框架中插入代码来对访问令牌进行语法处理?

1 个答案:

答案 0 :(得分:1)

  
    

现在,登录后,我想捕获Azure AD Identity Server返回的访问令牌。我想在https://jwt.io/

中检查该令牌   

似乎您只想检查jwt.io中的ID token。ID令牌作为OpenID Connect流的一部分发送到客户端应用程序,并且由客户端用来对用户进行身份验证。请参阅文档:ID tokens

访问令牌使客户端能够安全地调用Azure保护的API。请参阅文档:Azure Active Directory access tokens

对于测试,获取令牌的一种方法是从OpenIdConnectEvents之一:

services.Configure<OpenIdConnectOptions>(AzureADDefaults.OpenIdScheme, options =>
{
    options.Events = new OpenIdConnectEvents
    {

        OnTokenValidated = async ctx =>
        {
            var Token = ctx.SecurityToken.RawData.ToString();

        },

    };
});

如果要获取用于访问受Azure AD保护的资源的访问令牌,则应使用ADAL(Azure AD V1.0端点)获取令牌,请参见代码示例here。或者,如果您使用的是Azure AD V2.0终结点,请使用MSAL