Todos os produtos
Search
Central de documentação

Microservices Engine:Grant permissions for the Microservices Governance Center

Última atualização: Jun 28, 2026

O Microservices Engine (MSE) usa o Resource Access Management (RAM) para controlar o acesso ao Microservices Governance Center. Em vez de compartilhar as credenciais da sua conta Alibaba Cloud, crie usuários RAM e conceda a cada um apenas as permissões necessárias. Você pode conceder permissões pelo console ou chamando operações da OpenAPI.

Cenários

Em uma empresa típica, os membros da equipe têm responsabilidades diferentes e precisam de níveis distintos de acesso:

Função

Nível de acesso

Exemplo

Engenheiro de O&M

Acesso total

Crie, configure e exclua recursos do MSE

Desenvolvedor

Configuração de regras

Configure regras de aplicação

Proprietário da aplicação

Acesso total com escopo definido

Gerencie uma aplicação e visualize todas as outras

Testador

Escopo por namespace

Gerencie todas as aplicações apenas no namespace de teste

Com o RAM, você pode:

  • Conceder a cada membro da equipe apenas as permissões exigidas pela função.

  • Manter todos os custos de recursos na conta corporativa, sem faturamento separado para usuários RAM.

  • Revogar permissões ou exclua um usuário RAM a qualquer momento.

Etapa 1: Crie um usuário RAM

Crie um usuário RAM para cada membro da equipe que precise de acesso. Para obter instruções, consulte Criar um usuário RAM.

Etapa 2: Conceder permissões ao usuário RAM

Antes que um usuário RAM possa trabalhar com o MSE, conceda as permissões obrigatórias.

  1. Faça login no console RAM como administrador do RAM.

  2. No painel de navegação à esquerda, escolha Identities > Users.

  3. Na página Users, localize o usuário RAM e clique em Add Permissions na coluna Actions. Para conceder as mesmas permissões a vários usuários simultaneamente, selecione os usuários e clique em Add Permissions na parte inferior da página.

    Add Permissions button in the Actions column

  4. No painel Add Permissions, selecione um tipo de política de acesso. Na caixa de texto, insira uma palavra-chave da política desejada. Clique na política nos resultados da pesquisa para adicioná-la à lista Selected Policy à direita e clique em OK.

  5. Confirme o resultado da autorização e clique em Close.

Políticas do sistema e políticas personalizadas

O RAM oferece dois tipos de políticas de acesso: políticas do sistema para controle amplo e políticas personalizadas para restrições refinadas.

Políticas do sistema (granularidade grossa)

O MSE fornece duas políticas de sistema integradas:

Nome da política

Descrição

Recomendada para

AliyunMSEFullAccess

Permissões totais para todas as operações do MSE. Esta política equivale às permissões de uma conta Alibaba Cloud.

Engenheiros de O&M que criam e gerenciam recursos

AliyunMSEReadOnlyAccess

Acesso somente leitura ao console do MSE

Desenvolvedores que precisam apenas visualizar configurações e métricas

Políticas personalizadas (granularidade fina)

Se as políticas do sistema forem muito abrangentes, crie políticas personalizadas para restringir o acesso a namespaces, aplicações ou ações de API específicos. Para obter instruções, consulte Criar uma política personalizada.

As seções a seguir apresentam modelos de políticas prontos para uso em cenários comuns.

Exemplos de políticas personalizadas

Formato do identificador de recurso

As políticas do MSE usam os seguintes padrões de ARN de recurso:

Escopo

ARN do recurso

Todos os recursos do MSE

acs:mse:*:*:*

Um namespace específico

acs:mse:*:*:namespace/${ns}

Todas as aplicações em um namespace

