Bagaimana cara mendapatkan ID penyewa akun biru?


201

Pertanyaan saya adalah: Apakah mungkin mendapatkan id penyewa direktori aktif biru tanpa menggunakan perintah PowerShell?

Saya menemukan dua blog ini dan dengan bantuan ini, saya sudah bisa mendapatkan ID penyewa dan ID langganan dari PowerShell. Apakah ini satu-satunya cara untuk mengambil penyewa?

Dapatkan Windows Azure Active Directory Tenant ID di Windows PowerShell

Dukungan otentikasi Windows Azure AD untuk PowerShell

Terima kasih


Apakah Anda mencari jawaban dalam bahasa pemrograman lain atau Anda meminta tanggapan non pemrograman? Jika yang pertama Anda harus lebih spesifik. Jika tangga Anda bertanya di forum yang salah
Matt

4
Menemukan situs web ini yang
berfungsi

2
Perasaan itu ketika 150K + orang dikacaukan oleh MS karena tidak dapat berkomunikasi dengan jelas tenantId
eddyP23

Jawaban:


264

Waktu mengubah segalanya. Saya ingin melakukan hal yang sama baru-baru ini dan muncul dengan ini:

Catatan

ditambahkan 12/18/2017

Seperti yang ditunjukkan oleh shadowbq, DirectoryId dan TenantId sama dengan GUID yang mewakili Tenant ActiveDirectory. Tergantung pada konteksnya, istilah mana pun dapat digunakan oleh dokumentasi dan produk Microsoft, yang dapat membingungkan.

Asumsi

  • Anda memiliki akses ke Portal Azure

Larutan

ID penyewa terkait dengan ActiveDirectoy di Azure

  • Arahkan ke Dasbor
  • Arahkan ke ActiveDirectory
  • Arahkan ke Kelola / Properti
  • Salin "ID Direktori"

ID Penyewa Azure ActiveDirectory

Ya saya menggunakan cat, jangan menilai saya.


6
Saya tidak yakin tentang bagian keuntungan, tetapi sisanya berhasil untuk saya! ☺
HaveSpacesuit

39
"ID Penyewa" ADALAH "ID Direktori".
shadowbq

32
Microsoft yakin ingin membuat orang tetap waspada dengan memberi nama semuanya 3 kali.
BenM

1
Apa yang dimaksud dengan "Navigasi ke ActiveDirectory"?
thang

1
@thang: ActiveDirectory disematkan ke portal Azure secara default, jika Anda tidak melihatnya Anda dapat mencapainya dengan memasukkan "Azure Active Directory" di bilah pencarian di bagian atas portal dan memilih entri "Azure Active Directory" di bawah "Layanan"
Kevin R.

103

Buka https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration dan Anda akan melihat banyak URL berisi ID penyewa Anda.


3
Id itu adalah id berlangganan - bukan id penyewa. Ketika sebuah akun memiliki banyak langganan, ada beberapa direktori dan penyewa menyamakan dengan directoryId di dijabarkan dalam jawaban oleh @KevinR di bawah ini
Catch22

5
Anda dapat memiliki beberapa langganan yang terkait dengan satu penyewa / direktori. Menggunakan metode di atas akan menunjukkan ID penyewa, bukan ID berlangganan. Anda dapat mengonfirmasi dengan membandingkan GUID dari metode ini dengan ID Direktori di portal - keduanya akan sama.
BenV

3
sangat membantu jika Anda tidak memiliki akses ke blade direktori aktif
Torben Knerr

2
FYI: Anda dapat mengonversi Id langganan ke ID tenant dengan menavigasi ke management.azure.com/subscription/… (arahkan kursor untuk melihat URL lengkap) - dan memeriksa header "Otentikasi WWW" yang muncul kembali (Anda akan mendapatkan 401, tetapi header itu berisi URL dengan tenant Id di dalamnya). :-)
BrainSlugs83

Di URL biru (seperti portal), Anda biasanya dapat menggunakan YOURDIRECTORYNAME.onmicrosoft.com dan tenant ID secara bergantian - jadi jika Anda tahu nama direktori, Anda dapat merujuk penyewa.
ndrix

57

Tim saya benar-benar muak mencoba menemukan ID penyewa untuk proyek O365 dan Azure kami. Para devs, tim pendukung, tim penjualan, semua orang membutuhkannya pada titik tertentu dan tidak pernah ingat bagaimana melakukannya.

Jadi kami telah membangun situs kecil ini dengan nada yang sama dengan whatismyip.com. Semoga bermanfaat!

https://www.whatismytenantid.com


48

Di Azure CLI (saya menggunakan GNU / Linux):

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

Ini akan meminta Anda untuk masuk melalui https://aka.ms/devicelogin atau 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

atau hanya:

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

atau az baru:

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

Saya harap ini membantu


1
sebenarnya, itu adalah blue cli .. tapi +1 untuk cli apa saja.
pms1969

Ini juga akan bekerja dengan azCLI baru , terima kasih!
rsmith54

39

