Aller au contenu principal

Cloud connectivity - Prérequis AWS

Cette section décrit les conditions préalables pour l’utilisation d’Evolution Platform AWS Cloud Connect.

Voici les prérequis :

  • Création d’un utilisateur IAM dédié
  • Définition des permissions de l’utilisateur

Prérequis 1 : Création d’un utilisateur IAM dédié

AWS IAM (Identity and Access Management) permet de créer des comptes techniques dédiés à des services comme Evolve, afin de leur fournir un accès contrôlé aux API AWS et à la console de gestion.

Ces comptes ne sont pas destinés aux développeurs ou aux employés, mais aux intégrations automatisées, comme la plateforme Evolve.

Nous recommandons vivement de créer un utilisateur IAM dédié pour Evolve (par exemple evolve-access), afin d’assurer une séparation claire entre:

  • Les comptes IAM des collaborateurs de votre organisation
  • Les comptes IAM dits « robots » utilisés par des services tiers comme Evolve

Cette séparation permet une meilleure gestion des permissions, un suivi plus précis des accès et une sécurité renforcée.

Créer un utilisateur IAM - AWS Identity and Access Management (IAM) – Documentation AWS
Générer ou gérer des clés d’accès IAM – Documentation AWS

Prérequis 2 : Définition des permissions de l’utilisateur

Une fois l’utilisateur IAM dédié à la plateforme Evolve (souvent nommé "cloudco") créé, il est essentiel de lui attribuer des politiques IAM (IAM policies): ce sont des ensembles de permissions qui définissent ce que cet utilisateur peut faire sur votre compte AWS.

Recommandations :

  • Limiter les permissions au strict nécessaire, en évitant les jokers * si possible
  • Documenter clairement toutes les politiques attachées à cet utilisateur
  • Utiliser de préférence des politiques gérées par AWS ou des politiques personnalisées, adaptées à vos besoins

Politiques IAM – Documentation AWS

Permissions minimales

Voici les permissions IAM minimales qu'un client doit attribuer à Orange Business :

  • Accepter des Hosted Connections créées
  • Créer et gérer des Virtual Interfaces (VIF)
  • Associer ces VIF à un VPC, VGW ou *Direct Connect Gateway
  • Lire les configuration réseau
FonctionPermissions requises
Accepter Hosted Connectiondirectconnect:ConfirmConnection
Créer Private/Public VIFdirectconnect:Create*VirtualInterface
Associer VIF à VPC/VGW/DXGWdirectconnect:AssociateVirtualInterface
Lire configuration réseauec2:Describe*

Pour les CloudCo Aws Public

EC2 – Découverte & gestion des Gateways réseau :

BesoinPermission IAM
Lister les régions AWSec2:DescribeRegions
Tester l’accès à une régionec2:DescribeAvailabilityZones
Lister les VPCec2:DescribeVpcs
Lister les Transit Gateways (TGW)ec2:DescribeTransitGateways
Lister les VPN Gateways (VGW)ec2:DescribeVpnGateways
Créer un Customer Gatewayec2:CreateCustomerGateway
Supprimer un Customer Gatewayec2:DeleteCustomerGateway
Lister les VPN Connectionsec2:DescribeVpnConnections
Créer une VPN Connectionec2:CreateVpnConnection
Supprimer une VPN Connectionec2:DeleteVpnConnection

Pour les CloudCo Aws privés

Permissions IAM requises – AWS Direct Connect :

ExigenceDescriptionACTION AWS API
Permission IAM requiseLister les connexions Direct Connectdirectconnect:DescribeConnections
Permission IAM requiseConfirmer une connexion hébergéedirectconnect:ConfirmConnection
Permission IAM requiseLister les Virtual Interfaces (VIF)directconnect:DescribeVirtualInterfaces
Permission IAM requiseLister les localisations Direct Connectdirectconnect:DescribeLocations
Permission IAM requiseLister les interconnects Direct Connectdirectconnect:DescribeInterconnects
Permission IAM requiseLire les tags Direct Connectdirectconnect:DescribeTags
Permission IAM requiseCréer une Virtual Interface Privéedirectconnect:CreatePrivateVirtualInterface
Permission IAM requiseCréer une Virtual Interface Transitdirectconnect:CreateTransitVirtualInterface
Permission IAM requiseSupprimer une Virtual Interface Privéedirectconnect:DeletePrivateVirtualInterface
Permission IAM requiseSupprimer une Virtual Interface Transitdirectconnect:DeleteTransitVirtualInterface
Permission IAM requiseLister les Gateways Direct Connectdirectconnect:DescribeDirectConnectGateways

AWS Direct Connect - Autorisations IAM Documentation

Autorisations Direct Connect


Action IAMDescription fonctionnelle
directconnect:DescribeConnectionsAfficher les connexions Direct Connect disponibles
directconnect:ConfirmConnectionAccepter / confirmer une connexion
directconnect:DescribeVirtualInterfacesLister les interfaces virtuelles (VIF)
directconnect:DescribeLocationsAfficher les emplacements disponibles
directconnect:DescribeInterconnectsAfficher les interconnexions
directconnect:DescribeTagsLire les balises de ressource
directconnect:CreatePrivateVirtualInterfaceCréer une VIF privée (VPC)
directconnect:CreateTransitVirtualInterfaceCréer une VIF de transit (TGW)
directconnect:DescribeDirectConnectGatewaysAfficher les passerelles Direct Connect
directconnect:DescribeDirectConnectGatewayAssociationsAfficher les associations Passerelle ↔ VIF
directconnect:TagResourceAjouter ou modifier des balises
directconnect:DeleteVirtualInterfaceSupprimer une VIF

Autorisations réseau EC2

Action IAMDescription fonctionnelle
ec2:DescribeVpnGatewaysAfficher les passerelles VPN virtuelles
ec2:DescribeRegionsLister les régions AWS

Exemple JSON pour l'implémentation des autorisations IAM

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowDirectConnectAndNetworkManagement",
"Effect": "Allow",
"Action": [
"directconnect:DescribeConnections",
"directconnect:ConfirmConnection",
"directconnect:DescribeVirtualInterfaces",
"directconnect:DescribeLocations",
"directconnect:DescribeInterconnects",
"directconnect:DescribeTags",
"directconnect:CreatePrivateVirtualInterface",
"directconnect:CreateTransitVirtualInterface",
"directconnect:DescribeDirectConnectGateways",
"ec2:DescribeVpnGateways",
"ec2:DescribeRegions"
],
"Resource": "*"
},
{
"Sid": "AllowAccountListRegions",
"Effect": "Allow",
"Action": "account:ListRegions",
"Resource": "arn:aws:account::<ACCOUNT_ID_CLIENT>:account"
},
{
"Sid": "AllowVIFManagementMultiRegion",
"Effect": "Allow",
"Action": [
"directconnect:TagResource",
"directconnect:DeleteVirtualInterface"
],
"Resource": "arn:aws:directconnect:*:<ACCOUNT_ID_CLIENT>:dxvif/*"
},
{
"Sid": "AllowAllDXGatewayAssociations",
"Effect": "Allow",
"Action": "directconnect:DescribeDirectConnectGatewayAssociations",
"Resource": "*"
}
]
}