O Microservices Engine (MSE) permite conceder permissões operacionais a usuários RAM, evitando os riscos de segurança associados à exposição das AccessKeys da sua conta Alibaba Cloud. Crie um usuário RAM e atribua as permissões necessárias para que ele possa utilizar o MSE.
Casos de uso
Sua empresa utiliza o Microservices Engine (MSE) e precisa gerenciar as permissões dos colaboradores conforme suas funções:
Por motivos de segurança, você não deseja expor as AccessKeys da sua conta Alibaba Cloud diretamente aos colaboradores. Em vez disso, prefere conceder permissões específicas às contas individuais deles.
Os usuários acessam apenas os recursos para os quais possuem autorização. Como todos os custos são faturados na conta principal da empresa, as contas individuais não precisam de faturamento separado.
É possível revogar as permissões de uma conta de usuário ou excluí-la a qualquer momento.
Como product gerenciado, o MSE envolve duas funções principais: desenvolvedores e equipe de operações. A equipe de operações gerencia clusters, namespaces e permissões, enquanto os desenvolvedores cuidam das configurações e services.
Uso
A figura a seguir ilustra o link de gerenciamento do mecanismo e suas permissões de acesso. Após uma conta Alibaba Cloud conceder permissões a um usuário RAM, esse usuário obtém as permissões correspondentes no console e por meio da OpenAPI.

