Wie erhalte ich die Mandanten-ID des Azure-Kontos?


200

Meine Frage lautet: Ist es möglich, die Azure Active Directory-Mandanten-ID ohne Verwendung des Powershell-Befehls abzurufen?

Ich habe diese beiden Blogs gefunden und mit dieser Hilfe kann ich bereits die Mieter- und Abonnement-ID von Powershell abrufen. Ist es die einzige Möglichkeit, den Mieter abzurufen?

Abrufen der Windows Azure Active Directory-Mandanten-ID in Windows PowerShell

Windows Azure AD-Authentifizierungsunterstützung für PowerShell

Vielen Dank


Suchen Sie eine Antwort in einer anderen Programmiersprache oder fragen Sie nach einer Antwort ohne Programmierung? Wenn erstere müssen Sie genauer sein. Wenn die Leiter Sie im falschen Forum fragen
Matt

4
Fand diese Website, die den Job macht: whatismytenantid.com
Jean-François Deschênes

2
Dieses Gefühl, als mehr als 150.000 Menschen von MS verarscht wurden und nicht in der Lage waren, TenantId
eddyP23 am

Antworten:


263

Zeit verändert alles. Ich habe kürzlich das Gleiche versucht und mir Folgendes ausgedacht:

Hinweis

hinzugefügt am 18.12.2017

Wie durch shadowbq angegeben, entsprechen sowohl die DirectoryId als auch die TenantId der GUID, die den ActiveDirectory-Tenant darstellt. Je nach Kontext kann jeder Begriff von Microsoft-Dokumentationen und -Produkten verwendet werden, was verwirrend sein kann.

Annahmen

  • Sie haben Zugriff auf das Azure-Portal

Lösung

Die Mandanten-ID ist in Azure an ActiveDirectoy gebunden

  • Navigieren Sie zum Dashboard
  • Navigieren Sie zu ActiveDirectory
  • Navigieren Sie zu Verwalten / Eigenschaften
  • Kopieren Sie die "Verzeichnis-ID"

Azure ActiveDirectory-Mandanten-ID

Ja, ich habe Farbe verwendet, verurteile mich nicht.


6
Ich bin mir nicht sicher, was den Gewinn betrifft, aber der Rest hat für mich funktioniert! ☺
HaveSpacesuit

39
Die „Tenant ID“ IST das „Verzeichnis ID“.
Shadowbq

32
Microsoft hält die Leute gerne auf Trab, indem es alles dreimal benennt.
BenM

1
Was bedeutet "Zu ActiveDirectory navigieren"?
Thang

1
@thang: ActiveDirectory ist standardmäßig an das Azure-Portal angeheftet. Wenn Sie es nicht sehen, können Sie dorthin gelangen, indem Sie "Azure Active Directory" in die Suchleiste oben im Portal eingeben und den Eintrag "Azure Active Directory" auswählen unter "Services"
Kevin R.

103

Gehen Sie zu https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration und Sie sehen eine Reihe von URLs, die Ihre Mandanten-ID enthalten.


3
Diese IDs sind die Abonnement-IDs - nicht die Mandanten-IDs. Wenn ein Konto mehrere Abonnements hat, gibt es mehrere Verzeichnisse und die Mandanten-ID entspricht der Verzeichnis-ID, die in der Antwort von @KevinR unten angegeben ist
Catch22

5
Sie können einem einzelnen Mandanten / Verzeichnis mehrere Abonnements zuordnen. Wenn Sie die oben beschriebene Methode verwenden, wird die Mandanten-ID angezeigt, nicht die Abonnement-ID (s). Sie können dies bestätigen, indem Sie die GUID dieser Methode mit der Verzeichnis-ID im Portal vergleichen - sie sind identisch.
BenV

3
Super hilfreich für den Fall, dass Sie keinen Zugriff auf das Active Directory Blade haben
Torben Knerr

