Azure AD JWT 令牌:如何查看授予它的客户端机密
Azure AD JWT token: how to see through which client secret it was granted
我有一个 Azure AD 应用程序并生成了两个客户端密码。我可以使用每个秘密获取 JWT 访问令牌(通过 client_credentials
授权),但我也可以从 JWT 令牌中看到它是通过哪个客户端秘密请求的吗?
如果我检查返回的 JWT 令牌,一些有效载荷字段总是相同的(aud
、iss
等),而一些总是不同的(iat
、nbf
、aio
、等等),但据我所知,没有任何信息可以识别所使用的客户端密码。
这是一个有效负载示例:
{
"aud": "https://graph.microsoft.com",
"iss": "https://sts.windows.net/e402c5fb-58e9-48c3-b567-741c4cef0b96/",
"iat": 1516886787,
"nbf": 1516886787,
"exp": 1516890687,
"aio": "Y2NgYEjJqF0stqv73u41a6ZmxPEvBgA=",
"app_displayname": "TravelAgencies",
"appid": "ee8cf944-bf6f-42cf-ae30-6060412416a1",
"appidacr": "2",
"e_exp": 262800,
"idp": "https://sts.windows.net/e402c5fb-58e9-48c3-b567-741c4cef0b96/",
"oid": "bc430bc6-d9fb-4fa0-87e5-8b8803fcb222",
"sub": "bc430bc6-d9fb-4fa0-87e5-8b8803fcb222",
"tid": "e402c5fb-58e9-48c3-b567-741c4cef0b96",
"uti": "1TgusyfGtECjErT0Kv4PAA",
"ver": "1.0"
}
相关说明:aio
、e_exp
和 uti
字段有什么用?我找不到关于它们的任何信息。
您看不到令牌是通过哪个客户端密钥颁发的。问是通过哪个密室的原因是什么?
关于提供的声明 - 您可以查看 here and here 不同声明的含义。例如,iat
、nbf
只是日期 - 令牌发布时间和有效期开始时间。
对于某些声明,例如 aio
,没有文档。但是没有声明可以告诉你使用了哪个秘密。
来自https://docs.microsoft.com/en-us/azure/active-directory/develop/id-tokens
aio
Azure AD 用于记录数据以供令牌重用的内部声明。应该忽略。
我有一个 Azure AD 应用程序并生成了两个客户端密码。我可以使用每个秘密获取 JWT 访问令牌(通过 client_credentials
授权),但我也可以从 JWT 令牌中看到它是通过哪个客户端秘密请求的吗?
如果我检查返回的 JWT 令牌,一些有效载荷字段总是相同的(aud
、iss
等),而一些总是不同的(iat
、nbf
、aio
、等等),但据我所知,没有任何信息可以识别所使用的客户端密码。
这是一个有效负载示例:
{
"aud": "https://graph.microsoft.com",
"iss": "https://sts.windows.net/e402c5fb-58e9-48c3-b567-741c4cef0b96/",
"iat": 1516886787,
"nbf": 1516886787,
"exp": 1516890687,
"aio": "Y2NgYEjJqF0stqv73u41a6ZmxPEvBgA=",
"app_displayname": "TravelAgencies",
"appid": "ee8cf944-bf6f-42cf-ae30-6060412416a1",
"appidacr": "2",
"e_exp": 262800,
"idp": "https://sts.windows.net/e402c5fb-58e9-48c3-b567-741c4cef0b96/",
"oid": "bc430bc6-d9fb-4fa0-87e5-8b8803fcb222",
"sub": "bc430bc6-d9fb-4fa0-87e5-8b8803fcb222",
"tid": "e402c5fb-58e9-48c3-b567-741c4cef0b96",
"uti": "1TgusyfGtECjErT0Kv4PAA",
"ver": "1.0"
}
相关说明:aio
、e_exp
和 uti
字段有什么用?我找不到关于它们的任何信息。
您看不到令牌是通过哪个客户端密钥颁发的。问是通过哪个密室的原因是什么?
关于提供的声明 - 您可以查看 here and here 不同声明的含义。例如,iat
、nbf
只是日期 - 令牌发布时间和有效期开始时间。
对于某些声明,例如 aio
,没有文档。但是没有声明可以告诉你使用了哪个秘密。
来自https://docs.microsoft.com/en-us/azure/active-directory/develop/id-tokens
aio
Azure AD 用于记录数据以供令牌重用的内部声明。应该忽略。