Azure hesabı kiracı kimliği nasıl alınır?


201

Benim sorum: Azure aktif dizin kiracı kimliğini powershell komutu kullanmadan almak mümkün mü?

Bu iki blogu buldum ve bu yardımla, powershell'den kiracı kimliğini ve abonelik kimliğini zaten alabiliyorum. Kiracıyı almanın tek yolu bu mu?

Windows PowerShell'de Windows Azure Active Directory Kiracı Kimliği'ni edinin

PowerShell için Windows Azure AD kimlik doğrulama desteği

Teşekkürler


Başka bir programlama dilinde cevap mı arıyorsunuz yoksa programlama dışı bir yanıt mı istiyorsunuz? Eğer eski ise daha spesifik olmalısınız. Eğer merdiven yanlış forumda soruyorsanız
Matt

4
İşi yapan bu web sitesini buldum
Jean-François Deschênes

2
150K + kişi MS tarafından berbat edildiğinde bu duygu kiracıyı açıkça iletişim kuramıyor
eddyP23

Yanıtlar:


264

Zaman her şeyi değiştirir. Son zamanlarda aynı şeyi arıyordum ve bununla geldi:

Not

18.12.2017 eklendi

Shadowbq ile belirtildiği gibi, DirectoryId ve TenantId'nin her ikisi de ActiveDirectory Kiracısını temsil eden GUID'e eşittir. Bağlama bağlı olarak, her iki terim de kafa karıştırıcı olabilecek Microsoft belgeleri ve ürünleri tarafından kullanılabilir.

Varsayımlar

  • Azure Portalı'na erişiminiz var

Çözüm

Kiracı kimliği Azure'da ActiveDirectoy'ye bağlı

  • Gösterge Tablosuna Git
  • ActiveDirectory'ye gidin
  • Yönet / Özellikler'e gidin
  • "Dizin Kimliği" ni kopyalayın

Azure ActiveDirectory Kiracı Kimliği

Evet boya kullandım, beni yargılama.


6
Kar kısmından emin değilim, ama gerisi benim için çalıştı! ☺
HaveSpacesuit

39
"Kiracı Kimliği" IS "Dizin Kimliği".
shadowbq

33
Microsoft, her şeyi 3 kez adlandırarak insanları ayak parmaklarında tutmak istiyor.
BenM

1
"ActiveDirectory'ye Git" ne anlama geliyor?
thang

1
@thang: ActiveDirectory varsayılan olarak Azure portalına sabitlenmiştir, görmüyorsanız portalın üst kısmındaki arama çubuğuna "Azure Active Directory" girip "Azure Active Directory" girişini seçerek oraya ulaşabilirsiniz. altında "Hizmetler"
Kevin R.

103

Https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration adresine gidin ve kiracı kimliğinizi içeren bir grup URL göreceksiniz.


3
Bu kimlikler, abonelik kimlikleridir - kiracı kimlikleri değil. Bir hesapta birden fazla abonelik olduğunda, birden çok dizin vardır ve kiracı kimliği aşağıdaki
@KevinR

5
Tek bir kiracı / dizinle ilişkili birden fazla aboneliğiniz olabilir. Yukarıdaki yöntemi kullandığınızda, abonelik kimliklerini değil, kiracı kimliğini göstereceksiniz. Bu yöntemdeki GUID'i portaldaki Dizin Kimliği ile karşılaştırarak onaylayabilirsiniz - bunlar aynı olacaktır.
BenV

3
aktif dizin bıçağına erişiminiz yoksa süper yardımcı
Torben Knerr

