Todos os produtos
Search
Central de documentação

CDN:Busca de origem em buckets privados do OSS

Última atualização: Jul 27, 2026

Se a origem do seu nome de domínio acelerado for um bucket privado do Object Storage Service (OSS), recomendamos ativar o recurso Alibaba Cloud OSS Private Bucket Access. Isso fornece controle de acesso para evitar roubo de tráfego e permite que o CDNDCDN acelere recursos do seu bucket privado.

Funcionamento e benefícios

  • Funcionamento: Após ativar este recurso, quando o CDN ou DCDN envia uma solicitação de busca de origem para seu bucket privado do OSS, eles adicionam automaticamente um campo Authorization ao cabeçalho da solicitação. O valor desse campo é uma assinatura válida gerada a partir das informações de identidade autorizada, como um token temporário STS ou um AccessKey. O OSS usa essa assinatura para autenticar a solicitação.

  • Acesso seguro: Ao conceder permissões limitadas e somente leitura ao CDN ou DCDN, você garante a legitimidade das solicitações de busca de origem e evita os riscos de segurança de tornar um bucket privado público.

  • Otimização de custos: O cache do CDN atende às solicitações dos usuários finais, o que é mais econômico do que atendê-las diretamente do OSS. O tráfego de busca de origem do CDN ou DCDN para o OSS é faturado como tráfego de busca de origem do CDN com preço reduzido, e não como tráfego de saída pela Internet do OSS, que é mais caro. Isso reduz seus custos gerais. Para obter mais informações, consulte Billing of CDN-accelerated OSS resources.

Procedimento

A configuração envolve duas etapas: primeiro, conceda autorização única para sua conta e, em seguida, ative o recurso para um nome de domínio acelerado específico.

  1. Autorize o CDN ou DCDN a acessar o OSS. Antes de ativar este recurso para qualquer nome de domínio em sua conta, conceda permissão ao CDN ou DCDN para acessar o OSS. Esta é uma operação única no nível da conta. Se não houver solicitação para conceder autorização, pule para a próxima etapa.

    (Recomendado) Autorização com um clique

    1. Acesse o CDN console.

    2. No painel de navegação à esquerda, clique em Domain Names.

    3. Na página Domain Names, localize o nome de domínio que deseja gerenciar e clique em Manage na coluna Actions.

    4. No painel de navegação à esquerda da página de configuração do nome de domínio, clique em Origin Fetch.

    5. Na seção Alibaba Cloud OSS Private Bucket Access, clique em Authorize. Na caixa de diálogo de confirmação exibida, clique em Authorize.

      A linha Role Authorization indica que o service CDN não está autorizado a acessar seus buckets do OSS. O interruptor Status está desativado por padrão.

    (Alternativa) Autorização manual com RAM

    1. Acesse o RAM console.

    2. No painel de navegação à esquerda, escolha Permissions> Policies.

    3. Na página Policies, clique em Create Policy.

    4. Na aba Script Editor, insira o seguinte conteúdo de política:

    5. {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "oss:List*",
                      "oss:Get*"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              }
          ]
      }
    6. Clique em OK. Na página Create Policy, insira as seguintes informações e clique em OK.

    7. Policy Name: AliyunCDNAccessingPrivateOSSRolePolicy

    8. Remarks: Uma política de autorização para a função que permite ao CDN ou DCDN realizar busca de origem em um bucket privado do OSS. Esta política concede permissões somente leitura ao OSS.

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

    1. Na página Roles, clique em Create Role.

    2. Defina Trusted Principal Type como Cloud Account, selecione Current Cloud Account como Trusted Principal Name e clique em OK.

    3. Na etapa Create Role, insira as seguintes informações.

    4. Role Name: AliyunCDNAccessingPrivateOSSRole

    Após criar a função, localize e clique em AliyunCDNAccessingPrivateOSSRole na lista da página Roles para abrir a página de detalhes da função.

    1. Na aba Trust Policy, clique em Edit Trust Policy, insira o seguinte conteúdo e clique em OK.

    2. {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "Service": [
                "cdn.aliyuncs.com"
              ]
            }
          }
        ],
        "Version": "1"
      }
    3. Mude para a aba Permissions. Na aba Authorize, clique em Add Authorization.

    4. Resource Scope: Account Level

    5. Principal: Selecione a função AliyunCDNAccessingPrivateOSSRole que você criou.

    6. Policy: Selecione Custom Policy, escolha a política AliyunCDNAccessingPrivateOSSRolePolicy que você criou e clique em Confirm New Authorization.

    Após clicar em Confirm New Authorization, retorne à página Origin Fetch no console do CDNDCDN. Você verá que o recurso Alibaba Cloud OSS Private Bucket Access agora está autorizado.

  2. Ative o Alibaba Cloud OSS Private Bucket Access e configure o tipo de origem.

    1. Na seção Alibaba Cloud OSS Private Bucket Access, ative o interruptor.

    2. Na caixa de diálogo Alibaba Cloud OSS Private Bucket Access exibida, selecione um tipo de origem e clique em OK.

      Tipo de origem

      Descrição

      Bucket in the Same Account

      (Recomendado) Utilize esta opção quando o service CDN ou DCDN e o bucket do OSS pertencerem à mesma conta Alibaba Cloud. O sistema usa um token temporário STS para autenticação, o que simplifica a configuração, elimina o gerenciamento de chaves e melhora a segurança.

      Também é possível usar um token temporário STS para busca de origem entre contas. Para obter mais informações, consulte Use STS to access a private OSS bucket in a different account.

      Bucket Across Accounts or in the Same Account

      Mais indicado para quando o service CDN ou DCDN e o bucket do OSS pertencem a contas Alibaba Cloud diferentes. Esta opção também suporta cenários de mesma conta. É necessário fornecer o AccessKey ID e o AccessKey Secret da conta proprietária do bucket privado do OSS. Para obter mais informações, consulte Create an AccessKey.

      Nota
      • Escopo de acesso: Após ativar este recurso, o nome de domínio acelerado pode acessar todos os recursos em seu bucket privado de origem. Não é possível usar o CDN ou DCDN para restringir o acesso a recursos específicos dentro do bucket.

      • Conflitos de assinatura: Para evitar falhas na autenticação do OSS, garanta que uma solicitação de busca de origem não contenha assinaturas tanto no cabeçalho da solicitação quanto nos parâmetros da URL.

      • Conflitos de recursos: Este recurso entra em conflito com a configuração de página de índice padrão do recurso de hospedagem de site estático no OSS. Caso precise usar ambos os recursos simultaneamente, consulte the related documentation.

