Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La identidad administrada de Power Platform permite que los complementos o paquetes de complementos de Dataverse se conecten con recursos de Azure para admitir la identidad administrada sin necesidad de credenciales. Este artículo le ayuda a configurar la identidad administrada en sus entornos de Power Platform.
Requisitos previos
- Una suscripción Azure con acceso para aprovisionar la identidad administrada asignada por el usuario (UAMI) o el registro de aplicaciones.
- Herramientas para complementos o paquetes de complementos:
- Entorno de desarrollo integrado (IDE), por ejemplo, Visual Studio, para crear un complemento
- Plug-in Registration tool (PRT)
- SignTool.exe (Herramienta de firma) para firmar el ensamblado del complemento
- Power Platform CLI
- Certificado válido para firmar el ensamblado del complemento.
Configurar identidad administrada
Para configurar la identidad administrada de Power Platform para complementos o paquetes de complementos de Dataverse, complete los pasos siguientes.
- Cree un nuevo registro de aplicación o una identidad administrada asignada por el usuario.
- Configure las credenciales de identidad federada.
- Cree y registre complementos o paquetes de complementos de Dataverse.
Asegúrese de compilar el ensamblado del complemento y registrar el complemento o el paquete de complemento. - Cree un registro de identidad administrada en Dataverse.
- Conceda acceso a los recursos de Azure a la aplicación o a la identidad administrada asignada por el usuario (UAMI).
- Valide la integración del complemento.
Cree un nuevo registro de aplicación o una identidad administrada asignada por el usuario
Puede crear una identidad administrada asignada por el usuario o una aplicación en microsoft Entra ID en función de los escenarios siguientes.
- Si quiere una identidad de aplicación asociada al complemento que se conecta a recursos de Azure, como Azure Key Vault, use el registro de aplicaciones. Con la identidad de la aplicación, puede aplicar directivas de Azure en el complemento que accede a los recursos de Azure.
- Si quiere que una entidad de servicio acceda a los recursos de Azure, como Azure Key Vault, puede aprovisionar una identidad administrada asignada por el usuario.
Nota
Asegúrese de anotar los siguientes identificadores, ya que los usará en pasos posteriores.
- Id. de aplicación (cliente)
- Id. de inquilino
Configure las credenciales de identidad federada
Para configurar una identidad administrada, abra la identidad administrada asignada por el usuario o la aplicación Microsoft Entra ID en Azure Portal que ha creado en la sección anterior.
- Vaya a Azure Portal.
- Vaya a Microsoft Entra ID.
- Seleccione App registrations (Registros de aplicaciones).
- Abra la aplicación que creó en Configurar identidad administrada.
- Vaya a Certificados y secretos.
- Seleccione la pestaña Credenciales federadas y seleccione Agregar credencial.
- Seleccione emisor como Otro emisor.
- Especifique la siguiente información:
Emisor
Utilice el emisor v2.0 del inquilino
https://login.microsoftonline.com/{tenantID}/v2.0
Example
https://login.microsoftonline.com/5f8a1a9f-2e1a-415f-b10c-84c3736a21b9/v2.0
Tipo
Elija Identificador de asunto explícito.
Identificador del sujeto
Elija el formato que coincida con el tipo de certificado:
Certificado autofirmado (solo para desarrollo):
/eid1/c/pub/t/{encodedTenantId}/a/qzXoWDkuqUa3l6zM5mM0Rw/n/plugin/e/{environmentId}/h/{hash}Certificado de emisor de confianza (recomendado para producción):
/eid1/c/pub/t/{encodedTenantId}/a/qzXoWDkuqUa3l6zM5mM0Rw/n/plugin/e/{environmentId}/i/{issuer}/s/{certificateSubject}
Referencia de segmento
| Segmento | Description |
|---|---|
| eid1 | Versión del formato de identidad |
| c/pub | Código en la nube para la nube pública, Government Community Cloud (GCC) y la primera estación de lanzamiento en GCC. |
| t/{encodedTenantId} | Id. de inquilino |
| a/qzXoWDkuqUa3l6zM5mM0Rw/ | Solo para uso interno. No modifiques. |
| n/plugin | Componente de complemento |
| e/{environmentId} | Id. de entorno |
| h/{hash} | SHA-256 de certificado (solo autofirmado) |
| i/{issuer} s/{certificateSubject} |
Detalles del emisor de confianza |
Generación de un certificado autofirmado
Cada complemento debe tener una identidad verificable y el certificado de firma actúa como huella digital única del complemento. El código siguiente es un fragmento de código de PowerShell de ejemplo que puede usar para generar un certificado autofirmado para escenarios de desarrollo o pruebas. Como referencia, puede seguir el ejemplo 3.
$params = @{
Type = 'Custom'
Subject = 'E=admin@contoso.com,CN=Contoso'
TextExtension = @(
'2.5.29.37={text}1.3.6.1.5.5.7.3.4',
'2.5.29.17={text}email=admin@contoso.com' )
KeyAlgorithm = 'RSA'
KeyLength = 2048
SmimeCapabilities = $true
CertStoreLocation = 'Cert:\CurrentUser\My'
}
New-SelfSignedCertificate @params
Nota
Codificación para {encodedTenantId}
- Convertir GUID → hexadecimal.
- Convierta Hexadecimal → Base64URL (no Base64 estándar).
Hash autofirmado
- Calcule SHA-256 en el .cer. Si tiene un archivo .pfx, exporte primero un .cer :
CertUtil -hashfile <CertificateFilePath> SHA256 $cert = Get-PfxCertificate -FilePath "path o\your.pfx" $cert.RawData | Set-Content -Encoding Byte -Path "extracted.cer"
Entornos especializados en la nube de Azure
Establezca Audience, Dirección URL del emisor y Prefijo del asunto explícitamente al implementar fuera de la nube pública, GCC y la fase de primera liberación en GCC:
| Nube | Público | Dirección URL del emisor | Prefijo de asunto |
|---|---|---|---|
| GCC High y el Departamento de Defensa | api://AzureADTokenExchangeUSGov |
https://login.microsoftonline.us |
/eid1/c/usg |
| Pastel de Luna (China) | api://AzureADTokenExchangeChina |
https://login.partner.microsoftonline.cn |
/eid1/c/chn |
| Nacional de EE. UU. (USNAT) | api://AzureADTokenExchangeUSNat |
https://login.microsoftonline.eaglex.ic.gov |
/eid1/c/uss |
| Us Secure (USSec) | api://AzureADTokenExchangeUSSec |
https://login.microsoftonline.scloud |
/eid1/c/usn |
Nota
El valor Audiencia es sensible a las mayúsculas y debe coincidir exactamente.
Para la nube pública, GCC y la primera estación de lanzamiento en GCC (y otras nubes no enumeradas), los valores predeterminados son:
Audiencia api://AzureADTokenExchange, Emisor https://login.microsoftonline.com, Prefijo de asunto /eid1/c/pub.
Creación y registro de complementos o paquetes de complementos de Dataverse
Crear ensamblado de complementos
Cree un complemento con Visual Studio. Al crear el complemento, use el id. del inquilino de Cree un nuevo registro de aplicación o una identidad administrada asignada por el usuario y ámbitos como URL de organización como
https://{OrgName}.crm*.dynamics.com/.defaulto incluso ámbitos más detallados.Use IManagedIdentityService y adquiera un método de token para solicitar un token con ámbito determinado.
Firma de método:
string AcquireToken(IEnumerable<string> scopes);
Empaquetado y firma
Firma de un paquete de complemento
Si está construyendo un paquete de complemento, use la CLI de NuGet Sign para generar un paquete a partir de un archivo .nuspec o .csproj. Después de generar el paquete, firme con el certificado.
nuget sign YourPlugin.nupkg `
-CertificatePath MyCert.pfx `
-CertificatePassword "MyPassword" `
-Timestamper http://timestamp.digicert.com
Firma de un ensamblaje de plugin
Si va a registrar un complemento (ensamblado), firme el archivo DLL con un certificado mediante SignTool.exe (Herramienta de firma).
signtool sign /f MyCert.pfx /p MyPassword /t http://timestamp.digicert.com /fd SHA256 MyAssembly.dll
Opcionalmente, puede agregar la marca de tiempo proporcionando la dirección URL de un servidor de marca de tiempo compatible con RFC 3161.
Nota
Use un certificado autofirmado solo con fines de desarrollo o pruebas. No use certificados autofirmados en entornos de producción.
Registrar el complemento
Instale la herramienta de registro del complemento si aún no la tiene en la máquina. Para obtener más información, consulte Herramientas de desarrollo de Dataverse.
Registrar el complemento. Para obtener más información, consulte Registrar complemento.
Crear registro de identidad administrada en Dataverse
Para aprovisionar un registro de identidad administrada en Dataverse, complete los pasos siguientes.
Cree una identidad administrada enviando una solicitud HTTP POST con un cliente REST (como Insomnio). Use una dirección URL y un cuerpo de solicitud en el formato siguiente.
POST https://<<orgURL>>/api/data/v9.0/managedidentitiesAsegúrese de reemplazar orgURL por la URL de la organización.
Asegúrese de que credentialsource está establecido en 2 en la carga, subjectscope está establecido en 1 para escenarios específicos del entorno y la versión está establecida en 1 en la carga.
Carga de ejemplo
{ "applicationid": "<<appId>>", //Application Id, or ClientId, or User Managed Identity "managedidentityid": "<<anyGuid>>", "credentialsource": 2, // Managed client "subjectscope": 1, //Environment Scope "tenantid": "<<tenantId>>", //Entra Tenant Id "version": 1 }Actualice el paquete del complemento o el registro de ensamblado del complemento mediante la emisión de una solicitud HTTP PATCH para asociarlo a la identidad administrada creada en el paso 1.
Ensamblaje de plugin
PATCH https://<<orgURL>>/api/data/v9.0/pluginassemblies(<<PluginAssemblyId>>)Paquete de complemento
PATCH https://<<orgURL>>/api/data/v9.0/pluginpackages(<<PluginPackageId>>)Carga de ejemplo
{ "managedidentityid@odata.bind": "/managedidentities(<<ManagedIdentityGuid>>)" }Asegúrese de reemplazar orgURL, PluginAssemblyId (o PluginPackageId) y ManagedIdentityGuid por sus valores.
Conceda acceso a los recursos Azure a la aplicación o a la identidad administrada asignada por el usuario (UAMI)
Si necesita conceder acceso a un identificador de aplicación para acceder a los recursos de Azure, como Azure Key Vault, conceda acceso a la aplicación o a la identidad administrada asignada por el usuario a ese recurso.
Valide la integración del complemento
Compruebe que el complemento puede solicitar de forma segura acceso a los recursos Azure que admiten la identidad administrada, lo que elimina la necesidad de credenciales independientes.
Preguntas más frecuentes (FAQ)
¿Cómo se resuelve este error?
Si aparece el siguiente mensaje de error:
Error: un problema de configuración impide la autenticación.
AADSTS700213: no se encontró ningún registro de identidad federado coincidente
Complete los pasos siguientes para resolver el problema:
Asegúrese de que el FIC está configurado y guardado correctamente.
Compruebe que el emisor o asunto coincide con el formato especificado anteriormente.
También puede encontrar el formato esperado en la pila de errores.
¿Cómo se resuelve el error "No se puede alcanzar o establecer conexión a Power Platform"?
Consulte Direcciones URL de Power Platform e intervalos de direcciones IP para asegurarse de que los puntos de conexión de Power Platform sean accesibles e incluidos en la lista de permitidos.