Creación de suscripciones de MCA mediante programación en inquilinos de Microsoft Entra
Este artículo le ayuda a crear mediante programación una suscripción al Contrato de cliente de Microsoft (MCA) en inquilinos de Microsoft Entra. En algunas situaciones, es posible que tenga que crear suscripciones de MCA en inquilinos de Microsoft Entra, pero quiera tenerlas vinculadas a una sola cuenta de facturación. Algunos ejemplos de estas situaciones son los proveedores de SaaS que desean separar los servicios de cliente hospedados de los servicios de TI internos o los entornos internos que tienen requisitos estrictos de cumplimiento normativo, como el sector de tarjetas de pago (PCI).
El proceso para crear una suscripción de MCA entre inquilinos es, de hecho, un proceso de dos fases. Requiere que se realicen acciones en los inquilinos de Microsoft Entra de origen y destino. En este artículo se usa la siguiente terminología:
- Microsoft Entra ID de origen (source.onmicrosoft.com). Representa el inquilino de origen donde existe la cuenta de facturación de MCA.
- Microsoft Entra ID de nube de destino (destination.onmicrosoft.com). Representa el inquilino de destino donde se crean las nuevas suscripciones de MCA.
No se pueden crear planes de soporte técnico mediante programación. Puede comprar un nuevo plan de soporte técnico o actualizar uno en Azure Portal. Vaya a Ayuda y soporte técnico y, a continuación, en la parte superior de la página, seleccione Elegir el plan de soporte técnico adecuado.
Requisitos previos
Debe tener ya creados los siguientes inquilinos:
- Un inquilino de Microsoft Entra de origen con una cuenta de facturación activa de Contrato de cliente de Microsoft. Si no tiene ningún MCA activo, puede crear uno. Para más información, consulte Azure: registro.
- Un inquilino de Microsoft Entra de destino distinto del inquilino al que pertenece el MCA. Para crear un nuevo inquilino de Microsoft Entra, consulte Configuración de inquilinos de Microsoft Entra.
Configuración de la aplicación
Use la información de las secciones siguientes para definir y configurar las aplicaciones necesarias en los inquilinos de origen y destino.
Registro de una aplicación en el inquilino de origen
Para crear una suscripción de MCA mediante programación, se debe registrar una aplicación de Microsoft Entra y conceder el permiso de Azure RBAC adecuado. Para este paso, asegúrese de que ha iniciado sesión en el inquilino de origen (source.onmicrosoft.com) con una cuenta que tenga permisos para registrar aplicaciones de Microsoft Entra.
Siga los pasos de Inicio rápido: Registro de una aplicación en la plataforma de identidad de Microsoft.
Para la finalidad de este proceso, solo tiene que seguir las secciones Registro de una aplicación y Adición de credenciales.
Guarde la siguiente información para probar y configurar el entorno:
- Id. de directorio (inquilino)
- Id. de aplicación (cliente)
- Identificador de objeto
- Valor del secreto de la aplicación que se generó. El valor solo es visible en el momento de la creación.
Creación de una asignación de roles de facturación para la aplicación en el inquilino de origen
Revise la información de Descripción de los roles administrativos del contrato de cliente de Microsoft en Azure para determinar el ámbito y el rol de facturación adecuados para la aplicación.
Después de determinar el ámbito y el rol, use la información de Administración de roles integrados en Azure Portal para crear la asignación de roles para la aplicación. Busque la aplicación mediante el nombre que usó al registrar la aplicación en la sección anterior.
Registro de una aplicación en el inquilino de destino
Para aceptar la suscripción de MCA del inquilino de destino (destination.onmicrosoft.com), se debe registrar una aplicación de Microsoft Entra y agregarle el rol Administrador de facturación de Microsoft Entra. En este paso, asegúrese de que ha iniciado sesión en el inquilino de destino (source.onmicrosoft.com) con una cuenta que tenga permisos para registrar aplicaciones de Microsoft Entra. También debe tener permiso de rol Administrador de facturación.
Siga los mismos pasos que se han usado anteriormente para registrar una aplicación en el inquilino de origen. Guarde la siguiente información para probar y configurar el entorno:
- Id. de directorio (inquilino)
- Id. de aplicación (cliente)
- Identificador de objeto
- Valor del secreto de la aplicación que se generó. El valor solo es visible en el momento de la creación.
Incorporación de la aplicación de destino al rol Administrador de facturación de Microsoft Entra
Use la información de Asignación de roles de administrador y de no administrador a usuarios con Microsoft Entra ID para agregar a la aplicación de destino creada en la sección anterior el rol Administrador de facturación de Microsoft Entra en el inquilino de destino.
Creación de una suscripción mediante programación
Con las aplicaciones y permisos ya configurados, use la siguiente información para crear suscripciones mediante programación.
Obtención del id. de la entidad de servicio de aplicación de destino
Al crear una suscripción de MCA en el inquilino de origen, debe especificar la entidad de servicio o el SPN de la aplicación en el inquilino de destino como propietario. Use cualquiera de los métodos siguientes para obtener el id. En ambos métodos, el valor que se va a usar para el GUID vacío es el id. de aplicación (cliente) de la aplicación de inquilino de destino creada anteriormente.
Azure CLI
Inicie sesión en la CLI de Azure y use el comando az ad sp show:
az ad sp show --id aaaaaaaa-bbbb-cccc-1111-222222222222 --query 'id'
Azure PowerShell
Inicie sesión en Azure PowerShell y use el cmdlet Get-AzADServicePrincipal:
Get-AzADServicePrincipal -ApplicationId 00001111-aaaa-2222-bbbb-3333cccc4444 | Select-Object -Property Id
Guarde el valor Id
devuelto por el comando.
Creación de la suscripción
Use la siguiente información para crear una suscripción en el inquilino de origen.
Obtención de un token de acceso a la aplicación de origen
Reemplace {{placeholders}}
por el id. de inquilino real, el id. de aplicación (cliente) y los valores secretos de aplicación que guardó al crear la aplicación de inquilino de origen anteriormente.
Invoque la solicitud y guarde el valor access_token
de la respuesta para su uso en el paso siguiente.
POST https://login.microsoftonline.com/{{tenant_id}}/oauth2/token
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials&client_id={{client_id}}&client_secret={{app_secret}}&resource=https%3A%2F%2Fmanagement.azure.com%2F
Obtención de la cuenta y el perfil facturación y los id. de las secciones de factura
Use la información de las secciones Búsqueda de cuentas de facturación a las que tiene acceso y Búsqueda de perfiles de facturación y secciones de factura para crear suscripciones para obtener la cuenta de facturación, el perfil y los id. de las secciones de factura.
Nota:
Se recomienda usar el método REST con el token de acceso obtenido anteriormente para comprobar que la asignación de roles de facturación de la aplicación se creó correctamente en la sección Configuración de la aplicación.
Creación de un alias de suscripción
Con la cuenta y el perfil facturación y los id. de las secciones de factura, tiene toda la información necesaria para crear la suscripción:
{{guid}}
: puede ser un GUID válido.{{access_token}}
: token de acceso de la aplicación de inquilino de origen obtenida anteriormente.{{billing_account}}
: id. de la cuenta de facturación obtenida anteriormente.{{billing_profile}}
: id. del perfil de facturación obtenido anteriormente.{{invoice_section}}
: id. de la sección de factura obtenida anteriormente.{{destination_tenant_id}}
: id. del inquilino de destino, tal como se indicó al crear previamente la aplicación de inquilino de destino.{{destination_service_principal_id}}
: id. de la entidad de servicio del inquilino de destino que obtuvo en la sección Obtención del id. de la entidad de servicio de aplicación de destino anteriormente.
Envíe la solicitud y anote el valor del encabezado Location
en la respuesta.
PUT https://management.azure.com/providers/Microsoft.Subscription/aliases/{{guid}}?api-version=2021-10-01
Authorization: Bearer {{access_token}}
Content-Type: application/json
{
"properties": {
"displayName": "{{subscription_name}}",
"workload": "Production",
"billingScope": "/billingAccounts/{{billing_account}}/billingProfiles/{{billing_profile}}/invoiceSections/{{invoice_section}}",
"subscriptionId": null,
"additionalProperties": {
"managementGroupId": null,
"subscriptionTenantId": "{{destination_tenant_id}}",
"subscriptionOwnerId": "{{destination_service_principal_id}}"
}
}
}
Aceptación de la propiedad de la suscripción
La última fase para completar el proceso es aceptar la propiedad de la suscripción.
Obtención de un token de acceso de aplicación de destino
Reemplace {{placeholders}}
por el id. de inquilino real, el id. de aplicación (cliente) y los valores secretos de aplicación que guardó al crear la aplicación de inquilino de destino anteriormente.
Invoque la solicitud y guarde el valor access_token
de la respuesta para el siguiente paso.
POST https://login.microsoftonline.com/{{tenant_id}}/oauth2/token
Content-Type: application/x-www-form-urlencoded
grant_type=client_credentials&client_id={{client_id}}&client_secret={{app_secret}}&resource=https%3A%2F%2Fmanagement.azure.com%2F
Aceptación de la propiedad
Use la siguiente información para aceptar la propiedad de la suscripción en el inquilino de destino:
{{subscription_id}}
: id. de la suscripción creada en la sección Creación del alias de suscripción. Se encuentra en el encabezado de ubicación que anotó.{{access_token}}
: token de acceso creado en el paso anterior.{{subscription_display_name}}
: nombre para mostrar de la suscripción en el entorno de Azure.
POST https://management.azure.com/providers/Microsoft.Subscription/subscriptions/{{subscription_id}}/acceptOwnership?api-version=2021-10-01
Authorization: Bearer {{access_token}}
Content-Type: application/json
{
"properties": {
"displayName": "{{subscription_display_name}}",
"managementGroupId": null
}
}
Pasos siguientes
- Ahora que ha creado una suscripción, puede conceder dicha capacidad a otros usuarios y entidades de servicio. Para más información, vea Concesión de acceso para crear suscripciones de EA (versión preliminar).
- Para más información sobre la administración de grandes cantidades de suscripciones mediante grupos de administración, consulte Organización de los recursos con grupos de administración de Azure.
- Para cambiar el grupo de administración de una suscripción, consulte Movimiento de suscripciones.