2
Bilginize: Bir abonelik kimliğini management.azure.com/subscriptions/… (tam URL'yi görmek için imleci) bölümüne giderek ve geri gelen "WWW-Authenticate" üstbilgisini inceleyerek bir kiracı kimliğine dönüştürebilirsiniz ( ancak bu başlık, içinde kiracı kimliği bulunan bir URL içerir). :-)
BrainSlugs83

Azure URL'lerinde (portal gibi) genellikle YOURDIRECTORYNAME.onmicrosoft.com ve kiracı kimliğini birbirinin yerine kullanabilirsiniz - böylece yönetici adını biliyorsanız, kiracıya başvurabilirsiniz.
ndrix

59

Ekibim O365 ve Azure projelerimiz için kiracı kimliğini bulmaya gerçekten bıktı. Geliştiriciler, destek ekibi, satış ekibi, herkesin bir noktada ona ihtiyacı var ve nasıl yapılacağını asla hatırlamıyor.

Bu küçük siteyi whatismyip.com ile aynı şekilde oluşturduk. Umarım faydalı bulursunuz!

https://www.whatismytenantid.com


48

Azure CLI'de (GNU / Linux kullanıyorum):

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

Bu sizden https://aka.ms/devicelogin veya https://aka.ms/deviceloginchina üzerinden giriş yapmanızı isteyecektir.

$ 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

ya da sadece:

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

veya yeni az:

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

Umut ediyorum bu yardım eder


1
aslında, bu masmavi cli .. ama herhangi bir cli için +1.
pms1969

Bu da yeni azCLI ile çalışacak , teşekkürler!
rsmith54

39

Kiracı kimliği ayrıca, belirtilen Active Directory örneğine göz attığınızda yönetim konsolu URL'sinde de bulunur;

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

Azure Mgmt Konsolu Active Directory


@Mjh, seni duyuyorum. Klugey önerim hakkında ilk yorum yapan siz olmanıza şaşırdım. Belki de dünyanın geri kalanı için kiracı kimliğini bir uri'den çekeceği açıktır.
Brett

Benim için açık değil. Bir yerde kullanıcı arayüzünde gösterilmesini bekliyordum. Kimlik doğrulamasından sonra Uri'de avlanmak veya powershell kullanmak gerçekten garip. Bizim app belirli tennants sınırlamak istiyoruz, bu yüzden tennant sahibinden kimlik istemek gerekiyor. Bu yöntem birçoğunu karıştıracak.
PilotBob

3
Sadece delilik değil, aynı zamanda resmi = / "Office 365 kiracınızın kiracı kimliği URL'nin bir parçası olarak görüntülenir" bkz: support.office.com/en-us/article/…
Bigginn

34

Eski (ancak yine de alakalı bir soru) sorusuna yeni bir yöntem eklemek için. Yeni portalda, herhangi bir ekrandan yardım simgesini tıklayıp ' Teşhisleri Göster'i seçtiğinizde, size Kiracı Kimliği, Kiracı Adı ve çok daha faydalı bilgiler dahil tüm kiracı bilgilerinizi içeren bir JSON belgesi gösterilecektir.

resim açıklamasını buraya girin



12

Uygulama kayıtlarından almanın başka bir yolu

Azure Active Directory-> App registrations-> uygulamayı tıklayın ve bunun tenant IDgibi gösterecektir

resim açıklamasını buraya girin


1
Azure'da çoğu öğenin altında kiracı kimliği görmüyorum.
rulolar

12

PowerShell ile anonim olarak:

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

1
Yerleşik komutları kullanmadan bunu yapmanın bir yolunu arıyordu - neyse ki, bu herhangi bir dilde nasıl yapılacağını gösteriyor ... şık.
BrainSlugs83

5

Azure aboneliğinin kiracı kimliğini herhangi bir kimlik doğrulaması yapmadan almak için basit bir kıvrılma çağrısı çalıştırabilirsiniz.

kıvrılma çağrısı yapmak için:

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

İstek başarısız oluyor, ancak yanıt başlığından kiracı kimliğini alabileceksiniz. Kiracı kimliği sırasıyla "WWW-Authenticate: Bearer authorization_uri =" https://login.windows.net/ "şeklinde görüntülenir.

curl -v yanıt başlığını göstermek için kullanabilirsiniz .


5

Şu an itibariyle (2018/06/07), kolay bir yaklaşım çalışan olurdu az hesap gösterisi içinde Azure Bulut Shell (a Depolama Hesabı gerektirir) Azure Portal .

--- Komut ---

az account show

--- Komut Çıkışı ---

{
  "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 hakkında daha fazla bilgiyi https://docs.microsoft.com/en-us/azure/cloud-shell/overview adresinde bulabilirsiniz .


4

Azure CLI'yı kullanma

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

1
Bu soru soranın tam olarak istemediği şeydir
Jim Aho

3

PowerShell'de:

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


2

Azure CLI kurulumunuz varsa, aşağıdaki komutu çalıştırabilirsiniz,

az account list

veya adresinde bulabilirsiniz ~/.azure/credentials


1

Java'dan:

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

Microsoft'a göre:

Kiracı numaranızı bulun: tenantId'niz aşağıdaki metadata.xml belgesini açarak bulunabilir: https://login.microsoft.com/GraphDir1.onmicrosoft.com/FederationMetadata/2007-06/FederationMetadata.xml - değiştir "graphDir1.onMicrosoft. com.tr ", kiracının alan değeri ile (kiracının sahip olduğu herhangi bir alan çalışır). TenantId, ilk xml düğümünün sts url'sinde ("EntityDescriptor") döndürülen sts URL'sinin bir parçası olan bir kılavuzdur: ör. " Https://sts.windows.net/ ".

Referans:

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


0

Ayrıca url resources.azure.com adresine giriş yaparak kiracı kimliğini, aslında tüm abonelik ayrıntılarını alabilirsiniz.


0

Kiracı kimliği almanın basit bir yolu

Connect-MsolService -cred $ LiveCred # kiracıya giriş yapın

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


0

AAD-B2C için oldukça basittir. Bir B2C dizini ilişkili Azure Portal'dan B2C dizininize gidin ("Azure AD B2C" yi portalımın sol menüsüne ekledim). B2C dizininde "Kullanıcı akışları (ilkeler) dizini menü öğesi" ne tıklayın. Politikalar bölmesinde, daha önce seçmek için eklediğiniz politikalardan birine tıklayın. Politika için bir bölme açmalıdır. "Özellikler" e tıklayın. bölmesi, "Verici" özelliğine sahip "Token uyumluluk ayarları" bölümüdür. AAD-B2C kiracı GUID'iniz URL'de bulunur.


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

Yeni bir sp oluşturur .
Robinho
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.