Id penyewa juga ada di URL konsol manajemen saat Anda menelusuri contoh direktori aktif yang diberikan, misalnya,

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

Direktori Aktif Konsol Azure Mgmt


@ Mjh, aku mendengarmu. Saya terkejut Anda adalah orang pertama yang mengomentari saran klugey saya. Mungkin sudah jelas bagi seluruh dunia bahwa seseorang akan menarik id penyewa dari uri.
Brett

Tidak jelas bagiku. Saya berharap itu akan ditampilkan di UI di suatu tempat. Harus memburunya di Uri atau menggunakan PowerShell untuk mendapatkannya setelah Anda mengotentikasi benar-benar aneh. Kami ingin membatasi penyewa tertentu di aplikasi kami sehingga kami perlu meminta ID dari pemilik penyewa. Metode ini akan membingungkan banyak dari mereka.
PilotBob

3
Tidak hanya itu gila, itu resmi = / "Id penyewa untuk penyewa Office 365 Anda ditampilkan sebagai bagian dari URL" lihat: support.office.com/en-us/article/…
Bigginn

34

Hanya untuk menambahkan metode baru ke yang lama (tapi masih relevan). Di portal baru, mengklik ikon bantuan dari layar mana saja dan memilih ' Tampilkan Diagnostik ' akan menunjukkan kepada Anda dokumen JSON yang berisi semua informasi penyewa Anda termasuk TenantId, Nama Penyewa, dan banyak, informasi yang jauh lebih berguna

masukkan deskripsi gambar di sini



12

Cara lain untuk mendapatkannya dari pendaftaran Aplikasi

Azure Active Directory-> App registrations-> klik aplikasi dan itu akan menunjukkan tenant IDseperti ini

masukkan deskripsi gambar di sini


1
Saya tidak melihat ID penyewa di bawah sebagian besar item dalam warna biru.
bergulung

12

Melalui PowerShell secara anonim:

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

1
Dia sedang mencari cara untuk melakukannya tanpa menggunakan perintah bawaan - untungnya, ini menunjukkan bagaimana melakukannya dalam bahasa apa pun ... bagus.
BrainSlugs83

5

Anda dapat menjalankan panggilan ikal sederhana untuk mendapatkan id penyewa langganan biru tanpa otentikasi.

melakukan panggilan curl ke:

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

Permintaan gagal tetapi Anda akan bisa mendapatkan id penyewa dari header respons. Id penyewa hadir sejalan diikuti oleh "WWW-Authenticate: Bearer authorization_uri =" https://login.windows.net/ "

Anda dapat menggunakan curl -v untuk menampilkan header respons.


5

Sampai sekarang (06/07/2018), pendekatan yang mudah akan menjalankan pertunjukan akun a Az di Cloud Shell (memerlukan Akun Penyimpanan) di Portal Azure .

--- Perintah ---

az account show

--- Output Perintah ---

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

Temukan detail lebih lanjut tentang Azure Cloud Shell di https://docs.microsoft.com/en-us/azure/cloud-shell/overview .


4

Gunakan Azure CLI

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

1
Inilah yang tidak diminta oleh si penanya
Jim Aho

3

Di PowerShell:

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


2

Jika Anda memiliki pengaturan Azure CLI, Anda dapat menjalankan perintah di bawah ini,

az account list

atau temukan di ~/.azure/credentials


1

Dari Jawa:

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

Menurut Microsoft:

Temukan tenantID Anda : tenantId Anda dapat ditemukan dengan membuka dokumen metadata.xml berikut: https://login.microsoft.com/GraphDir1.onmicrosoft.com/FederationMetadata/2007-06/FederationMetadata.xml - ganti "graphDir1.onMicrosoft. com ", dengan nilai domain penyewa Anda (domain apa pun yang dimiliki oleh penyewa akan berfungsi). TenantId adalah panduan, yang merupakan bagian dari URL sts, dikembalikan pada url node xml pertama ("EntityDescriptor"): mis. " Https://sts.windows.net/ ".

Referensi:

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


0

Anda juga bisa mendapatkan id penyewa, pada kenyataannya semua detail berlangganan dengan masuk ke url resources.azure.com


0

Cara sederhana untuk mendapatkan tenantID adalah

Connect-MsolService -cred $ LiveCred #masuk ke penyewa

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


0

Untuk AAD-B2C itu cukup sederhana. Dari Azure Portal dengan direktori B2C yang terkait, buka direktori B2C Anda (saya menambahkan "Azure AD B2C" ke menu kiri portal saya). Dalam direktori B2C klik "item menu direktori Arus pengguna (kebijakan). Pada panel kebijakan klik pada salah satu kebijakan Anda yang sebelumnya Anda tambahkan untuk memilihnya. Itu harus membuka panel untuk kebijakan. Klik" Properti ". Di berikutnya panel adalah bagian, "Pengaturan kompatibilitas token" yang memiliki properti "Penerbit". GUID penyewa AAD-B2C Anda terkandung dalam 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"
}

Ini akan membuat sp baru .
Robinho
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.