Comment obtenir l'ID du locataire du compte Azure?


201

Ma question est: est-il possible d'obtenir l'id du locataire azure Active Directory sans utiliser la commande powershell?

J'ai trouvé ces deux blogs et avec cette aide, je suis déjà en mesure d'obtenir l'ID de locataire et l'ID d'abonnement auprès de powershell. Est-ce le seul moyen de récupérer le locataire?

Obtenir l'ID de locataire Windows Azure Active Directory dans Windows PowerShell

Prise en charge de l'authentification Windows Azure AD pour PowerShell

Merci


Cherchez-vous une réponse dans un autre langage de programmation ou demandez-vous une réponse hors programmation? Si le premier, vous devez être plus précis. Si l'échelle que vous demandez dans le mauvais forum
Matt

4
Trouvé ce site web qui fait le boulot: whatismytenantid.com
Jean-François Deschênes

2
Ce sentiment lorsque plus de 150 000 personnes ont été foutues par MS ne pouvant pas communiquer clairement tenantId
eddyP23

Réponses:


264

Le temps change tout. Je cherchais à faire de même récemment et j'ai trouvé ceci:

Remarque

ajouté le 18/12/2017

Comme indiqué par shadowbq, DirectoryId et TenantId correspondent tous deux au GUID représentant le locataire ActiveDirectory. Selon le contexte, l'un ou l'autre terme peut être utilisé par la documentation et les produits Microsoft, ce qui peut prêter à confusion.

Hypothèses

  • Vous avez accès au portail Azure

Solution

L'ID de locataire est lié à ActiveDirectoy dans Azure

  • Accédez au tableau de bord
  • Accédez à ActiveDirectory
  • Accédez à Gérer / Propriétés
  • Copiez l'ID de répertoire

ID de locataire Azure ActiveDirectory

Oui j'ai utilisé de la peinture, ne me jugez pas.


6
Je ne suis pas sûr de la partie profit, mais le reste a fonctionné pour moi! ☺
HaveSpacesuit

39
Le "Tenant ID" EST le "Directory ID".
shadowbq

32
Microsoft aime bien garder les gens sur ses gardes en nommant tout 3 fois.
BenM

1
Que signifie «Naviguer vers ActiveDirectory»?
merci

1
@thang: ActiveDirectory est épinglé au portail Azure par défaut, si vous ne le voyez pas, vous pouvez y accéder en entrant "Azure Active Directory" dans la barre de recherche en haut du portail et en sélectionnant l'entrée "Azure Active Directory" sous "Services"
Kevin R.

103

Accédez à https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration et vous verrez un tas d'URL contenant votre ID de locataire.


3
Ces ID sont les ID d'abonnement - et non les ID de locataire. Lorsqu'un compte a plusieurs abonnements, il existe plusieurs répertoires et le tenantId équivaut au directoryId indiqué dans la réponse de @KevinR ci
Catch22

5
Vous pouvez avoir plusieurs abonnements associés à un seul locataire / répertoire. L'utilisation de la méthode ci-dessus vous montrera l'ID du locataire, et non les ID d'abonnement. Vous pouvez confirmer en comparant le GUID de cette méthode avec l'ID d'annuaire dans le portail - ils seront les mêmes.
BenV

3
super utile au cas où vous n'auriez pas accès à la lame Active Directory
Torben Knerr

2
Pour info: vous pouvez convertir un ID d'abonnement en un identifiant de locataire en accédant à management.azure.com/subscriptions/… (survolez pour voir l'URL complète) - et en inspectant l'en-tête "WWW-Authenticate" qui revient (vous obtiendrez un 401, mais cet en-tête contient une URL contenant l'ID du locataire). :-)
BrainSlugs83

Dans les URL azur (comme le portail), vous pouvez généralement utiliser le YOURDIRECTORYNAME.onmicrosoft.com et l'ID du locataire de manière interchangeable - donc si vous connaissez le nom du répertoire, vous pouvez référencer le locataire.
ndrix

57

Mon équipe en a vraiment eu marre d'essayer de trouver l' ID de locataire pour nos projets O365 et Azure. Les développeurs, l'équipe de support, l'équipe de vente, tout le monde en a besoin à un moment donné et ne se souvient jamais comment le faire.

Nous avons donc construit ce petit site dans le même esprit que whatismyip.com. J'espère que vous le trouverez utile!

https://www.whatismytenantid.com


48