Para configurar a autenticação de acesso do link de conexão direta ao mecanismo, que permite a um cliente Nacos acessar o mecanismo Nacos do MSE como um usuário RAM, consulte Authorize SDK access.
Etapa 1: Criar um usuário RAM
Faça login no console RAM com sua conta Alibaba Cloud e crie um usuário RAM.
Faça login no console RAM com sua conta Alibaba Cloud (conta primária) ou com um usuário RAM que tenha permissões administrativas (
AliyunRAMFullAccess).No painel de navegação à esquerda, escolha .
Na página Users, clique em Create User.
-
Na página Create User, na seção User Account Information, defina as informações básicas do usuário.
Logon Name (Obrigatório): O nome pode conter letras, dígitos, pontos (.), hifens (-) e sublinhados (_), com até 64 caracteres.
Display Name (Opcional): O nome de exibição pode ter até 128 caracteres.
Tag (Opcional): Clique em
e insira uma chave e um valor de tag. As tags facilitam o gerenciamento de usuários.
NotaClique em Add User para criar vários usuários RAM simultaneamente.
-
Na seção Access Method, selecione Console Password Logon ou Programmatic Access.
-
Console Password Logon: Permite configurar definições básicas de segurança para login no console, como gerar automaticamente ou personalizar uma senha, exigir redefinição de senha no próximo login e habilitar autenticação multifator (MFA).
NotaSe você definir uma senha personalizada, ela deverá atender às regras de complexidade configuradas em . Para mais informações sobre como definir regras de complexidade de senha, consulte Set a password policy for RAM users.
Programmatic Access: Um par de AccessKey é gerado automaticamente para que o usuário RAM acesse a Alibaba Cloud por meio de uma API ou outras ferramentas de desenvolvimento.
NotaRecomendamos selecionar apenas o Acesso ao Console para usuários RAM. Isso impede que ex-colaboradores acessem recursos da Alibaba Cloud usando uma AccessKey.
-
Clique em OK.
Etapa 2: Adicionar permissões ao usuário RAM
É necessário conceder as permissões adequadas a um usuário RAM antes que ele possa utilizar os services da Alibaba Cloud.
Faça login no console RAM como administrador RAM.
No painel de navegação à esquerda, escolha Identities > Users.
-
Na página Users, localize o usuário RAM desejado e clique em Add Permissions na coluna Actions.
Também é possível selecionar vários usuários RAM e clicar em Add Permissions abaixo da lista de usuários para conceder permissões em lote.
-
No painel Grant Permission, selecione Policies. Na caixa de texto, insira o nome da política que deseja adicionar, clique na política nos resultados da busca e, em seguida, clique em OK.
-
Políticas do sistema (autorização de granularidade grossa)
O MSE oferece duas políticas de sistema para autorização de granularidade grossa.
Nome da política
Descrição
AliyunMSEFullAccess
Concede ao usuário RAM permissões totais de gerenciamento no console.
AliyunMSEReadOnlyAccess
Concede ao usuário RAM acesso somente leitura a todos os recursos da conta Alibaba Cloud.
NotaConceda AliyunMSEFullAccess à equipe de operações que precisa criar e excluir recursos, e AliyunMSEReadOnlyAccess aos desenvolvedores que precisam apenas visualizar recursos. Para um controle mais granular das permissões dos desenvolvedores, utilize políticas personalizadas.
-
Políticas personalizadas (autorização de granularidade fina)
NotaPara uma autorização mais refinada, crie políticas personalizadas.
Para informações sobre a granularidade de autorização e configurações de registros Nacos, consulte Fine-grained authorization for registries. Para detalhes sobre a granularidade de autorização e configurações de centros de configuração Nacos, consulte Fine-grained authorization for configuration centers.
A tabela a seguir mapeia ações do MSE para permissões RAM, auxiliando na criação de políticas personalizadas.
Ação
Descrição
Somente leitura
CreateCluster
Cria um cluster.
Não
DeleteCluster
Exclui um cluster.
Não
QueryClusterDetail
Recupera os detalhes de um cluster.
Sim
RestartCluster
Reinicia um cluster.
Não
RetryCluster
Tenta novamente uma operação de cluster.
Não
UpdateCluster
Atualiza um cluster.
Não
CreateNacosConfig
Cria uma configuração Nacos.
Não
DeleteNacosConfig
Exclui uma configuração Nacos.
Não
DeleteNacosConfigs
Exclui configurações Nacos em lote.
Não
GetNacosConfig
Recupera uma configuração Nacos.
Sim
GetNacosHistoryConfig
Recupera o histórico de uma configuração Nacos.
Sim
UpdateNacosConfig
Atualiza uma configuração Nacos.
Não
UpdateNacosInstance
Atualiza uma instância.
Não
DeleteNacosService
Exclui um service.
Não
CreateNacosService
Cria um service.
Não
UpdateNacosService
Atualiza um service.
Não
CreateNacosInstance
Cria uma instância.
Não
UpdateNacosCluster
Atualiza um cluster de service.
Não
As operações de API a seguir suportam apenas autorização no nível da conta e não permitem filtragem por instância.
Ação
Descrição
Somente leitura
ListClusters
Recupera uma lista de clusters.
Sim
ListServiceQuotas
Consulta limites de cota. Recomendamos conceder esta permissão.
Sim
As operações de API listadas abaixo suportam apenas autorização no nível da instância e não permitem filtragem refinada.
Ação
Descrição
Somente leitura
ListNacosConfigs
Recupera uma lista de configurações Nacos.
Sim
ListNacosHistoryConfigs
Recupera o histórico de versões das configurações Nacos.
Sim
ListAnsServices
Recupera uma lista de todos os services.
Sim
ListAnsServiceClusters
Recupera os clusters dentro de um service.
Sim
ListAnsInstances
Recupera as instâncias de um service.
Sim
Exemplo 1: Conceder a um usuário RAM permissões de leitura e gravação na instância
mse-cn-0pp1j8om80a.NotaNeste documento,
mse-cn-0pp1j8om80arefere-se a um InstanceId, não a um ClusterId.{ "Statement": [ { "Action": "mse:ListClusters", "Resource": "acs:mse:*:*:*", "Effect": "Allow" }, { "Action": "mse:*", "Resource": "acs:mse:*:*:instance/mse-cn-0pp1j8om80a", "Effect": "Allow" } ], "Version": "1" }Exemplo 2: Conceder a um usuário RAM permissões de leitura em todas as instâncias.
{ "Statement": [ { "Action": [ "mse:List*", "mse:Query*", "mse:Get*" ], "Resource": "acs:mse:*:*:*", "Effect": "Allow" } ], "Version": "1" }Exemplo 3: Conceder a um usuário RAM permissões de leitura e gravação nas configurações da instância
mse-cn-0pp1j8om80a, restritas ao namespace3fd98c48-a709-4061-bba1-e341d79d681b.Este cenário complexo exige as seguintes permissões:
Permissão para listar clusters, permitindo que o usuário encontre o cluster alvo.
Todas as permissões de leitura no cluster, possibilitando o acesso à instância e a visualização de todos os seus recursos.
Permissão para criar e modificar configurações no namespace especificado.
{ "Version": "1", "Statement": [{ "Action": [ "mse:ListClusters" ], "Resource": [ "acs:mse:*:*:*" ], "Effect": "Allow" }, { "Action": [ "mse:List*", "mse:Query*", "mse:Get*" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8" ], "Effect": "Allow" }, { "Action": [ "mse:CreateNacosConfig", "mse:UpdateNacosConfig" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8/3fd98c48-a709-4061-bba1-e341d79d681b" ], "Effect": "Allow" } ] }Exemplo 4: Conceder a um usuário RAM permissões de leitura e gravação na configuração com um DataId específico na instância
mse-cn-0pp1j8om80a.Este cenário complexo exige as seguintes permissões:
Permissão para listar clusters, permitindo que o usuário encontre o cluster alvo.
Todas as permissões de leitura no cluster, possibilitando o acesso à instância e a visualização de todos os seus recursos.
Permissão para criar e modificar configurações no namespace especificado.
Permissão para criar e modificar configurações no grupo especificado.
Formato do ARN do recurso:
acs:mse:*:*:instance/${instanceId}/${namespaceId}/${groupId}/${dataId}
{ "Version": "1", "Statement": [{ "Action": [ "mse:ListClusters" ], "Resource": [ "acs:mse:*:*:*" ], "Effect": "Allow" }, { "Action": [ "mse:List*", "mse:Query*", "mse:Get*" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8" ], "Effect": "Allow" }, { "Action": [ "mse:CreateNacosConfig", "mse:UpdateNacosConfig" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8/3fd98c48-a709-4061-bba1-e341d79d681b/DEFAULT_GROUP/prod.yaml" ], "Effect": "Allow" } ] }Exemplo 5: Conceder a um usuário RAM permissões de leitura e gravação na configuração de um service específico na instância
mse-cn-0pp1j8om80a.Este cenário complexo exige as seguintes permissões:
Permissão para listar clusters, permitindo que o usuário encontre o cluster alvo.
Todas as permissões de leitura no cluster, possibilitando o acesso à instância e a visualização de todos os seus recursos.
Permissão para criar e modificar configurações no namespace especificado.
Permissão para criar e modificar configurações no grupo especificado.
-
Formato do ARN do recurso:
acs:mse:*:*:instance/${instanceId}/${namespaceId}/${groupId}/${serviceName}{ "Version": "1", "Statement": [{ "Action": [ "mse:ListClusters" ], "Resource": [ "acs:mse:*:*:*" ], "Effect": "Allow" }, { "Action": [ "mse:List*", "mse:Query*", "mse:Get*" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8" ], "Effect": "Allow" }, { "Action": [ "mse:CreateNacosConfig", "mse:UpdateNacosConfig" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8/3fd98c48-a709-4061-bba1-e341d79d681b/DEFAULT_GROUP/test-service" ], "Effect": "Allow" } ] }
-
No painel Grant Permission, após a concessão das permissões, clique em Close.
Próximas etapas
Após criar um usuário RAM, compartilhe as credenciais de login (nome de usuário e senha) ou a AccessKey dele. O usuário poderá então usar essas credenciais para fazer login no console ou realizar chamadas de API.
-
Fazer login no console
Acesse a página de Login de Usuário RAM.
-
Na página RAM User Logon, insira o nome de usuário RAM e clique em Next. Insira a senha do usuário RAM e clique em Log On.
NotaO nome de login do usuário RAM segue o formato
<$username>@<$AccountAlias>ou<$username>@<$AccountAlias>.onaliyun.com. <$AccountAlias> é o alias da conta. Se nenhum alias estiver definido, o ID da conta Alibaba Cloud será usado por padrão. Na home do usuário, clique em um product que você tem autorização para acessar.
-
Chamar operações de API
Utilize o AccessKey ID e o AccessKey Secret do usuário RAM no seu código para realizar chamadas de API.