Gestion de l'authentification et des accès pour les programmes SAP sur Google Cloud

Tous les programmes d'application qui utilisent des ressources Google Cloud doivent disposer d'une identité et d'autorisations Google Cloud avant de pouvoir accéder aux ressources.

Comptes de service IAM

Sur Google Cloud, IAM (Identity and Access Management) utilise des comptes de service pour établir les identités des programmes, ainsi que des rôles pour accorder des autorisations aux comptes de service des programmes.

Pour les systèmes SAP et les programmes associés qui s'exécutent sur des machines virtuelles (VM) Compute Engine, créez un compte de service de VM ne contenant que les rôles dont les systèmes SAP et les autres programmes ont besoin.

Les programmes qui ne s'exécutent pas sur Google Cloud peuvent utiliser des comptes de service lorsqu'ils se connectent aux API Google Cloud, ainsi qu'une clé de compte de service pour l'authentification.

Les programmes exécutés sur une VM Compute Engine peuvent utiliser le compte de service de VM, à condition que ce compte dispose des rôles nécessaires au programme. Pour les programmes exécutés sur une VM Compute Engine, l'utilisation d'une clé de compte de service pour l'authentification n'est pas recommandée.

Lorsque vous créez une instance de VM à l'aide de l'outil de Google Cloud CLI ou de Google Cloud Console, vous pouvez spécifier un compte de service que l'instance de VM va utiliser, accepter le compte de service par défaut du projet, ou ne spécifier aucun compte de service.

Lorsque vous créez une instance en envoyant directement une requête à l'API, sans utiliser Google Cloud CLI ou Google Cloud Console, le compte de service par défaut n'est pas activé avec l'instance.

Si un compte de service de VM ne dispose pas des rôles nécessaires au programme, vous pouvez lui ajouter ces rôles, ou remplacer ce compte par un nouveau compte de service de VM.

Le rôle Éditeur est attribué initialement au compte de service Compute Engine par défaut d'un projet, ce qui peut être trop permissif pour de nombreux environnements d'entreprise.

Pour en savoir plus sur l'utilisation des rôles, des autorisations et des comptes de service par Compute Engine, consultez les pages suivantes :

Pour obtenir des informations s'appliquant plus généralement à Google Cloud, consultez la documentation IAM :

Automatisation des déploiements et comptes de service

Si vous déployez votre infrastructure SAP à l'aide des fichiers de configuration Terraform ou des modèles Deployment Manager fournis par Google Cloud, vous pouvez alors spécifier un compte de service de VM dans le DEPLOYMENT_TYPE.tf ou dans le fichier de configuration template.yaml.

Si vous ne spécifiez pas de compte de service, Terraform ou Deployment Manager déploie les VM avec le compte de service par défaut de votre projet Google Cloud.

Rôles et autorisations IAM

IAM fournit des rôles prédéfinis pour chaque ressource Google Cloud. Chaque rôle comporte un ensemble d'autorisations pour la ressource qui sont adaptées au niveau du rôle. Vous pouvez ajouter ces rôles aux comptes de service que vous créez.

Pour un contrôle plus restrictif ou précis, vous pouvez créer des rôles personnalisés disposant d'une ou de plusieurs autorisations.

Pour obtenir la liste des rôles prédéfinis et des autorisations qu'ils contiennent, consultez la page Comprendre les rôles.

Pour en savoir plus sur les rôles personnalisés, consultez la page Comprendre les rôles personnalisés.

Pour en savoir plus sur les rôles spécifiques à Compute Engine, consultez la page Rôles IAM Compute Engine dans la documentation Compute Engine.

Rôles IAM pour les systèmes SAP

Les rôles IAM nécessaires à vos programmes SAP dépendent des ressources que ces programmes utilisent et des tâches qu'ils exécutent.

Par exemple, si vous utilisez Terraform ou Deployment Manager pour déployer votre système SAP et que vous spécifiez un compte de service dans le fichier de configuration de Terraform ou de Deployment Manager, celui-ci doit inclure au moins les rôles suivants :

  • Utilisateur du compte de service : obligatoire.
  • Administrateur d'instances Compute : obligatoire.
  • Lecteur des objets de l'espace de stockage : requis pour télécharger le support d'installation à partir d'un bucket Cloud Storage lors du déploiement.
  • Rédacteur de journaux : requis pour écrire des messages liés au déploiement, ou d'autres messages, dans Cloud Logging.

Après le déploiement du système SAP, toutes les autorisations requises lors du déploiement ne sont pas forcément nécessaires à la VM hôte et à vos programmes SAP. Vous pouvez modifier le compte de service de VM pour supprimer des rôles ou modifier le compte de service utilisé par la VM.

Certains programmes SAP ou associés nécessitent des rôles supplémentaires, et peuvent nécessiter un compte de service distinct s'ils ne s'exécutent pas sur Google Cloud. Exemple :

  • L'agent Backint de Cloud Storage pour SAP HANA nécessite le rôle d'administrateur des objets de l'espace de stockage pour sauvegarder et récupérer des données depuis Cloud Storage.
  • L'agent Google Cloud pour SAP nécessite des rôles tels que Lecteur Compute, Lecteur Monitoring et Rédacteur de métriques Monitoring. Pour en savoir plus, consultez la section Rôles IAM requis.
  • L'outil SAP Data Services, lorsqu'il est configuré pour répliquer des données SAP dans BigQuery, nécessite à la fois le rôle d'éditeur de données BigQuery et d'utilisateur de tâche BigQuery.