Recomendações de segurança

Ao ativar a busca de origem em um bucket privado, seus dados de origem ficam seguros. No entanto, os recursos armazenados em cache nos POPs do CDN são publicamente acessíveis por padrão. Para evitar roubo de tráfego, utilize recursos de segurança adicionais do CDN ou DCDN:

Desativar busca de origem em bucket privado do OSS

Se não desejar mais que um nome de domínio acelerado acesse recursos em um bucket privado, acesse o console Resource Access Management (RAM) para revogar a autorização da função correspondente. Isso revoga as permissões que permitem ao CDNDCDN acessar o bucket privado do OSS.

  1. Desative o recurso no console CDN.

    1. Acesse o CDN console.

    2. No painel de navegação à esquerda, clique em Domain Names.

    3. Na página Domain Names, localize o nome de domínio que deseja gerenciar e clique em Manage na coluna Actions.

    4. No painel de navegação à esquerda, clique em Origin Fetch.

    5. Na seção Alibaba Cloud OSS Private Bucket Access, desative o interruptor Alibaba Cloud OSS Private Bucket Access.

  2. Exclua permanentemente a autorização no console RAM.

    1. Acesse o RAM console.

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

    3. Na lista Role Name, clique na função AliyunCDNAccessingPrivateOSSRole.

      Na página de detalhes da função, vá para a aba Permissions. Visualize a política de sistema autorizada, que possui a observação "An authorization policy for the role that allows CDN/DCDN to perform origin fetch from a private OSS bucket and grants read-only permissions to OSS". O escopo do recurso é Account Level. A coluna Actions fornece um link Revoke Authorization, e há um botão Delete Role no canto superior direito da página.

    4. Remova todas as permissões da função AliyunCDNAccessingPrivateOSSRole.

      1. Clique em Revoke Authorization para a política.

      2. Na caixa de diálogo de confirmação exibida, clique em Revoke Authorization.

    5. Retorne à página e exclua a função AliyunCDNAccessingPrivateOSSRole.

      1. Localize a função AliyunCDNAccessingPrivateOSSRole e clique em Delete Role na coluna Actions.

      2. Na caixa de diálogo de confirmação Delete Role, clique em Delete Role.

    6. Retorne à página e exclua a política AliyunCDNAccessingPrivateOSSRolePolicy.

      1. Localize a política AliyunCDNAccessingPrivateOSSRolePolicy e clique em Delete Policy na coluna Actions.

      2. Na caixa de diálogo de confirmação Delete Policy, insira o nome da política e clique em Delete Policy.

FAQ

Como resolvo o erro This request is forbidden by kms. quando o CDN ou DCDN acessa recursos do OSS?

Se o seu bucket do OSS estiver criptografado com o Key Management Service (KMS), conceda à função AliyunCDNAccessingPrivateOSSRole a permissão para usar a chave KMS. Caso contrário, o CDN ou DCDN não conseguirá descriptografar e acessar os arquivos, resultando em um erro This request is forbidden by kms.. Para resolver esse problema, conceda as permissões necessárias do KMS à função.

  1. Acesse o RAM console.

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

  3. Na lista Role Name, localize e clique na função AliyunCDNAccessingPrivateOSSRole.

  4. Clique em Add Authorization. O Principal é preenchido automaticamente.

  5. Em Policies, selecione System Policies, pesquise e clique em AliyunKMSCryptoUserAccess para adicioná-lo à caixa Selected Policies.

  6. Clique em Confirm New Authorization. Uma mensagem indica que a operação foi Completed.

  7. Clique em Disable.

  8. Use o recurso refresh and prefetch para limpar o cache. Após a conclusão da tarefa de atualização, tente acessar o recurso novamente.

Documentação relacionada

Best practices for using CDN to accelerate access to OSS resources