Dans Azure CLI (j'utilise GNU / Linux):

$ azure login  # add "-e AzureChinaCloud" if you're using Azure China

Cela vous demandera de vous connecter via https://aka.ms/devicelogin ou 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

ou simplement:

azure account show --json | jq -r '.[0].tenantId'

ou le nouvel az:

az account show --subscription a... | jq -r '.tenantId'
az account list | jq -r '.[].tenantId'

J'espère que ça aide


1
en fait, c'est le cli azur .. mais +1 pour tout cli.
pms1969

Cela fonctionnera également avec la nouvelle azCLI, merci!
rsmith54

39

L'ID de locataire est également présent dans l'URL de la console de gestion lorsque vous accédez à l'instance Active Directory donnée, par exemple,

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

Active Directory de la console Azure Mgmt


@Mjh, je vous entends. Je suis surpris que vous soyez la première personne à commenter ma suggestion de Klugey. Il est peut-être évident pour le reste du monde que l'on tirera l'ID du locataire d'un uri.
Brett

Pas évident pour moi. Je m'attendais à ce qu'il soit affiché dans l'interface utilisateur quelque part. Devoir le rechercher dans l'Uri ou utiliser PowerShell pour l'obtenir après s'être authentifié est vraiment bizarre. Nous voulons limiter certains fanions dans notre application, nous devons donc demander l'ID au propriétaire du fanion. Cette méthode va en dérouter beaucoup.
PilotBob

3
Non seulement c'est de la folie, c'est officiel = / "L'identifiant de locataire pour votre locataire Office 365 est affiché dans le cadre de l'URL" voir: support.office.com/en-us/article/…
Bigginn

34

Juste pour ajouter une nouvelle méthode à une ancienne (mais toujours pertinente question). Dans le nouveau portail, en cliquant sur l'icône d'aide à partir de n'importe quel écran et en sélectionnant « Afficher les diagnostics », vous verrez un document JSON contenant toutes vos informations sur le locataire, y compris TenantId, le nom du locataire et bien plus d'informations utiles

entrez la description de l'image ici


22

Cette réponse a été fournie sur le site Web de Microsoft, dernière mise à jour le 21/03/2018:

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

En bref, voici les captures d'écran de la procédure pas à pas:

  1. Sélectionnez Azure Active Directory.

Azure Active Directory

  1. Pour obtenir l'ID de locataire, sélectionnez Propriétés pour votre locataire Azure AD.

Sélectionnez Propriétés

  1. Copiez l'ID du répertoire. Cette valeur est votre ID de locataire.

Copiez l'ID du répertoire, c'est l'ID du locataire.

J'espère que cela t'aides.


12

Une autre façon de l'obtenir à partir des enregistrements d'applications

Azure Active Directory-> App registrations-> cliquez sur l'application et elle s'affichera tenant IDcomme ceci

entrez la description de l'image ici


1
Je ne vois aucun identifiant de locataire sous la plupart des articles en azur.
roule le

12

Via PowerShell de manière anonyme:

(Invoke-WebRequest https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration|ConvertFrom-Json).token_endpoint.Split('/')[3]

1
Il cherchait un moyen de le faire sans utiliser les commandes intégrées - heureusement, cela montre comment le faire dans n'importe quelle langue ... astucieuse.
BrainSlugs83

5

Vous pouvez exécuter un simple appel curl pour obtenir l'ID de locataire d'un abonnement azure sans aucune authentification.

faire un appel curl à:

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

La demande échoue, mais vous pourrez obtenir l'ID du locataire à partir de l'en-tête de réponse. L'identifiant du locataire est présent en ligne, suivi de "WWW-Authenticate: Bearer autorisation_uri =" https://login.windows.net/ "

vous pouvez utiliser curl -v pour afficher l'en-tête de réponse.


5

À partir de maintenant (06/07/2018), une approche simple serait d'exécuter un compte az dans Azure Cloud Shell (nécessite un compte de stockage) dans le portail Azure .

--- Commande ---

az account show

--- Sortie de commande ---

{
  "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"
  }
}

Pour plus d'informations sur Azure Cloud Shell, rendez-vous sur https://docs.microsoft.com/en-us/azure/cloud-shell/overview .


4

Utiliser la CLI Azure

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

1
C'est exactement ce que le questionneur ne demande pas
Jim Aho

3

Dans PowerShell:

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

3

Si vous avez installé Azure CLI 2.0 sur votre machine, vous devriez pouvoir obtenir la liste des abonnements auxquels vous appartenez avec la commande suivante,

az login

si vous voulez voir comme une sortie de table, vous pouvez simplement utiliser

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

ou vous pouvez utiliser l'API Rest

https://docs.microsoft.com/en-us/rest/api/resources/tenants/list


2

Si vous avez une configuration Azure CLI, vous pouvez exécuter la commande ci-dessous,

az account list

ou le trouver sur ~/.azure/credentials


1

Depuis 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;
}

1

Selon Microsoft:

Recherchez votre tenantID: votre tenantId peut être découvert en ouvrant le document metadata.xml suivant: https://login.microsoft.com/GraphDir1.onmicrosoft.com/FederationMetadata/2007-06/FederationMetadata.xml - remplacez "graphDir1.onMicrosoft. com ", avec la valeur de domaine de votre locataire (tout domaine appartenant au locataire fonctionnera). Le tenantId est un guid, qui fait partie de l'URL sts, renvoyé dans l'url sts du premier nœud xml ("EntityDescriptor"): par exemple " https://sts.windows.net/ ".

Référence:

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


0

Vous pouvez également obtenir l'ID du locataire, en fait tous les détails de l'abonnement en vous connectant à l'url resources.azure.com


0

Un moyen simple d'obtenir l'ID de locataire est

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

(Get-MSOLCompanyInformation) .objectid.guid #get tenantID


0

Pour AAD-B2C, c'est assez simple. À partir d'Azure Portal avec un annuaire B2C associé, accédez à votre annuaire B2C (j'ai ajouté «Azure AD B2C» au menu de gauche de mon portail). Dans le répertoire B2C, cliquez sur l'élément de menu du répertoire "Flux d'utilisateurs (politiques). Dans le volet des politiques, cliquez sur l'une de vos politiques que vous avez précédemment ajoutée pour la sélectionner. Il devrait ouvrir un volet pour la politique. Cliquez sur" Propriétés ". Dans le suivant volet est une section, "Paramètres de compatibilité des jetons" qui a une propriété "Émetteur". Votre GUID de locataire AAD-B2C est contenu dans l'URL.


-2
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"
}

Cela va créer un nouveau sp .
Robinho
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.