Si les politiques système d'Alibaba Cloud Elasticsearch ne répondent pas à vos besoins, créez des politiques personnalisées pour un contrôle d'accès granulaire. Cette rubrique explique comment créer une politique personnalisée et fournit des exemples de politiques pour accorder des autorisations sur des instances et des tags spécifiques.
Informations générales
Alibaba Cloud Elasticsearch prend en charge les politiques système suivantes :
|
Nom de la politique |
Description |
|
AliyunElasticsearchReadOnlyAccess |
Accorde des autorisations en lecture seule sur les instances Alibaba Cloud Elasticsearch ou Logstash. Cette politique est destinée aux utilisateurs en lecture seule. |
|
AliyunElasticsearchFullAccess |
Accorde des autorisations de gestion complètes sur les instances Alibaba Cloud Elasticsearch, les instances Logstash et les collecteurs Beats pour les administrateurs. |
Ces politiques n'incluent pas les autorisations pour CloudMonitor ou les tags. Créez des politiques personnalisées pour accorder ces autorisations. Pour plus d'informations, consultez Politique pour une instance spécifique.
Prérequis
Maîtrisez la structure de base et la syntaxe du langage des politiques. Pour plus d'informations, consultez Structure et syntaxe des politiques.
Notes d'utilisation
Les politiques personnalisées s'appliquent au niveau du compte, et non au niveau du groupe de ressources. Pour afficher uniquement certaines ressources dans la console pour un utilisateur RAM, accordez les autorisations via un groupe de ressources. Pour plus d'informations, consultez Autoriser un utilisateur RAM à gérer des instances spécifiques à l'aide d'un groupe de ressources.
Procédure
Pour créer une politique personnalisée, consultez Créer une politique personnalisée dans l'onglet JSON. Saisissez un document de politique selon vos besoins métier, ou importez et modifiez une politique système existante.
Exemples de documents de politique :
-
Autorisation d'accéder aux ressources Virtual Private Cloud (VPC) appartenant à votre compte Alibaba Cloud.
"elasticsearch:DescribeVpcs","elasticsearch:DescribeVSwitches" { "Version": "1", "Statement": [ { "Action": [ "elasticsearch:DescribeVpcs", "elasticsearch:DescribeVSwitches" ], "Resource": "*", "Effect": "Allow" } ] } -
Autorisation permettant à un utilisateur RAM de payer les commandes.
{ "Version": "1", "Statement": [ { "Action": [ "bss:PayOrder" ], "Resource": "*", "Effect": "Allow" } ] }
Pour d'autres exemples de politiques, consultez Exemples de politiques.
Exemples de politiques
Avant d'utiliser les exemples de code suivants, remplacez les espaces réservés par vos informations réelles :
<yourAccountId> : Remplacez cette valeur par l'ID de votre compte Alibaba Cloud. Les caractères génériques (
*) ne sont pas pris en charge. Pour trouver l'ID de votre compte, placez le curseur sur votre avatar d'utilisateur dans le coin supérieur droit de la console pour afficher l'Account ID.<yourInstanceId> : Remplacez cette valeur par l'ID de l'instance cible. Les caractères génériques (
*) ne sont pas pris en charge. Pour trouver l'ID de l'instance, consultez Afficher les informations de base d'une instance.
Politique d'administrateur
La politique suivante accorde à un utilisateur RAM sous le compte Alibaba Cloud <yourAccountId> des autorisations opérationnelles complètes sur toutes les instances Alibaba Cloud Elasticsearch.
{
"Statement": [
{
"Action": [
"elasticsearch:*"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"cms:*"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": "bss:PayOrder",
"Effect": "Allow",
"Resource": "*"
},
{
"Action": "ram:CreateServiceLinkedRole",
"Resource": "*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ram:ServiceName": [
"collector.elasticsearch.aliyuncs.com"
]
}
}
}
],
"Version": "1"
}
Politique pour une instance spécifique
La politique suivante accorde à un utilisateur RAM sous le compte Alibaba Cloud <yourAccountId> les autorisations suivantes :
Autorisations pour effectuer toutes les opérations liées à Elasticsearch sur une instance spécifique.
Autorisations pour afficher la liste des instances.
Autorisations pour afficher les tags de toutes les instances.
Autorisations pour afficher la liste des collecteurs.
La page de gestion des instances dans la console Alibaba Cloud Elasticsearch s'intègre à des services externes tels que les collecteurs Beats, la surveillance et les alertes avancées, ainsi qu'aux tags. Par conséquent, lorsque vous accordez des autorisations sur une instance spécifique, accordez également des autorisations pour ces services dépendants, comme illustré dans l'exemple de politique suivant.
{
"Statement": [
{
"Action": [
"elasticsearch:*"
],
"Effect": "Allow",
"Resource": "acs:elasticsearch:*:<yourAccountId>:instances/<yourInstanceId>"
},
{
"Action": [
"cms:DescribeActiveMetricRuleList",
"cms:ListAlarm",
"cms:QueryMetricList"
],
"Effect": "Allow",
"Resource": "*"
},
{
"Action": [
"elasticsearch:ListTags"
],
"Effect": "Allow",
"Resource": "acs:elasticsearch:*:<yourAccountId>:tags/*"
},
{
"Action": [
"elasticsearch:ListInstance",
"elasticsearch:ListSnapshotReposByInstanceId"
],
"Effect": "Allow",
"Resource": "acs:elasticsearch:*:<yourAccountId>:instances/*"
},
{
"Action": [
"elasticsearch:ListLogstash"
],
"Effect": "Allow",
"Resource": "acs:elasticsearch:*:<yourAccountId>:logstashes/*"
},
{
"Action": [
"elasticsearch:ListCollectors"
],
"Effect": "Allow",
"Resource": "acs:elasticsearch:*:<yourAccountId>:collectors/*"
}
],
"Version": "1"
}
|
Action |
Description |
|
Autorisations pour CloudMonitor. La liste suivante décrit chaque autorisation :
|
|
Autorisation permettant de payer les commandes. Une fois cette autorisation accordée, l'utilisateur RAM peut régler les commandes d'achat d'instances. |
|
Accorde à un utilisateur RAM l'autorisation d'accéder aux listes VPC (Virtual Private Cloud) et vSwitch de votre compte. Cela permet à l'utilisateur de sélectionner un VPC et un vSwitch lors de la création d'une instance. Important
Lorsque vous accordez à un utilisateur RAM l'autorisation de créer une instance, incluez également l'action |
|
Accorde toutes les autorisations opérationnelles sur les instances Alibaba Cloud Elasticsearch. Cela permet à l'utilisateur RAM d'effectuer toute opération sur toutes les instances ou sur des instances spécifiées. Important
L'autorisation |
|
Accorde l'autorisation d'afficher les tags des instances Alibaba Cloud Elasticsearch. |
|
|
|
Accorde l'autorisation d'afficher la liste des collecteurs Beats dans la console. |
|
Accorde l'autorisation d'afficher la liste de toutes les instances Logstash d'une région sur la page de liste des instances. |
|
Effect |
Description |
|
Allow |
Autorise l'utilisateur RAM à effectuer les opérations spécifiées dans l'élément Action. |
|
Deny |
Interdit à l'utilisateur RAM d'effectuer les opérations spécifiées dans l'élément Action. |
|
Paramètre |
Description |
|
* |
Toutes les ressources d'instance. |
|
<yourInstanceId> |
Une ressource d'instance spécifique. Remplacez cette valeur par l'ID de l'instance cible. Pour trouver l'ID, consultez Afficher les informations de base d'une instance. |
Autorisations API
Le tableau suivant répertorie les éléments Resource et Action pour les opérations API Elasticsearch.
|
Méthode |
URI |
Resource |
Action |
|
GET |
/instances |
instances/* |
ListInstance |
|
POST |
/instances |
instances/* |
CreateInstance |
|
GET |
/instances/instanceId |
instances/instanceId |
DescribeInstance |
|
DELETE |
/instances/instanceId |
instances/instanceId |
DeleteInstance |
|
POST |
/instances/instanceId/actions/restart |
instances/instanceId |
RestartInstance |
|
PUT |
/instances/instanceId |
instances/instanceId |
UpdateInstance |
Étapes suivantes
Après avoir créé une politique personnalisée, accordez des autorisations à un utilisateur RAM via la console RAM, une API ou un SDK. Pour plus d'informations, consultez Accorder des autorisations à un utilisateur RAM.