¿Cómo obtener el ID de inquilino de la cuenta azul?

201

Mi pregunta es: ¿es posible obtener la identificación de inquilino del directorio activo azul sin usar el comando powershell?

Encontré estos dos blogs y con esta ayuda, ya puedo obtener el ID de inquilino y el ID de suscripciones de powershell. ¿Es la única forma de recuperar al inquilino?

Obtenga la identificación de inquilino de Windows Azure Active Directory en Windows PowerShell

Soporte de autenticación de Windows Azure AD para PowerShell

Gracias

Annie Vincent
fuente
¿Está buscando una respuesta en otro lenguaje de programación o está pidiendo una respuesta que no sea de programación? Si es lo primero, debes ser más específico. Si la escalera que está preguntando en el foro equivocado
Matt
44
Encontré este sitio web que hace el trabajo: whatismytenantid.com
Jean-François Deschênes
2
Esa sensación cuando más de 150.000 personas se vieron afectadas por la EM al no poder comunicar claramente al inquilino
eddyP23

Respuestas:

264

El tiempo lo cambia todo. Estaba buscando hacer lo mismo recientemente y se me ocurrió esto:

Nota

añadido 18/12/2017

Como indica shadowbq, DirectoryId y TenantId equivalen al GUID que representa el inquilino de ActiveDirectory. Dependiendo del contexto, cualquiera de los términos puede ser utilizado por la documentación y los productos de Microsoft, lo que puede ser confuso.

Supuestos

  • Tiene acceso al Portal de Azure.

Solución

La identificación del inquilino está vinculada a ActiveDirectoy en Azure

  • Navegar al tablero
  • Navegue a ActiveDirectory
  • Vaya a Administrar / Propiedades
  • Copie el "ID de directorio"

Id. De inquilino de Azure ActiveDirectory

Sí, usé pintura, no me juzgues.

Kevin R.
fuente
66
No estoy seguro de la parte de ganancias, ¡pero el resto funcionó para mí! ☺
HaveSpacesuit
39
La "ID del inquilino" ES la "ID del directorio".
shadowbq
32
A Microsoft seguramente le gusta mantener a la gente alerta al nombrar todo 3 veces.
BenM
1
¿Qué significa "Navegar a ActiveDirectory"?
thang
1
@thang: ActiveDirectory está anclado al portal de Azure de forma predeterminada; si no lo ve, puede acceder ingresando "Azure Active Directory" en la barra de búsqueda en la parte superior del portal y seleccionando la entrada "Azure Active Directory" bajo "Servicios"
Kevin R.
103

Vaya a https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration y verá un montón de URL que contienen su ID de inquilino.

BenV
fuente
3
Esos identificadores son los identificadores de suscripción, no los identificadores de inquilino. Cuando una cuenta tiene varias suscripciones, hay varios directorios y el tenantId equivale al directorioId indicado en la respuesta de @KevinR a continuación
Catch22
55
Puede tener varias suscripciones asociadas con un solo inquilino / directorio. El uso del método anterior le mostrará la ID del inquilino, no las ID de suscripción. Puede confirmar comparando el GUID de este método con el ID de directorio en el portal; serán los mismos.
BenV
3
súper útil en caso de que no tenga acceso a la hoja del directorio activo
Torben Knerr
2
Para su información: puede convertir un ID de suscripción en un ID de inquilino navegando a management.azure.com/subscriptions/… (pase el mouse para ver la URL completa) e inspeccionando el encabezado "WWW-Authenticate" que regresa (obtendrá un 401, pero ese encabezado contiene una URL con el ID del inquilino). :-)
BrainSlugs83
En las URL azules (como el portal), generalmente puede usar YOURDIRECTORYNAME.onmicrosoft.com e ID de inquilino de manera intercambiable, por lo que si conoce el nombre del directorio, puede hacer referencia al inquilino.
ndrix
57

Mi equipo realmente se cansó de tratar de encontrar la identificación del inquilino para nuestros proyectos de O365 y Azure. Los desarrolladores, el equipo de soporte, el equipo de ventas, todos lo necesitan en algún momento y nunca recuerdan cómo hacerlo.

Así que hemos construido este pequeño sitio en la misma línea que whatismyip.com. ¡Esperamos que te sea útil!

https://www.whatismytenantid.com

Eric Routhier
fuente
48

En la CLI de Azure (uso GNU / Linux):

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

Esto le pedirá que inicie sesión a través de https://aka.ms/devicelogin o 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

o simplemente:

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

o el nuevo az:

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

Espero que ayude

nicocesar
fuente
1
en realidad, es el cli azul ... pero +1 para cualquier cli.
pms1969
Esto también funcionará con la nueva azCLI, ¡gracias!
rsmith54
39

La identificación del inquilino también está presente en la URL de la consola de administración cuando navega a la instancia de Active Directory dada, por ejemplo,

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

Azure Active Directory de la consola de administración

Brett
fuente
@ Mjh, te escucho. Me sorprende que seas la primera persona en comentar mi sugerencia de Klugey. Tal vez sea obvio para el resto del mundo que uno sacaría la identificación del inquilino de una uri.
Brett
No es obvio para mi. Esperaba que se mostrara en la interfaz de usuario en alguna parte. Tener que buscarlo en el Uri o usar powershell para obtenerlo después de autenticarse es realmente extraño. Queremos limitar ciertos inquilinos en nuestra aplicación, por lo que debemos solicitar la identificación del propietario del inquilino. Este método va a confundir a muchos de ellos.
PilotBob
3
No solo es una locura, es oficial = / "La identificación del inquilino de su inquilino de Office 365 se muestra como parte de la URL", consulte: support.office.com/en-us/article/…
Bigginn
34

