是否有 API 来获取给定名称的租户 ID?
Is there an API to get the tenant ID for a give name?
如果我有一个租户名称,例如 "contoso.onmicrosoft.com",我可以使用 API 调用获取租户 ID 吗?
我已经检查了 API 的 Microsoft.Azure.Management.ResourceGroup
您可以通过调用
获取您登录的租户的名称
https://management.azure.com/tenants?$skiptoken={skiptoken}&api-version={api-version}
详见here
这将为您提供您授权的所有租户的列表。
这实际上列在 'Tenants' 而不是资源组下。
获取租户 ID 的最简单方法是在 Azure 门户中找到它。请点击 -> APPLICATION -> VIEW ENDPOINT。像下面的截图:
如果您想使用C# 从名称中获取租户ID。请先尝试获取JWT token(使用"contoso.onmicrosoft.com"下的用户登录)。 JWT 令牌将包含 tid。 "tid"表示租户id。有关详细信息,请参阅 this article。
然后我们可以使用下面的代码获取租户id:
var token = new JwtSecurityToken(jwtToken);
var oid = token.Claims.FirstOrDefault(m=>m.Type == "tid").Value;
您只需调用 https://login.microsoftonline.com/tenantDomain/.well-known/openid-configuration
并从那里获取租户 ID。只需解析 JSON 它 returns 并从中获取租户 ID - 例如从 issuer
.
可以找到完整信息 here。
调用无需鉴权,调用非常简单。
如果我有一个租户名称,例如 "contoso.onmicrosoft.com",我可以使用 API 调用获取租户 ID 吗? 我已经检查了 API 的 Microsoft.Azure.Management.ResourceGroup
您可以通过调用
获取您登录的租户的名称https://management.azure.com/tenants?$skiptoken={skiptoken}&api-version={api-version}
详见here 这将为您提供您授权的所有租户的列表。
这实际上列在 'Tenants' 而不是资源组下。
获取租户 ID 的最简单方法是在 Azure 门户中找到它。请点击 -> APPLICATION -> VIEW ENDPOINT。像下面的截图:
如果您想使用C# 从名称中获取租户ID。请先尝试获取JWT token(使用"contoso.onmicrosoft.com"下的用户登录)。 JWT 令牌将包含 tid。 "tid"表示租户id。有关详细信息,请参阅 this article。 然后我们可以使用下面的代码获取租户id:
var token = new JwtSecurityToken(jwtToken);
var oid = token.Claims.FirstOrDefault(m=>m.Type == "tid").Value;
您只需调用 https://login.microsoftonline.com/tenantDomain/.well-known/openid-configuration
并从那里获取租户 ID。只需解析 JSON 它 returns 并从中获取租户 ID - 例如从 issuer
.
可以找到完整信息 here。
调用无需鉴权,调用非常简单。