2
Zu Ihrer Information: Sie können eine Abonnement-ID in eine Mandanten-ID konvertieren, indem Sie zu management.azure.com/subscriptions/… navigieren (bewegen Sie den Mauszeiger, um die vollständige URL anzuzeigen) und den zurückgegebenen Header "WWW-Authenticate" überprüfen (Sie erhalten) ein 401, aber dieser Header enthält eine URL mit der Mandanten-ID). :-)
BrainSlugs83

In azurblauen URLs (wie im Portal) können Sie normalerweise die YOURDIRECTORYNAME.onmicrosoft.com und die Mandanten-ID austauschbar verwenden. Wenn Sie also den Verzeichnisnamen kennen, können Sie auf den Mandanten verweisen.
ndrix

57

Mein Team hatte es wirklich satt , die Mandanten-ID für unsere O365- und Azure-Projekte zu finden. Die Entwickler, das Support-Team, das Verkaufsteam, jeder braucht es irgendwann und erinnert sich nie daran, wie es geht.

Deshalb haben wir diese kleine Website im selben Stil wie whatismyip.com erstellt. Ich hoffe, Sie finden es nützlich!

https://www.whatismytenantid.com


48

In der Azure-CLI (ich verwende GNU / Linux):

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

Sie werden aufgefordert, sich über https://aka.ms/devicelogin oder https://aka.ms/deviceloginchina anzumelden

$ 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

oder einfach:

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

oder das neue az:

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

Ich hoffe, es hilft


1
eigentlich ist es das azurblaue cli .. aber +1 für jedes cli.
pms1969

Dies wird auch mit der neuen azCLI funktionieren , danke!
rsmith54

39

Die Mandanten-ID ist auch in der URL der Verwaltungskonsole vorhanden, wenn Sie zur angegebenen Active Directory-Instanz navigieren, z.

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

Active Directory der Azure Mgmt-Konsole


@Mjh, ich höre dich. Ich bin überrascht, dass Sie die erste Person sind, die meinen klugey-Vorschlag kommentiert. Vielleicht ist es für den Rest der Welt offensichtlich, dass man den Mieterausweis von einem Uri ziehen würde.
Brett

Für mich nicht offensichtlich. Ich habe erwartet, dass es irgendwo in der Benutzeroberfläche angezeigt wird. Es ist wirklich seltsam, im Uri danach suchen zu müssen oder Powershell zu verwenden, um es nach der Authentifizierung zu erhalten. Wir möchten bestimmte Wimpel in unserer App einschränken, daher müssen wir den Wimpelbesitzer um die ID bitten. Diese Methode wird viele von ihnen verwirren.
PilotBob

3
Es ist nicht nur Wahnsinn, es ist auch offiziell = / "Die Mandanten-ID für Ihren Office 365-Mandanten wird als Teil der URL angezeigt" siehe: support.office.com/en-us/article/…
Bigginn

34

Nur um einer alten (aber immer noch relevanten) Frage eine neue Methode hinzuzufügen. Wenn Sie im neuen Portal in einem beliebigen Bildschirm auf das Hilfesymbol klicken und " Diagnose anzeigen" auswählen, wird ein JSON-Dokument angezeigt, das alle Ihre Mandanteninformationen enthält, einschließlich TenantId, Tenant Name und viele weitere nützliche Informationen

Geben Sie hier die Bildbeschreibung ein


22

Diese Antwort wurde auf der Microsoft-Website bereitgestellt und zuletzt am 21.03.2008 aktualisiert:

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

Kurz gesagt, hier sind die Screenshots aus der exemplarischen Vorgehensweise:

  1. Wählen Sie Azure Active Directory aus.

Azure Active Directory

  1. Um die Mandanten-ID abzurufen, wählen Sie Eigenschaften für Ihren Azure AD-Mandanten.

Wählen Sie Eigenschaften

  1. Kopieren Sie die Verzeichnis-ID. Dieser Wert ist Ihre Mandanten-ID.

Kopieren Sie die Verzeichnis-ID. Dies ist die Mandanten-ID.

Hoffe das hilft.


12

Ein anderer Weg, um es von App-Registrierungen zu bekommen

Azure Active Directory-> App registrations-> Klicken Sie auf die App und es wird Folgendes tenant IDangezeigt

