我的问题是:是否可以在不使用powershell命令的情况下获取azure活动目录租户ID?
我找到了这两个博客,在这个帮助下,我已经能够从powershell获取租户ID和订阅ID。这是挽回租户的唯一途径吗?
谢谢,
答案 0 :(得分:230)
时间会改变一切。我最近想要做同样的事情并提出这个:
于12/18/2017添加
如shadowbq所示,DirectoryId和TenantId都等于代表ActiveDirectory租户的GUID。根据上下文,Microsoft文档和产品可能会使用这两个术语,这可能会造成混淆。
租户ID与Azure中的ActiveDirectoy绑定
是的,我用油漆,不要评判我。
答案 1 :(得分:96)
转到https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration,您会看到一堆包含租户ID的网址。
答案 2 :(得分:39)
当您浏览到给定的Active Directory实例时,租户ID也会出现在管理控制台URL中,例如,
https://manage.windowsazure.com/<morestuffhere>/ActiveDirectoryExtension/Directory/BD848865-BE84-4134-91C6-B415927B3AB1
答案 3 :(得分:36)
在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'
我希望它有所帮助
答案 4 :(得分:36)
我的团队真的厌倦了为我们的O365和Azure项目找到租户ID 。开发人员,支持团队,销售团队,每个人都需要它,并且永远不会记得如何去做。
所以我们以与whatismyip.com相同的方式建立了这个小网站。希望你觉得它有用!
答案 5 :(得分:30)
只是为旧的(但仍然相关的问题)添加新方法。 在新门户网站中,点击任意屏幕上的帮助图标,然后选择显示诊断&#39;将向您显示一个JSON文档,其中包含您的所有租户信息,包括TenantId,租户名称以及更多有用的信息
答案 6 :(得分:15)
此答案在微软的网站上提供,最后更新于2014年3月21日:
简而言之,以下是演练的截图:
答案 7 :(得分:8)
匿名访问PowerShell:
PS C:\> (Invoke-WebRequest https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration|ConvertFrom-Json).token_endpoint.Split('/')[3]
答案 8 :(得分:7)
答案 9 :(得分:4)
您可以运行简单的curl调用来获取azure订阅的租户ID,而无需任何身份验证。
拨打电话:
https://management.azure.com/subscriptions/{subscription-id}?api-version=2015-01-01
请求失败,但您可以从响应标头中获取租户ID。租户ID在线后跟“WWW-Authenticate:Bearer authorization_uri =”https://login.windows.net/“
您可以使用curl -v
来显示响应标头。
答案 10 :(得分:3)
在PowerShell中:
Add-AzureRmAccount #if not already logged in
Get-AzureRmSubscription -SubscriptionName <SubscriptionName> | Select-Object -Property TenantId
答案 11 :(得分:3)
答案 12 :(得分:3)
截至目前(06/07/2018),一种简单的方法是在 Azure Cloud Shell (需要存储帐户)中运行 az帐户显示 Azure门户。
---命令---
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/en-us/azure/cloud-shell/overview找到有关Azure Cloud Shell的更多详细信息。
答案 13 :(得分:2)
答案 14 :(得分:2)
如果您有Azure CLI设置,则可以运行以下命令,
az account list
或在~/.azure/credentials
答案 15 :(得分:1)
使用 Azure 门户:
使用 Azure CLI:
使用 az login、az account list 或 az account tenant list 命令之一。在每个命令的输出中查找每个订阅的 TenantId 属性。
使用 Powershell
在 powershell cmdlet 中使用以下命令。
Connect-AzAccount
Get-AzTenant
参考:
答案 16 :(得分:1)
如果您在计算机中安装了Azure CLI 2.0,则应该能够使用以下命令获取您所属的订阅列表,
az login
如果您希望将其显示为表格输出,则可以使用
az account get-access-token --query tenant --output tsv
或者您可以使用Rest API
https://docs.microsoft.com/en-us/rest/api/resources/tenants/list
答案 17 :(得分:1)
来自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;
}
答案 18 :(得分:1)
根据微软的说法:
找到您的租户ID :可以通过打开以下metadata.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/en-us/resources/samples/active-directory-dotnet-graphapi-web/
答案 19 :(得分:0)
获取tenantID的简单方法是
Connect-MsolService -cred $ LiveCred#登录到租户
(Get-MSOLCompanyInformation).objectid.guid#获取租户ID
答案 20 :(得分:0)
使用Azure CLI
// printf("The temperature in Celsius is %.2f.", temp);
printf("The temperature in Celsius is %.2f.\n", temp);
答案 21 :(得分:0)
对于AAD-B2C,这非常简单。从具有关联的B2C目录的Azure门户,转到您的B2C目录(我在门户的左侧菜单中添加了“ Azure AD B2C”)。在B2C目录中,单击“用户流(策略)目录”菜单项。在策略窗格中,单击先前添加的策略之一以选择它。它应打开该策略的窗格。单击“属性”。在下一个窗格是“令牌兼容性设置”部分,其属性为“颁发者”。您的AAD-B2C租户GUID包含在URL中。
答案 22 :(得分:0)
您还可以登录网址resources.azure.com获取租户ID,实际上是所有订阅详情
答案 23 :(得分:0)
为我工作的是这个(在 az login
之后):
az account show |grep tenantId | awk {'print $2'} |tr -d '[:punct:]'
答案 24 :(得分:-1)
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"
}