Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
Use una entidad de servicio de Microsoft Entra para autenticar la CLI de Power Apps sin abrir un explorador ni usar una cuenta de usuario almacenada en caché. Este método de autenticación es útil para canalizaciones de integración continua y entrega continua (CI/CD) y otros procesos automatizados que publican actualizaciones en una aplicación de código existente.
Para publicar una actualización, la entidad de servicio necesita acceso al entorno de Power Platform de destino y editar el acceso a la aplicación de código. Los permisos de nivel de entorno por sí solos no conceden permiso para actualizar una aplicación existente. El uso compartido de aplicaciones y la autenticación de entidad de servicio son características independientes, pero compartir la aplicación es un requisito previo para publicar actualizaciones como entidad de servicio.
Importante
Un creador de aplicaciones debe compartir la aplicación con la entidad de servicio antes de que la entidad de servicio publique su primera actualización. El uso compartido es un requisito previo único, no forma parte del proceso de publicación periódico. Una entidad de servicio no puede concederse acceso.
Prerrequisitos
Una aplicación de código Power Apps que ya ha publicado
Una cuenta de creador de aplicaciones que tenga permiso para compartir la aplicación
Una entidad de servicio Microsoft Entra que tiene acceso al entorno de Power Platform de destino
Estos valores de entidad de servicio:
- ID de aplicación (cliente)
- Secreto de cliente
- Id. de directorio (inquilino)
- Id. de objeto de aplicación empresarial
Descripción de los identificadores de la entidad de servicio
Microsoft Entra ID proporciona varios identificadores para un registro de aplicación y su entidad de servicio. Use el identificador correcto para cada operación.
| Identificador | Dónde encontrarla | Cómo se usa |
|---|---|---|
| ID de aplicación (cliente) | Registros de aplicaciones | Establezca la variable de entorno SP_CLIENT_ID. |
| Id. de directorio (inquilino) | Registros de aplicaciones | Establezca la variable de entorno SP_TENANT_ID. |
| Id. de objeto de aplicación empresarial | aplicaciones empresariales | Ir a pa app share --principal. |
Requisito previo: Uso compartido de la aplicación con la entidad de servicio
Si la aplicación ya tiene acceso de edición para la entidad de servicio, omita esta sección. De lo contrario, complete estos pasos una vez desde el equipo del creador de aplicaciones. No incluya el comando sharing en la canalización de CI/CD.
Importante
No use el identificador de objeto que se muestra en Registros de aplicaciones en el Centro de administración Microsoft Entra, donde encuentre el identificador de aplicación (cliente), el identificador de directorio (inquilino) y el secreto de cliente. En su lugar, use el identificador de objeto que se muestra en aplicaciones empresariales .
Como alternativa, si conoce el identificador de aplicación (cliente), recupere el identificador de objeto de aplicación empresarial mediante el comando CLI de Azureaz ad sp show:
az ad sp show --id <application-client-id> --query id --output tsv
Inicie sesión como creador de aplicaciones y comparta la aplicación de código.
No habilite la autenticación de entidad de servicio al compartir la aplicación.
Inicie sesión de forma interactiva con la cuenta de creador de aplicaciones mediante el pa auth login comando :
pa auth login --account <maker-email>
Confirme que la cuenta de creador de aplicaciones está activa mediante el pa auth status comando :
pa auth status
En la carpeta de la aplicación, conceda a la entidad de servicio acceso editar mediante el pa app share comando :
pa app share --principal <enterprise-application-object-id> --access edit
El edit nivel de acceso concede permiso a la entidad de servicio para actualizar la aplicación mediante el pa app push comando .
Para conceder permiso para reproducir la aplicación sin actualizarla, use --access play:
pa app share --principal <enterprise-application-object-id> --access play
Publicación de actualizaciones como entidad de servicio
Una vez que la aplicación tenga acceso de edición para la entidad de servicio, use la entidad de servicio para publicar actualizaciones desde una canalización de CI/CD o un equipo local. Repita este procedimiento para cada actualización. No es necesario volver a compartir la aplicación a menos que se quite el acceso de la entidad de servicio.
Configuración de la autenticación de entidad de servicio
Establezca las variables de entorno de autenticación de la entidad de servicio en la sesión de terminal o trabajo de CI/CD que use para publicar la actualización. Estas variables hacen que la CLI se autentique como entidad de servicio en lugar de usar una cuenta interactiva almacenada en caché.
$env:PA_CLI_USE_SP_AUTH = "true"
$env:SP_CLIENT_ID = "<application-client-id>"
$env:SP_CLIENT_SECRET = "<client-secret>"
$env:SP_TENANT_ID = "<tenant-id>"
Después de establecer las variables, ejecute los comandos de compilación y publicación desde esa sesión de terminal o trabajo de CI/CD.
Compilación y publicación de la actualización
Compile la aplicación mediante el comando configurado para el proyecto. Por ejemplo:
npm run build
Publicación de la aplicación compilada en modo no interactivo mediante el pa app push comando
pa app push --non-interactive
La CLI usa las credenciales de la entidad de servicio de las variables de entorno y no abre un explorador ni usa una cuenta interactiva almacenada en caché.
Cuando finaliza el comando, un código de salida de 0 indica que se publicó la actualización. Un código de salida distinto de cero indica que se produjo un error en el comando.