Les stratégies personnalisées accordent un accès granulaire aux ressources Simple Message Queue (anciennement MNS). Chaque stratégie définit les actions qu'une identité RAM peut effectuer sur des ressources spécifiques, conformément au principe du moindre privilège.
Fonctionnement des stratégies personnalisées
Resource Access Management (RAM) prend en charge deux types de stratégies : les stratégies système et les stratégies personnalisées. Les stratégies système sont prédéfinies par Alibaba Cloud. Les stratégies personnalisées sont des documents JSON que vous créez et gérez.
Pour utiliser une stratégie personnalisée, associez-la à un utilisateur RAM, un groupe d'utilisateurs ou un rôle RAM. La stratégie ne prend effet qu'après cette association. Pour supprimer une stratégie personnalisée, détachez-la préalablement de toutes les entités principales. RAM propose également la gestion des versions pour les stratégies personnalisées, afin de suivre et d'annuler les modifications.
Actions de gestion des ressources
Ces actions contrôlent les opérations du cycle de vie des ressources disponibles dans la console SMQ et via l'API SMQ.
Gestion des files d'attente
| Action | Opération API | Niveau d'accès | Ressource |
|---|---|---|---|
mns:ListQueue |
ListQueue | List | acs:mns:${regionId}:${accountId}:/queues |
mns:CreateQueue |
CreateQueue | Write | acs:mns:${regionId}:${accountId}:/queues/${queueName} |
mns:DeleteQueue |
DeleteQueue | Write | acs:mns:${regionId}:${accountId}:/queues/${queueName} |
mns:GetQueueAttributes |
GetQueueAttributes | Read | acs:mns:${regionId}:${accountId}:/queues/${queueName} |
mns:SetQueueAttributes |
SetQueueAttributes | Write | acs:mns:${regionId}:${accountId}:/queues/${queueName} |
Gestion des topics
| Action | Opération API | Niveau d'accès | Ressource |
|---|---|---|---|
mns:ListTopic |
ListTopic | List | acs:mns:${regionId}:${accountId}:/topics |
mns:CreateTopic |
CreateTopic | Write | acs:mns:${regionId}:${accountId}:/topics/${topicName} |
mns:DeleteTopic |
DeleteTopic | Write | acs:mns:${regionId}:${accountId}:/topics/${topicName} |
mns:GetTopicAttributes |
GetTopicAttributes | Read | acs:mns:${regionId}:${accountId}:/topics/${topicName} |
mns:SetTopicAttributes |
SetTopicAttributes | Write | acs:mns:${regionId}:${accountId}:/topics/${topicName} |
Gestion des abonnements
| Action | Opération API | Niveau d'accès | Ressource |
|---|---|---|---|
mns:ListSubscriptionByTopic |
ListSubscriptionByTopic | List | acs:mns:${regionId}:${accountId}:/topics/${topicName}/subscriptions |
mns:Subscribe |
Subscribe | Write | acs:mns:${regionId}:${accountId}:/topics/${topicName}/subscriptions/${subscriptionName} |
mns:Unsubscribe |
Unsubscribe | Write | acs:mns:${regionId}:${accountId}:/topics/${topicName}/subscriptions/${subscriptionName} |
mns:GetSubscriptionAttributes |
GetSubscriptionAttributes | Read | acs:mns:${regionId}:${accountId}:/topics/${topicName}/subscriptions/${subscriptionName} |
mns:SetSubscriptionAttributes |
SetSubscriptionAttributes | Write | acs:mns:${regionId}:${accountId}:/topics/${topicName}/subscriptions/${subscriptionName} |
Opérations de messagerie
Ces actions contrôlent l'envoi et la réception de messages via les SDK client. Pour obtenir la liste complète, consultez la rubrique Liste des opérations par fonction.
Messagerie par file d'attente
| Action | Opération API | Niveau d'accès | Ressource |
|---|---|---|---|
mns:SendMessage |
SendMessage, BatchSendMessage | Write | acs:mns:${regionId}:${accountId}:/queues/${queueName}/messages |
mns:ReceiveMessage |
ReceiveMessage, BatchReceiveMessage | Read | acs:mns:${regionId}:${accountId}:/queues/${queueName}/messages |
mns:DeleteMessage |
DeleteMessage, BatchDeleteMessage | Write | acs:mns:${regionId}:${accountId}:/queues/${queueName}/messages |
mns:PeekMessage |
PeekMessage, BatchPeekMessage | Read | acs:mns:${regionId}:${accountId}:/queues/${queueName}/messages |
mns:ChangeMessageVisibility |
ChangeMessageVisibility | Write | acs:mns:${regionId}:${accountId}:/queues/${queueName}/messages |
Les opérations par lot utilisent la même action que leurs équivalents pour un message unique. Par exemple,SendMessageetBatchSendMessagenécessitent tous deux l'actionmns:SendMessage.
Messagerie par topic
| Action | Opération API | Niveau d'accès | Ressource |
|---|---|---|---|
mns:PublishMessage |
PublishMessage | Write | acs:mns:${regionId}:${accountId}:/topics/${topicName}/messages |