2017-09-12 3 views
1

J'utilise Octopus Deploy pour déployer une application Web Azure, en utilisant Service Principal comme mécanisme d'authentification. Suite à des instructions en ligne, j'ai pu obtenir tous les identifiants et une clé, et j'ai créé des permissions dans AAD pour l'application avec un rôle de lecteur.Rôle Azure AAD pour les déploiements d'Octopus Webapp

Octopus peut récupérer avec succès une liste de webapps d'Azure pour le compte, mais quand je déploie-je obtenir les éléments suivants:

System.AggregateException: Une ou plusieurs erreurs se sont produites. ---> System.Exception: lettres de créance de publication Récupération a échoué avec HTTP état 403 - Interdit

Je devine que le rôle du lecteur est pas autorisé pour les déploiements - qui serait le rôle le plus approprié? Ou y a-t-il autre chose que je dois faire?

Répondre

1

Votre service principal aura besoin du rôle de contributeur pour pouvoir être déployé sur Azure. Si vous jetez un oeil à l'exemple de script PowerShell que nous fournissons dans our Azure Service Principal Account guide, vous verrez que nous affectons "Contributeur" pour l'argument de définition de rôle.

ie.

New-AzureRmRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $azureAdApplication.ApplicationId

Hope this helps.

+0

Que pensez-vous de la recommandation de Walter d'utiliser le site Web Contributor? Cela limiterait-il les pouvoirs de Octopus Deploy? – Savage

1

Si vous utilisez uniquement le service principal pour déployer l'application Web, vous pouvez lui attribuer le rôle Website Contributor.

Site Contributor peut gérer des sites Web, mais pas les plans web à auquel ils sont connectés

Actions que Site Contributor pourrait accéder s'il vous plaît se référer à cette link.

Si vous souhaitez que le service principal crée un plan de service d'application, vous devez également lui attribuer le rôle Web Plan Contributor.

Owner et Contributor pouvez tout gérer, si vous avez besoin d'affiner les autorisations, je vous suggère de choisir Website Contributor rôle. Plus d'informations s'il vous plaît se référer à ce lien: Built-in roles for Azure role-based access control.

Veuillez vous référer à ce link:Assign application to role.

+0

@Savage Cela dépend de vos besoins. Si vous ne déployez que votre application Web, 'Website Contributor' est suffisant. En outre, vous pouvez attribuer le rôle 'Contributor' et' Owner' à votre principal de service. –

+0

@Savage Est-ce que ça marche pour vous? S'il vous plaît laissez-moi savoir si vous avez besoin de plus d'aide future. –

+0

J'y vais avec 'Contributor' parce que je ne veux pas de problèmes bizarres et merveilleux sur la ligne, et je considère Octopus Deploy comme une plate-forme digne de confiance. Depuis que je suis devenu "Contributor", je n'ai plus de problèmes. – Savage