Как получить идентификатор клиента учетной записи Azure?

Мой вопрос: можно ли получить идентификатор клиента Azure Active Directory без использования команды PowerShell?

Я нашел эти два блога и с их помощью уже могу получить идентификатор клиента и идентификатор подписки из PowerShell. Это единственный способ вернуть арендатора?

Получить идентификатор клиента Windows Azure Active Directory в Windows PowerShell

Поддержка аутентификации Windows Azure AD для PowerShell < / а>

Спасибо


person Annie Vincent    schedule 15.10.2014    source источник
comment
Вы ищете ответ на другом языке программирования или просите ответа, не связанного с программированием? Если первое, вам нужно быть более конкретным. Если лестницу вы задаете не на том форуме   -  person Matt    schedule 15.10.2014
comment
Нашел этот веб-сайт, который выполняет эту работу: whatismytenantid.com   -  person Jean-François Deschênes    schedule 09.02.2018
comment
Это чувство, когда более 150 тысяч человек были облажались из-за того, что MS не могла четко передать tenantId   -  person eddyP23    schedule 28.01.2019


Ответы (25)


Время все меняет. Недавно я хотел сделать то же самое и придумал следующее:

Примечание

добавлено 17.02.2021

стабильная страница портала спасибо Palec

добавлено 18.12.2017

Как указано shadowbq, DirectoryId и TenantId соответствуют идентификатору GUID, представляющему клиента ActiveDirectory. В зависимости от контекста любой термин может использоваться в документации и продуктах Microsoft, что может сбивать с толку.

Предположения

  • У вас есть доступ к порталу Azure

Решение

Идентификатор клиента привязан к ActiveDirectoy в Azure.

  • Перейти к панели управления
  • Перейдите в ActiveDirectory
  • Перейдите в Управление / Свойства
  • Скопируйте идентификатор каталога

Идентификатор клиента Azure ActiveDirectory:

image

person Kevin R.    schedule 07.12.2016
comment
Я не уверен насчет прибыли, но остальное сработало для меня! ☺ - person HaveSpacesuit; 03.05.2017
comment
Идентификатор арендатора ЯВЛЯЕТСЯ идентификатором каталога. - person shadowbq; 12.05.2017
comment
Microsoft любит держать людей в тонусе, называя все по три раза. - person BenM; 20.10.2017
comment
Что означает «Перейти к ActiveDirectory»? - person thang; 24.10.2017
comment
@thang: ActiveDirectory по умолчанию закреплен на портале Azure, если вы его не видите, вы можете попасть туда, введя Azure Active Directory в панели поиска в верхней части портала и выбрав запись Azure Active Directory в разделе «Службы». - person Kevin R.; 24.10.2017
comment
Спасибо за ваш ответ. Но почему бы не иметь только одно имя? Идентификатор Tanent или Идентификатор каталога ??? Или иметь оба в лазурных рекламных свойствах ... - person dchang; 04.09.2018
comment
Кажется, адрес этого экрана довольно стабильный: portal.azure.com/#blade / Microsoft_AAD_IAM / - person Palec; 17.02.2021

Перейдите на страницу https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration, и вы увидите кучу URL-адресов, содержащих ваш идентификатор клиента.

person BenV    schedule 15.10.2014
comment
Эти идентификаторы являются идентификаторами подписки, а не идентификаторами клиентов. Когда учетная запись имеет несколько подписок, существует несколько каталогов, и tenantId соответствует идентификатору directoryId, указанному в ответе @KevinR ниже. - person Catch22; 18.05.2017
comment
У вас может быть несколько подписок, связанных с одним арендатором / каталогом. При использовании описанного выше метода будет показан идентификатор клиента, а не идентификаторы подписки. Вы можете убедиться, сравнив GUID из этого метода с идентификатором каталога на портале - они будут такими же. - person BenV; 15.06.2017
comment
очень полезно, если у вас нет доступа к колонке активного каталога - person Torben Knerr; 23.01.2018
comment
К вашему сведению: вы можете преобразовать идентификатор подписки в идентификатор клиента, перейдя по адресу management.azure.com/subscriptions/ (наведите указатель мыши, чтобы увидеть полный URL) - и проверьте возвращаемый заголовок WWW-Authenticate (вы получите 401, но этот заголовок содержит URL с идентификатором арендатора в нем). :-) - person BrainSlugs83; 16.04.2018
comment
В лазурных URL-адресах (например, на портале) вы обычно можете использовать YOURDIRECTORYNAME.onmicrosoft.com и идентификатор клиента как взаимозаменяемые, поэтому, если вы знаете имя каталога, вы можете ссылаться на клиента. - person ndrix; 31.05.2019

