Function Compute utilise le rôle lié au service AliyunServiceRoleForFC pour accéder à d'autres services Alibaba Cloud en votre nom. La politique système associée est AliyunServiceRolePolicyForFC.
Function Compute 3.0 permet d'associer AliyunServiceRoleForFC à des fonctions individuelles. Chaque fonction obtient ainsi uniquement les autorisations nécessaires, conformément au principe du moindre privilège.
Cas d'utilisation de ce rôle
Mise en réseau VPC : connectez vos fonctions à des VPC, des vSwitch ou des interfaces réseau élastiques (ENI) afin d'assurer une communication sécurisée sur un réseau privé.
Déploiement d'images conteneur : récupérez des images depuis Container Registry pour créer des fonctions basées sur des images.
Messagerie événementielle : surveillez et consommez des événements provenant d'ApsaraMQ, Simple Message Queue (anciennement MNS), EventBridge et Function Flow pour déclencher l'exécution de fonctions.
Gestion des journaux : collectez les journaux d'exécution des fonctions dans Simple Log Service pour la recherche, l'analyse, la visualisation et le dépannage.
Contenu de la politique
La politique AliyunServiceRolePolicyForFC accorde l'accès aux services VPC, ECS, Simple Log Service et Container Registry. Elle permet ainsi la connectivité VPC, le téléchargement d'images, la récupération de ressources et l'exportation des journaux.
{
"Version": "1",
"Statement": [
{
"Action": [
"vpc:DescribeVSwitchAttributes",
"vpc:DescribeVpcAttribute"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ecs:CreateNetworkInterface",
"ecs:DeleteNetworkInterface",
"ecs:DescribeNetworkInterfaces",
"ecs:CreateNetworkInterfacePermission",
"ecs:DeleteNetworkInterfacePermission",
"ecs:DescribeNetworkInterfacePermissions"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"cr:PullRepository",
"cr:GetArtifactTag",
"cr:GetAuthorizationToken",
"cr:GetRepository",
"cr:GetRepositoryTag",
"cr:GetRepoTagManifest",
"cr:GetRepositoryManifest",
"cr:GetInstanceVpcEndpoint",
"cr:GetInstance",
"cr:GetNamespace",
"cr:GetArtifactBuildRule",
"cr:CreateArtifactBuildTask"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"fc:InvokeFunction",
"eventbridge:PutEvents",
"mq:PUB",
"mq:OnsInstanceBaseInfo",
"mns:SendMessage",
"mns:PublishMessage",
"fnf:ReportTaskSucceeded",
"fnf:ReportTaskFailed"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"log:CreateProject",
"log:CreateLogStore",
"log:GetProject",
"log:GetLogStore",
"log:DeleteProject",
"log:DeleteLogStore",
"log:GetLogStoreLogs"
],
"Resource": [
"acs:log:*:*:project/aliyun-fc-*",
"acs:log:*:*:project/*/logstore/function-log*"
],
"Effect": "Allow"
},
{
"Action": [
"log:PostLogStoreLogs"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ram:GetRole"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Effect": "Allow",
"Action": "ram:DeleteServiceLinkedRole",
"Resource": "*",
"Condition": {
"StringEquals": {
"ram:ServiceName": "fc.aliyuncs.com"
}
}
}
]
}
Création du rôle lié au service
Lors de votre connexion à la console Function Compute 3.0, le système vous invite à créer le rôle AliyunServiceRoleForFC s'il n'existe pas encore. Après confirmation, le rôle est créé avec la politique AliyunServiceRolePolicyForFC attachée.
Vérifiez la création du rôle :
Consultez la page Roles dans la console RAM.
Appelez l'opération API ListRoles.
Reconnectez-vous à la console Function Compute 3.0 : une connexion réussie confirme l'existence du rôle.
Suppression du rôle lié au service
La suppression d'AliyunServiceRoleForFC empêche la console Function Compute 3.0 de fonctionner correctement. Procédez avec prudence.
Pour supprimer le rôle lié au service depuis la console RAM :
Connectez-vous à la console RAM en tant qu'administrateur RAM.
Dans le volet de navigation de gauche, accédez à .
Sur la page Roles, localisez le rôle RAM à supprimer et cliquez sur Delete Role dans la colonne Actions.
-
Dans la boîte de dialogue Delete Role, saisissez le nom du rôle et cliquez sur Delete Role.
Le service RAM vérifie si des ressources cloud utilisent encore ce rôle. En cas de dépendances, la suppression échoue. Supprimez les ressources dépendantes indiquées dans le message d'erreur, puis réessayez.
Autorisations utilisateur RAM
Pour autoriser un utilisateur RAM à créer ou supprimer ce rôle, accordez les autorisations ram:CreateServiceLinkedRole et ram:DeleteServiceLinkedRole depuis votre compte Alibaba Cloud, ou attachez la politique AliyunRAMFullAccess.
Exemple de politique personnalisée :
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ram:CreateServiceLinkedRole",
"ram:DeleteServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"ram:ServiceName": "fc.aliyuncs.com"
}
}
}
]
}