Todos os produtos
Search
Central de documentação

DataWorks:Autorização baseada em função do RAM: Configure uma fonte de dados

Última atualização: Jun 27, 2026

Este tópico usa uma fonte de dados OSS como exemplo para explicar como configurar uma fonte de dados com o modo de autorização baseado em função do RAM e aprimorar a segurança dos dados na nuvem.

Pré-requisitos

Para usar um usuário RAM nas operações deste tópico, conceda primeiro as políticas AliyunDataWorksFullAccess e AliyunRAMFullAccess ao usuário RAM. Para mais informações, consulte Gerenciar permissões de usuários RAM.

Nota

Se você estiver usando uma conta Alibaba Cloud, ignore este pré-requisito.

Para adicionar permissões, execute as etapas a seguir.

No painel Add Permissions, defina Resource scope como Account level, pesquise e selecione as duas políticas de sistema necessárias na seção Policies e clique em Add Permissions.

Contexto

As fontes de dados são fundamentais para tarefas de sincronização e essenciais para proteger os dados da sua empresa. O DataWorks permite usar o RAM role authorization mode, mais seguro, para configurar e acessar certas fontes de dados, como OSS, AnalyticDB for MySQL 2.0, LogHub, Tablestore e Hologres. Esse modo aumenta a segurança dos seus dados na nuvem e ajuda a prevenir riscos, como uso indevido de fontes de dados e vazamento de pares de AccessKey.

Você pode configurar uma fonte de dados com o modo de autorização baseado em função do RAM ou com o modo baseado em par de AccessKey. Este tópico descreve como configurar uma fonte de dados com o modo de autorização baseado em função do RAM. Escolha o modo adequado às necessidades do seu negócio. As seções a seguir explicam o funcionamento de cada modo:

  • Access Key mode

    No modo de autorização baseado em par de AccessKey, menos seguro, basta inserir o par de AccessKey de uma conta Alibaba Cloud ou de um usuário RAM para concluir a configuração.

    Por exemplo, para configurar uma fonte de dados OSS, insira o par de AccessKey de uma conta com as permissões necessárias na página Configure Data Source.

    Selecione AccessKey pair-based authorization mode em Access mode, preencha os detalhes de conexão, como Region, Endpoint e Bucket, e clique em Connection Configuration para selecionar um grupo de recursos e executar um teste de conectividade. Após a aprovação no teste, clique em Complete Creation.

    Quando uma tarefa de sincronização é executada, o DataWorks usa esse par de AccessKey para acessar o OSS e ler ou gravar dados.

    Nota

    No Access Key mode, se o par de AccessKey de uma conta Alibaba Cloud vazar, os dados associados no OSS podem ser comprometidos.

  • RAM role authorization mode

    O RAM role authorization mode oferece um método mais seguro para acessar fontes de dados. Ele não exige um par de AccessKey, o que elimina efetivamente o risco de vazamento de chaves.

    No RAM role authorization mode, basta autorizar a conta de serviço do DataWorks a assumir uma função com permissões de acesso ao OSS. Isso permite que o DataWorks acesse a fonte de dados OSS sem precisar de um par de AccessKey.

    Além disso, para atender às necessidades de usuários corporativos, atribua funções com diferentes escopos de permissão a distintas fontes de dados e obtenha um gerenciamento de permissões mais refinado.

Visão geral do procedimento

Para permitir que um usuário RAM realize todas as operações de ponta a ponta em vez da conta Alibaba Cloud, esta seção descreve as condições sob as quais um usuário RAM pode executar cada etapa. O procedimento a seguir explica como usar o modo de autorização baseado em função do RAM.

  1. Use uma conta Alibaba Cloud ou um usuário RAM com a política AliyunRAMFullAccess para acessar o console RAM e definir a função a ser assumida e a política a ser autorizada.

    • Função a ser assumida: Crie uma função personalizada para que a conta de serviço do DataWorks possa assumi-la. Após assumir a função, a conta de serviço do DataWorks poderá acessar a fonte de dados OSS dentro do escopo de permissão dessa função.

    • Política a ser autorizada: Crie uma política que contenha Permissões relacionadas ao PassRole. Essa política serve para autorizar um usuário a criar fontes de dados ou executar tarefas de sincronização usando uma função específica.

  2. Use uma conta Alibaba Cloud ou um usuário RAM com a política AliyunRAMFullAccess para acessar o console RAM e autorizar os usuários RAM das Etapas 3 e 5 a usar a função.

    Nota

    Se um usuário RAM não autorizado criar uma fonte de dados usando o RAM role authorization mode, todas as tarefas de sincronização configuradas com essa fonte de dados falharão.

  3. O criador da fonte de dados acessa o Data Integration do DataWorks e cria uma fonte de dados usando o RAM role authorization mode. Isso permite que a conta de serviço do DataWorks assuma a função especificada para acessar a fonte de dados OSS durante a execução de uma tarefa de sincronização.

    Nota

    O criador da fonte de dados só pode executar esta etapa após receber autorização na Etapa 2.

  4. O criador da tarefa de sincronização acessa o Data Studio e cria uma tarefa de sincronização com base na fonte de dados configurada.

  5. O executor da tarefa executa a tarefa de sincronização de dados no Data Studio ou no Operation Center.

    Nota

    O executor da tarefa só pode realizar esta etapa após receber autorização na Etapa 2.