Моя команда действительно устала от попыток найти идентификатор клиента для наших проектов O365 и Azure. Разработчики, служба поддержки, команда продаж - все в какой-то момент нуждаются в этом и никогда не помнят, как это сделать.

Итак, мы создали этот небольшой сайт в том же духе, что и whatismyip.com. Надеюсь, что вы найдете ее полезной!

Как найти мой идентификатор клиента Microsoft 365, Azure или SharePoint Online?

person Eric Routhier    schedule 09.02.2018

В 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                   : [email protected]
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'

Я надеюсь, что это помогает

person nicocesar    schedule 06.04.2016
comment
на самом деле это лазурный кли .. но +1 для любого кли. - person pms1969; 14.09.2016
comment
Это также будет работать с новым az CLI, спасибо! - person rsmith54; 20.07.2017

Идентификатор клиента также присутствует в URL-адресе консоли управления при переходе к данному экземпляру Active Directory, например,

https://manage.windowsazure.com/<morestuffhere>/ActiveDirectoryExtension/Directory/BD848865-BE84-4134-91C6-B415927B3AB1

Azure Mgmt Console Active Directory

person Brett    schedule 14.04.2015
comment
@Mjh, я тебя слышу. Я удивлен, что вы первый, кто прокомментировал мое предложение клудей. Может быть, для остального мира очевидно, что идентификатор арендатора можно извлечь из uri. - person Brett; 05.08.2015
comment
Для меня это не очевидно. Я ожидал, что это будет отображаться где-нибудь в пользовательском интерфейсе. Очень странно искать его в Uri или использовать PowerShell, чтобы получить его после аутентификации. Мы хотим ограничить определенные арендаторы в нашем приложении, поэтому нам нужно запросить идентификатор у владельца арендатора. Этот метод запутает многих из них. - person PilotBob; 13.08.2015
comment
Это не только безумие, но и официальное = / Идентификатор клиента для вашего клиента Office 365 отображается как часть URL-адреса, см. support.office.com/en-us/article/ - person Bigginn; 29.02.2016

Просто чтобы добавить новый метод к старому (но все еще актуальному вопросу). На новом портале, щелкнув значок справки на любом экране и выбрав "Показать диагностику", вы увидите документ JSON, содержащий всю информацию о вашем клиенте, включая TenantId, имя клиента и много-много другой полезной информации.

введите описание изображения здесь

person LDJ    schedule 24.06.2017

Этот ответ был предоставлен на веб-сайте Microsoft, последнее обновление - 21 марта 2018 г .:

https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-service-principal-portal

Вкратце, вот скриншоты из прохождения:

  1. Выберите Azure Active Directory.

Azure Active Directory

  1. Чтобы получить идентификатор клиента, выберите Свойства для своего клиента Azure AD.

Выбрать свойства

  1. Скопируйте идентификатор каталога. Это значение - ваш идентификатор арендатора.

Скопируйте идентификатор каталога, это идентификатор арендатора.

Надеюсь это поможет.

person MattMakes    schedule 21.04.2018

Через PowerShell анонимно:

(Invoke-WebRequest https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration|ConvertFrom-Json).token_endpoint.Split('/')[3]
person user5347643    schedule 17.09.2015
comment
Он искал способ сделать это без использования встроенных команд - к счастью, это демонстрирует, как это сделать на любом языке ... изящно. - person BrainSlugs83; 16.04.2018

Другой способ получить его из регистраций приложений

Azure Active Directory -> App registrations -> щелкните приложение, и оно отобразит tenant ID, как это

введите описание изображения здесь

person Gajen Sunthara    schedule 30.10.2018
comment
Я не вижу идентификатора арендатора для большинства элементов в лазурном цвете. - person rolls; 13.01.2020

На данный момент (07.06.2018 г.) проще всего запустить az account show в Azure Cloud Shell (требуется учетная запись хранения) в Портал 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"
  }
}

Дополнительные сведения о Azure Cloud Shell см. На странице Обзор Azure Cloud Shell | Документы Microsoft.

person Evandro Paula    schedule 07.06.2018
comment
Вы можете добавить параметр --query tenantId, чтобы точно получить идентификатор клиента: az account show --query tenantId - person Camilo Soto; 19.10.2020

Если на вашем компьютере установлен Azure CLI 2.0, вы сможете получить список подписок, к которой вы принадлежите, с помощью следующей команды:

az login

если вы хотите увидеть вывод таблицы, вы можете просто использовать

az account get-access-token --query tenant --output tsv

или вы можете использовать Rest API

Арендаторы - Список | Документы Microsoft

person Sajeetharan    schedule 07.10.2019

