Todos os produtos
Search
Central de documentação

DataWorks:Configure uma função associada usando o STS

Última atualização: Jul 28, 2026

Tradicionalmente, os nós do DataWorks dependiam da configuração de AccessKeys em texto simples para acessar services externos, como o OSS. Essa abordagem gera riscos de segurança e desafios de gerenciamento. Codificar um AccessKey permanente cria um risco de exposição, podendo comprometer todos os seus ativos de dados caso a chave vaze. Além disso, como gerenciar chaves para cada tarefa é complexo, frequentemente são concedidas permissões pouco granulares. Essa prática dificulta a implementação de controle de acesso refinado com base no princípio do menor privilégio. Para resolver esses problemas, utilize a autorização por função do RAM. Essa abordagem usa o Security Token Service (STS) para obter credenciais temporárias dinamicamente, eliminando o risco de vazamento de chaves e permitindo o gerenciamento de permissões sob demanda, específico por tarefa e com alta granularidade.

Visão geral da solução

O processo de configuração tem três etapas principais: Crie uma função do RAM, Crie uma política de permissões e Conceder permissões a um usuário do RAM.

image

Pré-requisitos

Você deve ter uma conta Alibaba Cloud ou ser um administrador do RAM com as permissões AliyunRAMFullAccess.

Etapa 1: Crie uma função do RAM

Essa função atua como a credencial de identidade que o DataWorks assume ao acessar outros recursos da nuvem.

  1. Crie uma função do RAM: Faça logon na página Funções do console RAM e clique em Create Role. Mantenha as seleções padrão, clique em Confirm e insira um nome descritivo para a função, como DataWorksRAMROLEforDataStudio.

  2. Modifique a política de confiança: Após criar a função, acesse sua página de detalhes. Na aba Trust Policy, edite a política para permitir que apenas os services dataworks.aliyuncs.com e engine.dataworks.aliyuncs.com assumam essa função. A política é a seguinte:

    Para mais informações, consulte Modify the trust policy of a RAM role .
    {
      "Version": "1",
      "Statement": [
        {
          "Action": "sts:AssumeRole",
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "dataworks.aliyuncs.com",
              "engine.dataworks.aliyuncs.com"
            ]
          }
        }
      ]
    }
  3. Conceda permissões à função do RAM: Na página de detalhes da função, acesse a aba Manage Permissions e clique em Add Permissions. Conceda as permissões necessárias à função DataWorksRAMROLEforDataStudio.

    Por exemplo, para acessar o OSS, conceda as permissões AliyunOSSReadOnlyAccess (somente leitura) ou AliyunOSSFullAccess (acesso total).

    Para mais informações, consulte Manage RAM role permissions .

    No painel Add Permissions, defina o resource scope como account level, pesquise e selecione a política necessária e clique em OK.

Etapa 2: Crie uma política de permissões

Esta política permite que um usuário do RAM transmita a função do RAM criada na Etapa 1 para o service DataWorks.

  1. Faça logon na página Políticas do console RAM, clique em Create Policy e mude para a aba JSON para editar o conteúdo da política.

    Substitua <role-name> pelo nome da função do RAM para o DataWorks, por exemplo, DataWorksRAMROLEforDataStudio.

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "ram:ListRoles"
          ],
          "Resource": "*"
        },
        {
          "Effect": "Allow",
          "Action": "ram:PassRole",
          "Resource": "acs:ram::<account-id>:role/<role-name>"
        }
      ]
    }

Action

Description

ram:ListRoles

Permite que o usuário visualize a lista de funções na conta. Essa permissão é obrigatória para selecionar uma função na interface.

ram:PassRole

Autoriza o usuário a transmitir a função especificada para um service da nuvem.

Substitua os espaços reservados <account-id> e <role-name> na política pelas suas informações:

  1. <account-id>: O UID da sua conta Alibaba Cloud.

  2. <role-name>: O nome da função do RAM criado na Etapa 1, que neste exemplo é DataWorksRAMROLEforDataStudio.

    O valor para Resource é o ARN da função DataWorksRAMROLEforDataStudio.
Para mais informações, consulte Create a custom policy .
  1. Clique em Determine e salve a Permission Policy como DataWorksRAMPolicyforDataStudio.

Etapa 3: Autorizar um usuário do RAM

Nesta etapa final, você concede ao usuário final a permissão para transmitir a função.

  1. Acesse a página Usuários do console RAM. Localize o usuário do RAM que deseja autorizar, por exemplo, new_ram_user@.... Na coluna Operation, clique em Add Permissions.

  2. No painel Add Authorization, pesquise e selecione a política de permissões criada na Etapa 2 (DataWorksRAMPolicyforDataStudio) e confirme a autorização.

Nota

Para autorizar vários usuários do RAM, repita esta etapa para cada usuário que precisar dessa permissão.

Próximas etapas

Após concluir a autorização, faça logon com a conta new_ram_user@... e acesse a página do Data Studio. Em seguida, utilize a associated role para executar tarefas em nós compatíveis. Para mais informações, consulte Configure an associated role for a node in scheduling.

Para obter uma lista dos nós compatíveis, consulte a interface do usuário.