Solo para agregar un nuevo método a una vieja (pero pregunta relevante). En el nuevo portal, al hacer clic en el icono de ayuda desde cualquier pantalla y seleccionar " Mostrar diagnósticos ", se mostrará un documento JSON que contiene toda la información del inquilino, incluidos Id. De inquilino, nombre del inquilino e información mucho más útil.

ingrese la descripción de la imagen aquí

LDJ
fuente
22

Esta respuesta se proporcionó en el sitio web de Microsoft, actualizada por última vez el 21/03/2018:

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

En resumen, aquí están las capturas de pantalla del tutorial:

  1. Seleccione Azure Active Directory.

Azure Active Directory

  1. Para obtener la identificación del inquilino, seleccione Propiedades para su inquilino de Azure AD.

Seleccionar propiedades

  1. Copie la identificación del directorio. Este valor es su identificación de inquilino.

Copie la identificación del directorio, esta es la identificación del inquilino.

Espero que esto ayude.

MattMakes
fuente
12

Otra forma de obtenerlo de los registros de aplicaciones

Azure Active Directory-> App registrations-> haz clic en la aplicación y se mostrará tenant IDasí

ingrese la descripción de la imagen aquí

Gajen Sunthara
fuente
1
No veo ninguna identificación de inquilino debajo de la mayoría de los artículos en azul.
lanza el
12

Vía PowerShell de forma anónima:

(Invoke-WebRequest https://login.windows.net/YOURDIRECTORYNAME.onmicrosoft.com/.well-known/openid-configuration|ConvertFrom-Json).token_endpoint.Split('/')[3]
usuario5347643
fuente
1
Estaba buscando una manera de hacerlo sin usar los comandos integrados; afortunadamente, esto demuestra cómo hacerlo en cualquier idioma ... ingenioso.
BrainSlugs83
5

Puede ejecutar una llamada curl simple para obtener la identificación del inquilino de una suscripción azul sin ninguna autenticación.

hacer una llamada curl a:

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

La solicitud falla pero podrá obtener la identificación del inquilino del encabezado de respuesta. La identificación del inquilino está presente en la línea seguida de "WWW-Authenticate: Bearerautorization_uri =" https://login.windows.net/ "

puede usar curl -v para mostrar el encabezado de respuesta.

nwarriorch
fuente
5

A partir de ahora (07/06/2018), un enfoque sencillo sería ejecutar az show show en Azure Cloud Shell (requiere una cuenta de almacenamiento) en Azure Portal .

--- Comando ---

az account show

--- Salida del comando ---

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

Encuentre más detalles sobre Azure Cloud Shell en https://docs.microsoft.com/en-us/azure/cloud-shell/overview .

Evandro Paula
fuente
4

Use la CLI de Azure

az account get-access-token --query tenant --output tsv
Phil Stollery
fuente
1
Esto es exactamente lo que el interrogador no está pidiendo
Jim Aho,
3

En PowerShell:

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

Si ha instalado Azure CLI 2.0 en su máquina, debería poder obtener la lista de suscripción a la que pertenece con el siguiente comando,

az login

si quieres ver como una salida de tabla puedes usar

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

o podrías usar la API Rest

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

Sajeetharan
fuente
2

Si tiene la configuración de la CLI de Azure, puede ejecutar el siguiente comando,

az account list

o encontrarlo en ~/.azure/credentials

barryku
fuente
1

De 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;
}
bviktor
fuente
1

De acuerdo con Microsoft:

Encuentre su ID de inquilino: puede descubrir su ID de inquilino abriendo el siguiente documento metadata.xml: https://login.microsoft.com/GraphDir1.onmicrosoft.com/FederationMetadata/2007-06/FederationMetadata.xml - reemplace "graphDir1.onMicrosoft. com ", con el valor de dominio de su inquilino (cualquier dominio que sea propiedad del inquilino funcionará). TenantId es un guid, que forma parte de la URL de sts, devuelto en la url de sts del primer nodo xml ("EntityDescriptor"): por ejemplo, " https://sts.windows.net/ ".

Referencia:

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

DMcC
fuente
0

También puede obtener la identificación del inquilino, de hecho, todos los detalles de suscripción iniciando sesión en la url resources.azure.com

VIJAY RAAVI
fuente
0

Una forma simple de obtener el tenantID es

Connect-MsolService -cred $ LiveCred #sign in al inquilino

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

Peter Vogl
fuente
0

Para AAD-B2C es bastante simple. Desde Azure Portal con un directorio B2C asociado, vaya a su directorio B2C (agregué el "Azure AD B2C" al menú izquierdo de mi portal). En el directorio B2C, haga clic en el elemento del menú del directorio "Flujos de usuarios (políticas). En el panel de políticas, haga clic en una de las políticas que agregó anteriormente para seleccionarla. Debería abrir un panel para la política. Haga clic en" Propiedades ". En el siguiente El panel es una sección, "Configuración de compatibilidad de token" que tiene una propiedad "Emisor". Su GUID de inquilino AAD-B2C está contenido en la URL.

Larry Aultman
fuente
-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"
}
usuario3290431
fuente
Creará una nueva sp .
Robinho