Configuración de credenciales de implementación para Azure App Service

Para proteger la implementación de aplicaciones desde un equipo local, Azure App Service admite dos tipos de credenciales para la implementación de Git local y la implementación de FTP/S. Estas credenciales no son las mismas que las de su suscripción a Azure.

  • Credenciales de nivel de usuario: un conjunto de credenciales para toda la cuenta de Azure. Se puede utilizar para implementar App Service en cualquier aplicación o suscripción para la que la cuenta de Azure tenga permiso de acceso. Este es también el conjunto predeterminado que aparece en la interfaz gráfica de usuario del portal (como la información general y las propiedades de la página de recursos de la aplicación). Cuando a un usuario se le otorga acceso a la aplicación a través del Control de acceso basado en rol (RBAC) o mediante permisos de coadministrador, ese usuario puede usar sus propias credenciales de nivel de usuario hasta que se le revoque el acceso. No comparta estas credenciales con otros usuarios de Azure.

  • Credenciales de nivel de aplicación: un conjunto de credenciales para cada aplicación. Se puede utilizar para implementar únicamente en esa aplicación. Las credenciales de cada aplicación se generan automáticamente cuando se crea la aplicación. Recuerde que no se pueden configurar manualmente, pero se pueden restablecer en cualquier momento. Para que un usuario obtenga acceso a las credenciales de nivel de aplicación a través del control de acceso basado en rol, ese usuario debe ser un colaborador o tener un rol superior en la aplicación (incluido el rol integrado de colaborador de sitio web). A los lectores no se les permite publicar contenido y no pueden obtener acceso a dichas credenciales.

Nota:

Cuando la autenticación básica está deshabilitada, no puede ver ni configurar las credenciales de implementación en el Centro de implementación.

Configuración de credenciales de ámbito de usuario

Ejecute el comando az webapp deployment user set. Reemplace <username> y <password> por su nombre de usuario y contraseña del usuario de implementación.

  • El nombre de usuario debe ser único dentro de Azure y no debe contener el símbolo "\@" para las inserciones de Git local.
  • La contraseña debe tener al menos ocho caracteres y dos de los tres elementos siguientes: letras, números y símbolos.
az webapp deployment user set --user-name <username> --password <password>

La salida JSON muestra la contraseña como null.

Uso de credenciales de ámbito de usuario con FTP/FTPS

La autenticación en un punto de conexión FTP o FTPS con credenciales de ámbito de usuario requiere un nombre de usuario con el formato siguiente: <app-name>\<user-name>

Puesto que las credenciales de ámbito de usuario están vinculadas al usuario y no a un recurso específico, el nombre de usuario debe tener este formato para dirigir la acción de inicio de sesión al punto de conexión de la aplicación adecuada.

Obtención de credenciales de ámbito de aplicación

Obtenga las credenciales del ámbito de aplicación mediante el comando az webapp deployment list-publishing-profiles. Por ejemplo:

az webapp deployment list-publishing-profiles --resource-group <group-name> --name <app-name>

Para la implementación de Git local, también puede usar el comando az webapp deployment list-publishing-credentials para obtener un URI de repositorio remoto de Git para la aplicación, con las credenciales del ámbito de aplicación ya insertadas. Por ejemplo:

az webapp deployment list-publishing-credentials --resource-group <group-name> --name <app-name> --query scmUri

Tenga en cuenta que el URI remoto de Git devuelto no contiene /<app-name>.git al final. Al agregar el URI remoto, asegúrese de anexar /<app-name>.git para evitar un error 22 con git-http-push. Además, al usar git remote add ... a través de shells que utilizan el signo de dólar para la interpolación de variables (como Bash), aplique escape a cualquier signo de dólar (\$) en el nombre de usuario o contraseña. Si no se aplica escape a este carácter, es posible que se produzcan errores de autenticación.

Restablecimiento de credenciales de ámbito de aplicación

Restablezca las credenciales del ámbito de aplicación mediante el comando az resource invoke-action:

az resource invoke-action --action newpassword --resource-group <group-name> --name <app-name> --resource-type Microsoft.Web/sites

Deshabilitación de la autenticación básica

Vea Deshabilitación de la autenticación básica en implementaciones de App Service.

Pasos siguientes

Obtenga información sobre cómo usar estas credenciales para implementar la aplicación desde GIT local o con FTP/S.