acs:mse:*:*:namespace/${ns}/application/*

Uma aplicação específica

acs:mse:*:*:namespace/${ns}/application/${appName}

Substitua ${ns} pelo ID do namespace e ${appName} pelo nome da aplicação.

Acesso somente leitura a todas as aplicações

Conceda esta política aos membros da equipe que precisam monitorar o status e as métricas das aplicações, mas não devem modifique configurações.

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "mse:QueryNamespace",
        "mse:GetApplicationListWithMetircs",
        "mse:ListNamespaces",
        "mse:GetEventFilterOptions",
        "mse:ListEventRecords",
        "mse:GetEventDetail",
        "mse:FetchLogConfig",
        "mse:QueryBusinessLocations",
        "mse:GetApplicationInstanceList",
        "mse:listGrayTag",
        "mse:QueryServiceDetailWithMetrics",
        "mse:GetEventDetail",
        "mse:ListEventsPage",
        "mse:ListEventsByType",
        "mse:GetApplicationTagList"
      ],
      "Resource": "acs:mse:*:*:*"
    },
    {
      "Effect": "Allow",
      "Action": "mse:GetApplicationList",
      "Resource": "acs:mse:*:*:namespace/${ns}"
    }
  ]
}

Acesso total a uma aplicação específica

Use esta política para proprietários de aplicações que gerenciam sua própria aplicação, mas não devem modifique outras. A política combina permissões totais para uma aplicação com acesso somente leitura a todo o restante.

A política contém três declarações:

  • Declaração 1: Permissões totais (mse:*) com escopo limitado à aplicação alvo.

  • Declarações 2--3: Acesso somente leitura a todas as aplicações para navegação no console.

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "mse:*",
      "Resource": "acs:mse:*:*:namespace/${ns}/application/${appName}"
    },
    {
      "Effect": "Allow",
      "Action": [
        "mse:QueryNamespace",
        "mse:GetApplicationListWithMetircs",
        "mse:ListNamespaces",
        "mse:GetEventFilterOptions",
        "mse:ListEventRecords",
        "mse:GetEventDetail",
        "mse:FetchLogConfig",
        "mse:QueryBusinessLocations",
        "mse:GetApplicationInstanceList",
        "mse:listGrayTag",
        "mse:QueryServiceDetailWithMetrics",
        "mse:GetEventDetail",
        "mse:ListEventsPage",
        "mse:ListEventsByType",
        "mse:GetApplicationTagList"
      ],
      "Resource": "acs:mse:*:*:*"
    },
    {
      "Effect": "Allow",
      "Action": "mse:GetApplicationList",
      "Resource": "acs:mse:*:*:namespace/${ns}"
    }
  ]
}

Acesso total a um namespace específico

Use esta política para testadores que gerenciam todas as aplicações em um ambiente de teste, mas não devem acessar recursos de produção.

A política possui três declarações:

  • Declaração 1: Permissões totais para todas as aplicações no namespace alvo.

  • Declaração 2: Acesso somente leitura a recursos globais do console, incluindo listas de aplicações, configurações de faixas de tráfego, políticas de autenticação e listas de serviços.

  • Declaração 3: Permissões no nível do namespace para listagem de aplicações e gerenciamento de faixas de tráfego.

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "mse:*",
      "Resource": "acs:mse:*:*:namespace/${ns}/application/*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "mse:QueryNamespace",
        "mse:GetApplicationListWithMetircs",
        "mse:ListNamespaces",
        "mse:GetEventFilterOptions",
        "mse:ListEventRecords",
        "mse:GetEventDetail",
        "mse:FetchLogConfig",
        "mse:QueryBusinessLocations",
        "mse:GetApplicationInstanceList",
        "mse:listGrayTag",
        "mse:QueryServiceDetailWithMetrics",
        "mse:GetEventDetail",
        "mse:ListEventsPage",
        "mse:ListEventsByType",
        "mse:GetApplicationTagList",
        "mse:QueryAllSwimmingLaneGroup",
        "mse:QueryAllSwimmingLane",
        "mse:ListAppBySwimmingLaneGroupTags",
        "mse:ListAppBySwimmingLaneGroupTag",
        "mse:QuerySwimmingLaneById",
        "mse:GetTagsBySwimmingLaneGroupId",
        "mse:ListSwimmingLaneGateway",
        "mse:ListSwimmingLaneGatewayRoute",
        "mse:ListAuthPolicy",
        "mse:GetServiceList",
        "mse:GetServiceListPage"
      ],
      "Resource": "acs:mse:*:*:*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "mse:GetApplicationList",
        "mse:CreateOrUpdateSwimmingLaneGroup",
        "mse:CreateOrUpdateSwimmingLane",
        "mse:DeleteSwimmingLaneGroup",
        "mse:DeleteSwimmingLaneGroup",
        "mse:DeleteSwimmingLane"
      ],
      "Resource": "acs:mse:*:*:namespace/${ns}"
    }
  ]
}

Permissões para integração rápida

Um usuário RAM que executa o assistente de integração rápida precisa das seguintes permissões mínimas para descobrir clusters, instale agentes e gerenciar namespaces.

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "mse:CheckServiceLinkRole",
        "mse:GetUserStatus",
        "mse:QueryNamespace",
        "mse:ListCsKubernetesClusters",
        "mse:CheckEciRole",
        "mse:ListCsKubernetesClusters",
        "mse:CheckCsRole",
        "mse:GetClusterOnePilotInfo",
        "mse:GetGovernanceKubernetesCluster",
        "mse:InstallOnePilot",
        "mse:CreateNamespace",
        "mse:ModifyGovernanceKubernetesCluster",
        "mse:QueryGovernanceKubernetesCluster",
        "mse:ListNamespaces"
      ],
      "Resource": "*"
    }
  ]
}

Acesso total de leitura e gravação a todos os recursos governados

Aviso

Esta política concede acesso irrestrito a todos os recursos de governança do MSE. Use-a apenas para testes de permissão. Não a aplique em produção.

A política a seguir lista todas as ações de API de governança do MSE. Em produção, substitua Action por mse:* e Resource por acs:mse:*:*:* para obter o mesmo efeito com menos manutenção.

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "mse:AddAuthPolicy",
        "mse:AddServiceTimeConfig",
        "mse:AddWhiteScreenRule",
        "mse:ApplyGlobalReadWriteSplitRule",
        "mse:ApplyReadWriteSplitRule",
        "mse:ApplyTagPolicies",
        "mse:BatchUpdateRulesEnable",
        "mse:BindSentinelBlockFallbackDefinition",
        "mse:CheckCanaryPolicy",
        "mse:CheckCsRole",
        "mse:CheckEciRole",
        "mse:CheckRole",
        "mse:CheckServiceLinkedRoleForDeleting",
        "mse:CheckUserReadinessConfig",
        "mse:CheckXTraceServiceStatus",
        "mse:CloneSentinelRuleFromAhas",
        "mse:CreateApplication",
        "mse:CreateCircuitBreakerRule",
        "mse:CreateFlowRule",
        "mse:CreateGovernanceKubernetesCluster",
        "mse:CreateHotParamRule",
        "mse:CreateIsolationRule",
        "mse:CreateLicenseKey",
        "mse:CreateMseServiceApplication",
        "mse:CreateNamespace",
        "mse:CreateOrUpdateEmptyPushSetting",
        "mse:CreateOrUpdateSwimmingLane",
        "mse:CreateOrUpdateSwimmingLaneGroup",
        "mse:CreateSentinelBlockFallbackDefinition",
        "mse:CreateWebFlowRule",
        "mse:DeleteCircuitBreakerRules",
        "mse:DeleteFaultInjectionRule",
        "mse:DeleteFlowRules",
        "mse:DeleteGovernanceKubernetesCluster",
        "mse:DeleteHotParamRules",
        "mse:DeleteIsolationRules",
        "mse:DeleteNamespace",
        "mse:DeleteSentinelBlockFallbackDefinition",
        "mse:DeleteSwimmingLane",
        "mse:DeleteSwimmingLaneGroup",
        "mse:DeleteWebFlowRules",
        "mse:DeleteWhiteScreenRule",
        "mse:DescribeAppAgentStatus",
        "mse:FetchAppLogConfig",
        "mse:FetchDataSourceConfig",
        "mse:FetchGlobalReadWriteSplitRules",
        "mse:FetchLogConfig",
        "mse:FetchLosslessRuleList",
        "mse:FetchReadWriteSplitRules",
        "mse:FetchRoutePolicyList",
        "mse:FetchWhiteScreenRule",
        "mse:GenerateAgentLogSts",
        "mse:GetAppMessageQueueRoute",
        "mse:GetApplicationDetail",
        "mse:GetApplicationInstanceList",
        "mse:GetApplicationInstancesWithMetircs",
        "mse:GetApplicationList",
        "mse:GetApplicationListWithMetircs",
        "mse:GetApplicationTagList",
        "mse:GetAuthPolicyInfo",
        "mse:GetCanaryStatus",
        "mse:GetClusterOnePilotInfo",
        "mse:GetDubboServicePageWithMetrics",
        "mse:GetDubboTestMethod",
        "mse:GetGovernanceKubernetesCluster",
        "mse:GetGovernanceKubernetesClusterList",
        "mse:GetLicenseKey",
        "mse:GetLocalityDistributionMetrics",
        "mse:GetLocalityRule",
        "mse:GetLosslessRuleByApp",
        "mse:GetMockRuleByConsumerAppId",
        "mse:GetMockRuleById",
        "mse:GetMockRuleByProviderAppId",
        "mse:GetNetworkInfo",
        "mse:GetOpenSergoInfoByClusterId",
        "mse:GetOutlierPolicyInfo",
        "mse:GetOverview ",
        "mse:GetResourcePackageStatus",
        "mse:GetResourcePackageStatusWithVersion",
        "mse:GetRetryRule",
        "mse:GetRoutePolicy",
        "mse:GetServiceConsumersPage",
        "mse:GetServiceDetail",
        "mse:GetServiceList",
        "mse:GetServiceListPage",
        "mse:GetServiceMethodPage",
        "mse:GetServiceMethodPageWithMetrics",
        "mse:GetServiceProvidersPage",
        "mse:GetSpringCloudTestMethod",
        "mse:GetTagKey",
        "mse:GetTagVal",
        "mse:GetTagsBySwimmingLaneGroupId",
        "mse:GetTrace",
        "mse:GetUserStatus",
        "mse:InstallOnePilot",
        "mse:InvokeDubboTestMethod",
        "mse:InvokeIstioTestMethod",
        "mse:InvokeSpringCloudTestMethod",
        "mse:ListAdaptiveOverloadProtectionConfig",
        "mse:ListAppBySwimmingLaneGroupTag",
        "mse:ListAppBySwimmingLaneGroupTags",
        "mse:ListAppResource",
        "mse:ListAppResourceWithMetrics",
        "mse:ListApplicationTagInstancese",
        "mse:ListApplicationsWithTagRules",
        "mse:ListAuthPolicy",
        "mse:ListCircuitBreakerRules",
        "mse:ListConnectedSwimmingLaneGroup",
        "mse:ListCsKubernetesClusters",
        "mse:ListDefaultCircuitBreakerRules",
        "mse:ListEventOfReource",
        "mse:ListEventRecords",
        "mse:ListEventsByType",
        "mse:ListEventsPage",
        "mse:ListEventsPageByType",
        "mse:ListFlowRules",
        "mse:ListHotParamRules",
        "mse:ListIpOrHosts",
        "mse:ListIsolationRules",
        "mse:ListKubernetesNamespace",
        "mse:ListLogSpanServices",
        "mse:ListMscEventRecords",
        "mse:ListNamespaces",
        "mse:ListProtectedAppResourceWithMetrics",
        "mse:ListResourceWhiteListConfigs",
        "mse:ListResources",
        "mse:ListSentinelBlockFallbackDefinitions",
        "mse:ListSpanNames",
        "mse:ListSwimPathPercent",
        "mse:ListSwimmingLaneGatewayRoute",
        "mse:ListWebFlowRules",
        "mse:ModifyAdaptiveOverloadProtectionConfig",
        "mse:ModifyGovernanceKubernetesCluster",
        "mse:ModifyLosslessRule",
        "mse:ModifyNamespace",
        "mse:OpenXTraceService",
        "mse:QueryAhasUserStatus",
        "mse:QueryAllSwimmingLane",
        "mse:QueryAllSwimmingLaneGroup",
        "mse:QueryAppDataSourceList",
        "mse:QueryAppListMetrics",
        "mse:QueryAppMethodMetrics",
        "mse:QueryAppMethodMetricsWithSentinel",
        "mse:QueryAppRPCMacMetrics",
        "mse:QueryAppResourceMetrics",
        "mse:QueryAppResourceMetricsByInstance",
        "mse:QueryAppSummaryMetricsOverview",
        "mse:QueryAppSummaryMetricsOverviewWithSentinel",
        "mse:QueryAppSystemMetricsOfGroup",
        "mse:QueryAppSystemMetricsOfGroupByInstance",
        "mse:QueryAppTopNMacs",
        "mse:QueryDatabaseRoute",
        "mse:QueryEmptyPushSetting",
        "mse:QueryEventOverview",
        "mse:QueryGovernanceKubernetesCluster",
        "mse:QueryMetricsAveragedByInstance",
        "mse:QueryNamespace",
        "mse:QueryNginxIngressGateway",
        "mse:QueryResourceTopN",
        "mse:QueryServiceDetailWithMetrics",
        "mse:QuerySwimmingLaneById",
        "mse:RemoveApplication",
        "mse:RemoveApplications",
        "mse:RemoveAuthPolicy",
        "mse:RemoveOutlierPolicy",
        "mse:RemoveRoutePolicy",
        "mse:ReportAgentInfoForm",
        "mse:ReportAgentStartupStatus",
        "mse:ReportAppProfile",
        "mse:ReportEventBatchForm",
        "mse:ReportMetadataForm",
        "mse:ReportOneAgentInfo",
        "mse:ReportOnePilotInfo",
        "mse:ReportSpanStatInfoForm",
        "mse:RevertApplicationRoutePolicy",
        "mse:SearchTraces",
        "mse:TagResources",
        "mse:UnbindSentinelBlockFallbackDefinition",
        "mse:UpdateAppLogConfig",
        "mse:UpdateAuthPolicy",
        "mse:UpdateCircuitBreakerRule",
        "mse:UpdateCircuitBreakerRulesStatus",
        "mse:UpdateDatabaseRoute",
        "mse:UpdateDefaultCircuitBreakerRule",
        "mse:UpdateFlowRule",
        "mse:UpdateFlowRulesStatus",
        "mse:UpdateGovernanceServiceSubscribe",
        "mse:UpdateHotParamRule",
        "mse:UpdateHotParamRulesStatus",
        "mse:UpdateInstanceRegisterStatus",
        "mse:UpdateIsolationRule",
        "mse:UpdateIsolationRulesStatus",
        "mse:UpdateLocalityRule",
        "mse:UpdateLogConfig",
        "mse:UpdateMessageQueueRoute",
        "mse:UpdateOpenSergoStatusByClusterId",
        "mse:UpdateResourceWhiteListConfig",
        "mse:UpdateSentinelBlockFallbackDefinition",
        "mse:UpdateWebFlowRule",
        "mse:UpdateWebFlowRulesStatus",
        "mse:UpdateWhiteScreenRule",
        "mse:listGrayTag"
      ],
      "Resource": "acs:mse:*:*:*"
    }
  ]
}