Procedimento

  1. Crie uma função a ser assumida.

    Crie funções personalizadas adequadas a diferentes fontes de dados conforme seus requisitos de segurança. Este tópico usa o cenário a seguir como exemplo para descrever como criar uma função a ser assumida.

    Nota

    Apenas uma conta Alibaba Cloud ou um usuário RAM com a política AliyunRAMFullAccess pode executar esta etapa.

    Uma empresa possui 100 buckets que armazenam todos os seus dados. No entanto, a equipe de big data precisa usar apenas os dados de um bucket específico. Se a função predefinida AliyunDataWorksAccessingOSSRole for utilizada, a equipe de big data poderá acessar os outros 99 buckets, o que representa um risco de gerenciamento.

    Portanto, o administrador da conta Alibaba Cloud pode criar uma função personalizada chamada BigDataOssRole para a equipe de big data e restringir o uso dessa função apenas aos membros relevantes da equipe, garantindo o gerenciamento de permissões entre equipes.

    1. Crie uma função personalizada.

      Neste exemplo, crie uma função personalizada com a entidade confiável definida como Alibaba Cloud Account e o nome da função definido como BigDataOssRole. Para mais informações sobre como criar uma função, consulte Criar uma função RAM para uma conta Alibaba Cloud confiável.

    2. Crie uma política personalizada.

      Neste exemplo, crie uma política que permita acesso de leitura e gravação apenas aos dados de um bucket especificado. Para mais informações sobre como criar uma política, consulte Criar uma política personalizada. O conteúdo da política é o seguinte:

      {
          "Version": "1",
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "oss:GetObject",
                      "oss:ListObjects",
                      "oss:GetObjectMetadata",
                      "oss:GetObjectMeta",
                      "oss:GetBucketAcl",
                      "oss:GetBucketInfo",
                      "oss:PutObject",
                      "oss:DeleteObject",
                      "oss:PutBucket"
                  ],
                  "Resource": [
                      "acs:oss:*:*:bucket_name_1",
                      "acs:oss:*:*:bucket_name_1/*"
                  ]
              }
          ]
      }
    3. Autorize a função com a política especificada.

      Modifique a política de confiança da função BigDataOSSRole e conceda a política criada na Etapa 2 à função BigDataOSSRole. Isso permite que os usuários posteriormente autorizados com a função BigDataOSSRole leiam dados dos dois buckets especificados.

      Importante

      Esta etapa é obrigatória. Caso contrário, a função não poderá ser usada.

      Modifique a política da função. Para mais informações, consulte Editar a política de confiança de uma função RAM. O conteúdo da política é o seguinte:

      {
          "Statement": [
              {
                  "Action": "sts:AssumeRole",
                  "Effect": "Allow",
                  "Principal": {
                      "Service": [
                          "di.dataworks.aliyuncs.com"
                      ]
                  }
              }
          ],
          "Version": "1"
      }
  2. Autorize os usuários que podem usar a função.

    Após confirmar todas as funções a serem assumidas, conceda a política que contém a permissão PassRole aos usuários relevantes. Somente assim esses usuários poderão criar fontes de dados e executar tarefas de sincronização usando a função. Também é possível configurar o mapeamento entre usuários e funções conforme seus requisitos de segurança, especificando quais usuários podem usar quais funções.

    • Modelo de política 1: Use o modelo abaixo para criar uma política. Este modelo permite que o usuário autorizado utilize todas as funções relacionadas ao Data Integration do DataWorks. Conceda esta política com cautela.

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": "ram:PassRole",
                  "Resource": "*",
                  "Effect": "Allow",
                  "Condition": {
                      "StringEquals": {
                          "acs:Service": "di.dataworks.aliyuncs.com"
                      }
                  }
              }
          ]
      }
    • Modelo de política 2: Crie uma política personalizada contendo a permissão PassRole conforme seus requisitos de segurança para configurar o mapeamento entre usuários e funções.

      Nota

      Apenas uma conta Alibaba Cloud ou um usuário RAM com a política AliyunRAMFullAccess pode executar esta etapa.

      Exemplo de cenário: Conforme descrito no cenário anterior para a função a ser assumida, depois que o administrador da conta Alibaba Cloud define a função BigDataOssRole para a equipe de big data, ele precisa especificar que apenas membros relevantes podem usar essa função. Crie uma política personalizada chamada BigDataOssRoleAllowUse e conceda-a aos usuários relevantes.

      Crie uma política chamada BigDataOssRoleAllowUse. Para mais informações, consulte Criar uma política personalizada. O script da política é o seguinte:

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": "ram:PassRole",
                  "Resource": "acs:ram::19122324****:role/BigDataOssRole",
                  "Effect": "Allow",
                  "Condition": {
                      "StringEquals": {
                          "acs:Service": [
                              "oss.aliyuncs.com",
                              "di.dataworks.aliyuncs.com"
                          ]
                      }
                  }
              }
          ]
      }
      Nota

      Substitua o UID (19122324****) na política pelo UID da conta Alibaba Cloud na qual você está conectado no momento.

      O administrador concede a política BigDataOssRoleAllowUse aos usuários RAM autorizados a usar a função BigDataOssRole. Os usuários RAM que receberam a política BigDataOssRoleAllowUse podem usar a função BigDataOssRole para criar fontes de dados (usando BigDataOssRole como identidade de acesso da fonte de dados) e executar tarefas de sincronização.

  3. Crie uma fonte de dados.

    Depois que o administrador da conta Alibaba Cloud autorizar o criador da fonte de dados, crie a fonte de dados.

    1. Use uma conta Alibaba Cloud ou um usuário RAM com a política DataWorksFullAccess para criar e configurar uma fonte de dados OSS.

      Durante a configuração, defina Access mode como RAM role authorization mode. Configure os outros parâmetros conforme descrito abaixo. Se você usar um workspace no modo padrão, configure o ambiente de Development ou Production de acordo com as necessidades do seu negócio.

      Nota

      Este tópico usa uma fonte de dados OSS como exemplo. Na prática, consulte a página de configuração da fonte de dados necessária. Para mais informações sobre como configurar uma fonte de dados OSS, consulte Configurar uma fonte de dados OSS.

      Parâmetro

      Descrição

      Data Source Name

      O nome da fonte de dados deve combinar letras, dígitos e sublinhados (_) e não pode começar com um dígito ou sublinhado (_).

      Description

      Uma breve descrição da fonte de dados. A descrição não pode exceder 80 caracteres.

      Endpoint

      O endpoint do OSS, no formato http://oss.aliyuncs.com. O endpoint de um serviço OSS varia conforme a região. Insira endpoints diferentes ao acessar regiões distintas.

      Nota

      O formato correto para o endpoint é http://oss.aliyuncs.com. No entanto, http://oss.aliyuncs.com com o nome do bucket prefixado a "oss" e conectado por um ponto, como http://xxx.oss.aliyuncs.com, pode passar no teste de conectividade, mas causará erros durante a sincronização.

      Bucket

      O bucket do OSS, que é um espaço de armazenamento usado como contêiner para objetos.

      Crie um ou mais buckets, sendo que cada bucket pode conter um ou mais arquivos.

      Pesquise arquivos nos buckets especificados aqui durante uma tarefa de sincronização de dados. Arquivos em buckets não especificados aqui não podem ser pesquisados.

      Access mode

      Selecione RAM role authorization mode. Este modo usa autorização baseada em STS para permitir que a conta de serviço na nuvem assuma a função relevante e acesse a fonte de dados, oferecendo maior segurança.

      Select Role

      Selecione uma função RAM na lista suspensa Select Role.

      Region

      Selecione uma região na lista suspensa Region.

    2. Teste a conectividade de rede.

      Na seção Connection Configuration, clique em Test Connectivity ao lado do grupo de recursos desejado.

      Durante a sincronização de dados, uma tarefa pode usar apenas um tipo de grupo de recursos. Teste a conectividade de cada tipo de grupo de recursos para garantir que o grupo de recursos do Data Integration usado pela tarefa de sincronização consiga se conectar à fonte de dados. Caso contrário, a tarefa de sincronização de dados não será executada corretamente. Para testar vários grupos de recursos simultaneamente, selecione os grupos desejados e clique em Batch test connectivity. Para mais informações, consulte Configurar conectividade de rede para uma fonte de dados.

    3. Após a aprovação no teste de conectividade, clique em Complete.

  4. Crie uma tarefa de sincronização.

    Após criar a fonte de dados, um desenvolvedor pode acessar a página DataStudio e criar uma tarefa de sincronização com base nessa fonte de dados. Para mais informações, consulte Configurar uma tarefa de sincronização.

  5. Execute a tarefa de sincronização.

    O executor da tarefa executa a tarefa de sincronização de dados no Data Studio ou no Operation Center.

    Nota

    Ao executar uma tarefa no DataStudio, certifique-se de que o executor da tarefa foi autorizado na Etapa 2 (autorizar usuários que podem usar a função) para evitar falhas na execução da tarefa.