ApsaraMQ for Kafka utilise des rôles liés au service pour accéder à d'autres services Alibaba Cloud, tels que Elastic Compute Service (ECS), Function Compute et Key Management Service (KMS). Un rôle lié au service est un rôle Resource Access Management (RAM) que le système crée automatiquement lors de la première utilisation de la fonctionnalité associée. Aucune configuration manuelle n'est nécessaire.
Pour en savoir plus sur le fonctionnement des rôles liés au service, consultez la rubrique Rôles liés au service.
Rôles
ApsaraMQ for Kafka utilise quatre rôles liés au service :
| Rôle | Objectif | Création automatique lorsque vous... |
|---|---|---|
| AliyunServiceRoleForAlikafka | Gère les interfaces réseau et les groupes de sécurité ECS, et interroge les ressources VPC pour les instances Kafka. | Activez ApsaraMQ for Kafka dans la console pour la première fois. |
| AliyunServiceRoleForAlikafkaConnector | Accède aux services en aval — Function Compute, OSS, Elasticsearch, DataWorks, EventBridge, Tablestore, ApsaraDB RDS, AnalyticDB for PostgreSQL et AnalyticDB for MySQL — pour la fonctionnalité de connecteur. | Create a connector dans la console pour la première fois. |
| AliyunServiceRoleForAlikafkaInstanceEncryption | Accède à KMS pour chiffrer les disques des instances Kafka. Actuellement disponible uniquement via l'API. | Déployez une instance avec chiffrement des disques en appelant l'opération StartInstance pour la première fois. |
| AliyunServiceRoleForAlikafkaETL | Accède à Function Compute pour exécuter des tâches ETL destinées à l'analyse des données. | Activez ETL dans la console pour la première fois. Consultez la rubrique Gérer les tâches ETL. |
Autorisations
Chaque rôle dispose d'une politique gérée par le système qui accorde uniquement les autorisations requises par sa fonctionnalité. Les sections suivantes résument chaque politique. Développez les blocs JSON pour afficher les documents de politique complets.
AliyunServiceRoleForAlikafka
Gère les interfaces réseau et les groupes de sécurité ECS, et interroge les ressources VPC pour configurer la connectivité réseau des instances Kafka.
Actions autorisées :
ECS — Créez, décrivez et supprimez des interfaces réseau, des autorisations d'interface réseau et des groupes de sécurité. Autorisez et révoquez des règles de groupe de sécurité.
VPC — Décrivez les vSwitches et les VPC.
RAM — Supprimez le rôle lié au service lui-même (limité à
alikafka.aliyuncs.com).
AliyunServiceRoleForAlikafkaConnector
Interagit avec les services en aval pris en charge par les connecteurs, notamment Function Compute, les bases de données, le stockage d'objets et la diffusion d'événements.
Actions autorisées :
Function Compute — Appelez, créez, supprimez et listez des fonctions, des services, des versions de service, des alias et des couches.
ApsaraDB RDS — Décrivez les bases de données.
OSS — Listez les buckets et obtenez les ACL des buckets.
Elasticsearch — Décrivez et listez les instances.
DataWorks — Créez et interrogez des processus en temps réel.
EventBridge — Créez, mettez à jour, obtenez, supprimez, listez, démarrez, mettez en pause et listez les métriques pour les diffusions d'événements.
Tablestore — Opérations complètes sur les tables et les lignes, y compris les index de recherche et la gestion des services.
AnalyticDB for PostgreSQL — Décrivez les instances et les attributs des instances.
AnalyticDB for MySQL — Décrivez les clusters, les schémas et les tables.
RAM — Supprimez le rôle lié au service lui-même (limité à
connector.alikafka.aliyuncs.com).
AliyunServiceRoleForAlikafkaInstanceEncryption
Gère les clés KMS pour le chiffrement des disques. Les opérations de chiffrement, de déchiffrement et de génération de clés de données sont limitées aux clés portant le tag acs:alikafka:instance-encryption=true.
Actions autorisées :
KMS — Listez les clés, les alias et les tags de ressource ; décrivez les clés ; ajoutez et supprimez des tags de ressources.
KMS (conditionnel) — Chiffrez, déchiffrez et générez des clés de données uniquement lorsque la clé porte le tag
acs:alikafka:instance-encryption=true.RAM — Supprimez le rôle lié au service lui-même (limité à
instanceencryption.alikafka.aliyuncs.com).
AliyunServiceRoleForAlikafkaETL
Gère les ressources Function Compute pour l'exécution des tâches ETL et transmet le rôle Function Compute par défaut.
Actions autorisées :
Function Compute — Appelez, créez, supprimez et listez des fonctions, des services, des versions de service et des alias.
RAM — Supprimez le rôle lié au service lui-même (limité à
etl.alikafka.aliyuncs.com).RAM — Transmettez le rôle
aliyunfcdefaultroleà Function Compute.
Suppression
La suppression d'un rôle lié au service retire les autorisations dont ApsaraMQ for Kafka dépend pour la fonctionnalité associée. Cette fonctionnalité cesse de fonctionner jusqu'à ce que vous recréiez le rôle. Faites preuve de prudence lors de la suppression d'un rôle lié au service.
Pour recréer un rôle supprimé, consultez les rubriques Créer un rôle RAM pour un service Alibaba Cloud approuvé et Accorder des autorisations à un rôle RAM.
FAQ
Un rôle lié au service n'est pas créé pour mon utilisateur RAM
Si le rôle existe déjà sous votre compte Alibaba Cloud, votre utilisateur RAM en hérite automatiquement. Si l'héritage échoue, créez une politique personnalisée qui accorde ram:CreateServiceLinkedRole pour le service concerné et attachez-la à votre utilisateur RAM.
Remplacez <service-name> par la valeur correspondant au rôle dont vous avez besoin :
| Rôle | Valeur du nom du service |
|---|---|
| AliyunServiceRoleForAlikafka | alikafka.aliyuncs.com |
| AliyunServiceRoleForAlikafkaConnector | connector.alikafka.aliyuncs.com |
| AliyunServiceRoleForAlikafkaInstanceEncryption | instanceencryption.alikafka.aliyuncs.com |
| AliyunServiceRoleForAlikafkaETL | etl.alikafka.aliyuncs.com |
Modèle de politique :
{
"Statement": [
{
"Action": [
"ram:CreateServiceLinkedRole"
],
"Resource": "*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ram:ServiceName": "<service-name>"
}
}
}
],
"Version": "1"
}
Pour appliquer cette politique :
Connectez-vous à la console RAM.
Créez une politique personnalisée avec le code JSON ci-dessus.
Attachez la politique à votre utilisateur RAM.
Si le rôle n'est toujours pas créé après avoir attaché la politique, attachez la politique système AliyunKafkaFullAccess à votre utilisateur RAM. Pour plus d'informations, consultez la rubrique Accorder des autorisations à l'utilisateur RAM.