我的问题是:是否可以在不使用powershell命令的情况下获得azure活动目录租户ID?
我找到了这两个博客,有了这个帮助,我已经能够从powershell中获取租户ID和订阅ID。这是检索租户的唯一方法吗?
在Windows PowerShell中获取Windows Azure Active Directory租户ID
Windows Azure AD身份验证对PowerShell的支持
谢谢
我的问题是:是否可以在不使用powershell命令的情况下获得azure活动目录租户ID?
我找到了这两个博客,有了这个帮助,我已经能够从powershell中获取租户ID和订阅ID。这是检索租户的唯一方法吗?
在Windows PowerShell中获取Windows Azure Active Directory租户ID
Windows Azure AD身份验证对PowerShell的支持
谢谢
Answers:
时间改变了一切。我最近一直在想做同样的事情,并提出了以下建议:
添加12/18/2017
如shadowbq所示,DirectoryId和TenantId都等于表示ActiveDirectory租户的GUID。根据上下文,Microsoft文档和产品可能会使用这两个术语,这可能会造成混淆。
租户ID绑定到Azure中的ActiveDirectoy
是的,我用油漆,不要判断我。
转到https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration,您会看到一堆包含租户ID的URL。
我的团队真的很讨厌尝试为我们的O365和Azure项目找到租户ID。开发人员,支持团队,销售团队,每个人在某个时候都需要它,却不记得该怎么做。
因此,我们已经按照whatismyip.com的原则建立了这个小型网站。希望你觉得它有用!
在Azure CLI(我使用GNU / Linux)中:
$ azure login # add "-e AzureChinaCloud" if you're using Azure China
这将要求您通过https://aka.ms/devicelogin或https://aka.ms/deviceloginchina登录
$ azure account show
info: Executing command account show
data: Name : BizSpark Plus
data: ID : aZZZZZZZ-YYYY-HHHH-GGGG-abcdef569123
data: State : Enabled
data: Tenant ID : 0XXXXXXX-YYYY-HHHH-GGGG-123456789123
data: Is Default : true
data: Environment : AzureCloud
data: Has Certificate : No
data: Has Access Token : Yes
data: User name : nico@XXXXXXX.onmicrosoft.com
data:
info: account show command OK
或者简单地:
azure account show --json | jq -r '.[0].tenantId'
或新的az:
az account show --subscription a... | jq -r '.tenantId'
az account list | jq -r '.[].tenantId'
希望对您有所帮助
az
CLI一起使用,谢谢!
当您浏览到给定的Active Directory实例时,管理控制台URL中也将显示租户ID,例如,
https://manage.windowsazure.com/<morestuffhere>/ActiveDirectoryExtension/Directory/BD848865-BE84-4134-91C6-B415927B3AB1
该答案在Microsoft网站上提供,最后更新于2018年3月21日:
简而言之,这是本演练的屏幕截图:
希望这可以帮助。
通过PowerShell匿名:
(Invoke-WebRequest https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration|ConvertFrom-Json).token_endpoint.Split('/')[3]
截至目前(2018年7月7日),一种简单的方法是在Azure Portal的Azure Cloud Shell中运行z帐户显示(需要存储帐户)。
-命令-
az account show
-命令输出-
{
"environmentName": "AzureCloud",
"id": "{Subscription Id (GUID)}",
"isDefault": true,
"name": "{Subscription Name}",
"state": "Enabled",
"tenantId": "{Tenant Id (GUID)}",
"user": {
"cloudShellID": true,
"name": "{User email}",
"type": "user"
}
}
在https://docs.microsoft.com/zh-cn/azure/cloud-shell/overview上找到有关Azure Cloud Shell的更多详细信息。
如果您在计算机中安装了Azure CLI 2.0,则应该能够使用以下命令获取您所属的订阅列表,
az login
如果您想查看为表格输出,则可以使用
az account get-access-token --query tenant --output tsv
或者您可以使用Rest API
https://docs.microsoft.com/zh-cn/rest/api/resources/tenants/list
从Java:
public static String GetSubscriptionTenantId (String subscriptionId) throws ClientProtocolException, IOException
{
String tenantId = null;
String url = "https://management.azure.com/subscriptions/" + subscriptionId + "?api-version=2016-01-01";
HttpClient client = HttpClientBuilder.create().build();
HttpGet request = new HttpGet(url);
HttpResponse response = client.execute(request);
Header[] headers = response.getAllHeaders();
for (Header header : headers)
{
if (header.getName().equals("WWW-Authenticate"))
{
// split by '"' to get the URL, split the URL by '/' to get the ID
tenantId = header.getValue().split("\"")[1].split("/")[3];
}
}
return tenantId;
}
根据微软的说法:
查找您的tenantID:可以通过打开以下meta.xml 文件来发现您的tenantId:https ://login.microsoft.com/GraphDir1.onmicrosoft.com/FederationMetadata/2007-06/FederationMetadata.xml-替换为“ graphDir1.onMicrosoft”。 com”,并带有您租户的域名价值(租户拥有的任何域都可以使用)。tenantId是一个guid,它是sts URL的一部分,在第一个xml节点的sts url(“ EntityDescriptor”)中返回:例如“ https://sts.windows.net/ ”。
参考:
https://azure.microsoft.com/zh-cn/resources/samples/active-directory-dotnet-graphapi-web/
您还可以通过登录url resources.azure.com获得租户ID,实际上是所有订阅详细信息。
xxx@Azure:~$ az ad sp create-for-rbac
Retrying role assignment creation: 1/36
{
"appId": "401143c2-95ef-4792-9900-23e07f7801e7",
"displayName": "azure-cli-2018-07-10-20-31-57",
"name": "http://azure-cli-2018-07-10-20-31-57",
"password": "a0471d14-9300-4177-ab08-5c45adb3476b",
"tenant": "e569f29e-b008-4cea-b6f0-48fa8532d64a"
}