Todos os produtos
Search
Central de documentação

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

Última atualização: Jun 27, 2026

Tradicionalmente, os nós do DataWorks dependiam da configuração de AccessKeys em texto simples para acessar serviços externos como o OSS. Essa abordagem apresenta riscos de segurança e desafios de gerenciamento. A codificação fixa de um AccessKey permanente gera risco de exposição, o que pode comprometer todos os seus ativos de dados caso a chave seja vazada. Além disso, como o gerenciamento de 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 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 possui três etapas principais: Criar uma função RAM, Criar uma política de permissões e Conceder permissões a um usuário RAM.

Para obter uma explicação detalhada, consulte Apêndice: Fluxo de invocação do STS .

Pré-requisitos

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

Etapa 1: Criar uma função RAM

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

  1. Crie uma função RAM: Faça logon na página Funções do console RAM e clique em CreateRole. 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 o serviço dataworks.aliyuncs.com assuma essa função. A política é a seguinte:

    Para mais informações, consulte Modificar a política de confiança de uma função RAM .
    {
      "Version": "1",
      "Statement": [
        {
          "Action": "sts:AssumeRole",
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "dataworks.aliyuncs.com"
            ]
          }
        }
      ]
    }
  3. Conceda permissões à função 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 Gerenciar permissões de função RAM .

    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: Criar uma política de permissões

Esta política permite que um usuário RAM transfira a função RAM criada na Etapa 1 para o serviço 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 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>"
        }
      ]
    }

Ação

Descrição

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 transferir a função especificada para um serviço de 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 RAM criado na Etapa 1, que neste exemplo é DataWorksRAMROLEforDataStudio.

    O valor para Resource é o ARN da função DataWorksRAMROLEforDataStudio.
Para mais informações, consulte Criar uma política personalizada .
  1. Clique em Determine e salve a Permission Policy como DataWorksRAMPolicyforDataStudio.

Etapa 3: Autorizar um usuário RAM

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

  1. Faça logon na página Usuários do console RAM. Localize o usuário 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 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, use a associated role para executar tarefas em nós compatíveis. Para mais informações, consulte Configurar uma função associada para um nó no agendamento.

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