Вы можете запустить простой вызов curl, чтобы получить идентификатор клиента лазурной подписки без какой-либо проверки подлинности.

сделать вызов curl для:

https://management.azure.com/subscriptions/{subscription-id}?api-version=2015-01-01

Запрос не выполняется, но вы сможете получить идентификатор клиента из заголовка ответа. Идентификатор клиента представлен в строке, за которой следует «WWW-Authenticate: Bearer authorization_uri =" https://login.windows.net/ "

вы можете использовать curl -v, чтобы показать заголовок ответа.

person nwarriorch    schedule 16.03.2017

Используйте Azure CLI

az account get-access-token --query tenant --output tsv
person Phil Stollery    schedule 06.04.2019
comment
Это именно то, о чем спрашивающий не просит - person Jim Aho; 30.05.2019
comment
Это не команда Powershell, это команда Azure CLI. - person Phil Stollery; 10.01.2021
comment
Лазурный кли намного лучше и облачный - person Srini Sydney; 12.03.2021

В PowerShell:

Add-AzureRmAccount #if not already logged in 
Get-AzureRmSubscription -SubscriptionName <SubscriptionName> | Select-Object -Property TenantId
person LucasM    schedule 31.03.2017

Ответ в один клик:

откройте этот URL:

https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/ActiveDirectoryMenuBlade/ / а>

введите изображение  описание здесь

person Anass Kartit    schedule 16.02.2021

Если у вас есть установка Azure CLI, вы можете запустить команду ниже,

az account list

или найти на ~/.azure/credentials

person barryku    schedule 07.05.2018

Шаг 1. Войдите на портал Microsoft Azure

Шаг 2. Поиск в Azure Active Directory

Шаг 3. Нажмите на обзор и найдите идентификатор арендатора в разделе информации о арендаторе.

введите описание изображения здесь

введите описание изображения здесь

person Muni Chittem    schedule 09.02.2021

С 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;
}
person bviktor    schedule 08.05.2016

Согласно Microsoft:

Найдите свой tenantID: ваш tenantId можно узнать, открыв следующий документ metadata.xml: https://login.microsoft.com/GraphDir1.onmicrosoft.com/FederationMetadata/2007-06/FederationMetadata.xml - заменить" graphDir1.onMicrosoft.com "со значением домена вашего арендатора (подойдет любой домен, принадлежащий арендатору). TenantId - это идентификатор, который является частью URL-адреса sts, возвращаемого в URL-адресе sts первого узла xml ("EntityDescriptor"): например, "https://sts.windows.net/".

Ссылка:

https://azure.microsoft.com/en-us/resources/samples/active-directory-dotnet-graphapi-web/

person DMcC    schedule 06.06.2017
comment
Две из трех - плохие ссылки. - person Shayan Shafiq; 16.03.2021

Простой способ получить tenantID:

Connect-MsolService -cred $LiveCred  #sign in to tenant

(Get-MSOLCompanyInformation).objectid.guid  #get tenantID
person Peter Vogl    schedule 25.01.2019

Использование портала Azure:

  • Шаг 1. Войдите на портал Azure, найдите Azure Active Directory и выберите его.
  • Шаг 2. На странице обзора Azure Active Directory найдите идентификатор клиента.

введите описание изображения здесь

Использование Azure CLI:

Используйте одну из команд: az login, az account list или az account tenant list. Найдите свойство TenantId для каждой подписки в выходных данных каждой команды.

Использование Powershell

Используйте приведенную ниже команду в командлете PowerShell.

Connect-AzAccount
Get-AzTenant

Ссылка:

Azure CLI

Get-Aztenant < / а>

person AnsumanBal-MT    schedule 25.06.2021

Вы также можете получить идентификатор клиента, фактически всю информацию о подписке, войдя в url resources.azure.com

person VIJAY RAAVI    schedule 11.12.2017

Для AAD-B2C это довольно просто. На портале Azure со связанным каталогом B2C перейдите в каталог B2C (я добавил «Azure AD B2C» в левое меню своего портала). В каталоге B2C щелкните пункт меню "Каталог пользовательских потоков (политик)". На панели политик щелкните одну из ранее добавленных политик, чтобы выбрать ее. Она должна открыть панель для политики. Щелкните "Свойства". В следующем Панель представляет собой раздел «Параметры совместимости токена» со свойством «Издатель». GUID клиента AAD-B2C содержится в URL-адресе.

person Larry Aultman    schedule 25.06.2019

У меня работает вот это (после az login):

 az account show |grep tenantId | awk {'print $2'} |tr -d '[:punct:]'
person ravenwing    schedule 30.03.2021

person    schedule
comment
Будет создан новый sp. - person Robinho; 23.07.2018