Geben Sie hier die Bildbeschreibung ein


1
Unter den meisten Elementen in Azure wird keine Mandanten-ID angezeigt.
rollt

12

Über PowerShell anonym:

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

1
Er suchte nach einer Möglichkeit, dies ohne die eingebauten Befehle zu tun - zum Glück zeigt dies, wie man es in jeder Sprache macht ... geschickt.
BrainSlugs83

5

Sie können einen einfachen Curl-Aufruf ausführen, um die Mandanten-ID eines Azure-Abonnements ohne Authentifizierung abzurufen.

Rufen Sie an:

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

Die Anforderung schlägt fehl, aber Sie können die Mandanten-ID aus dem Antwortheader abrufen. Die Mandanten-ID steht in der Zeile gefolgt von "WWW-Authenticate: Bearer authorisation_uri =" https://login.windows.net/ ".

Sie können verwenden curl -v , um den Antwortheader anzuzeigen.


5

Ab sofort (06/07/2018) besteht ein einfacher Ansatz darin, az account show in der Azure Cloud Shell (erfordert ein Speicherkonto) im Azure Portal auszuführen .

--- Befehl ---

az account show

--- Befehlsausgabe ---

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

Weitere Informationen zur Azure Cloud Shell finden Sie unter https://docs.microsoft.com/en-us/azure/cloud-shell/overview .


4

Verwenden Sie die Azure-CLI

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

1
Genau darum bittet der Fragesteller nicht
Jim Aho

3

In PowerShell:

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

3

Wenn Sie Azure CLI 2.0 auf Ihrem Computer installiert haben, sollten Sie in der Lage sein, die Liste der Abonnements, zu denen Sie gehören, mit dem folgenden Befehl abzurufen:

az login

Wenn Sie als Tabellenausgabe sehen möchten, können Sie einfach verwenden

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

oder Sie könnten die Rest-API verwenden

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


2

Wenn Sie über eine Azure CLI-Einrichtung verfügen, können Sie den folgenden Befehl ausführen:

az account list

oder finden Sie es bei ~/.azure/credentials


1

Aus 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

Laut Microsoft:

Suchen Sie Ihre Mandanten- ID: Ihre Mandanten-ID kann durch Öffnen des folgenden metadata.xml-Dokuments ermittelt werden: https://login.microsoft.com/GraphDir1.onmicrosoft.com/FederationMetadata/2007-06/FederationMetadata.xml - Ersetzen Sie "graphDir1.onMicrosoft". com "mit dem Domain-Wert Ihres Mandanten (jede Domain, die dem Tenant gehört, funktioniert). Die tenantId ist eine Guid, die Teil der sts-URL ist, die in der sts-URL des ersten XML-Knotens ("EntityDescriptor") zurückgegeben wird: z . B. " https://sts.windows.net/ ".

Referenz:

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


0

Sie können auch die Mandanten-ID abrufen, dh alle Abonnementdetails, indem Sie sich bei der URL resources.azure.com anmelden


0

Ein einfacher Weg, um die TenantID zu erhalten, ist

Connect-MsolService -cred $ LiveCred #Melden Sie sich beim Mandanten an

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


0

Für AAD-B2C ist es ziemlich einfach. Wechseln Sie in Azure Portal mit einem zugeordneten B2C-Verzeichnis zu Ihrem B2C-Verzeichnis (ich habe das "Azure AD B2C" zum linken Menü meines Portals hinzugefügt). Klicken Sie im B2C-Verzeichnis auf das Menüelement "Benutzerfluss (Richtlinien) -Verzeichnis". Klicken Sie im Richtlinienbereich auf eine Ihrer zuvor hinzugefügten Richtlinien, um sie auszuwählen. Es sollte ein Bereich für die Richtlinie geöffnet werden. Klicken Sie im nächsten auf "Eigenschaften" Der Bereich ist ein Abschnitt "Token-Kompatibilitätseinstellungen" mit der Eigenschaft "Aussteller". Ihre AAD-B2C-Mandanten-GUID ist in der URL enthalten.


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

Es wird eine neue sp erstellen .
Robinho
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.