Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2022-11-24 GMT+08:00

CORS

O compartilhamento de recursos de origem cruzada (CORS) é um mecanismo padrão de navegador fornecido pelo World Wide web Consortium (W3C). Ele define os métodos de interação entre aplicações web do lado do cliente em uma origem e recursos em outra. Para solicitações gerais de páginas da web, os scripts e conteúdos de sites em uma origem não podem interagir com os de outra devido às Políticas de Mesma Origem (as SOP).

OBS é compatível com as regras de CORS e permite que seus recursos sejam acessados entre origens. A configuração de CORS entra em vigor em dois minutos.

OBS suporta Hospedagem de site estático. Os sites estáticos armazenados em OBS podem responder a solicitações de sites de outra origem somente quando CORS estiver configurado para o bucket.

Por padrão, o sistema OBS é configurado para oferecer suporte ao acesso entre domínios usando o nome de domínio raiz. Isso permite o acesso de todos os domínios e os clientes provavelmente serão atacados.

Para resolver esse problema, crie um arquivo crossdomain.xml com regras específicas no bucket para cada cliente e adicione Security.loadPolicyFile("https://bucket.obs.cn-north-4.myhuaweicloud.com/crossdomain.xml") no código flash do arquivo para evitar ataques. bucket.obs.cn-north-4.myhuaweicloud.com precisa ser substituído pelo nome de domínio de acesso real do seu bucket.

Informações de plano de fundo

Cross-domain refere-se ao acesso entre diferentes domínios.

Restringir o acesso entre domínios é uma política do navegador para fins de segurança, ou seja, a política de mesma origem. Devido a esta política JavaScript da mesma origem, o JavaScript sob o domínio A não pode operar objetos sob o domínio B ou C.

O mesmo protocolo, nome de domínio (ou endereço IP) e porta são considerados como o mesmo domínio. Se os protocolos, nomes de domínio e portas (se especificado) das duas páginas da web forem os mesmos, as duas páginas da web terão a mesma origem. Para entender melhor a política de mesma origem, você pode ver a análise sobre como acessar o exemplo de endereço https://support.huaweicloud.com/dir/test.html em Tabela 1.

Tabela 1 Exemplo de análise

URL

Resultado de acesso

Causa

https://support.huaweicloud.com/dir/other.html

Bem-sucedido

Mesmo protocolo, nome de domínio e porta

https://support.huaweicloud.com/dir/inner/other.html

Bem-sucedido

Mesmo protocolo, nome de domínio e porta

http://support.huaweicloud.com/dir/test.html

Falha

Mesmo nome de domínio e porta, mas protocolos diferentes

https://support.huaweicloud.com:81/dir/test.html

Falha

Mesmo protocolo e nome de domínio, mas portas diferentes

https://help.huaweicloud.com/dir/test.html

Falha

Mesmo protocolo e porta, mas nomes de domínio diferentes

Cenários de aplicação

Os cenários de aplicação típicos do CORS são os seguintes:
  • Permite que JavaScript e HTML5 sejam usados para estabelecer aplicativos da web que podem acessar diretamente recursos em OBS. Nenhum servidor proxy é necessário para a transferência.
  • Permite que a função de arrastar do HTML5 seja usada para carregar arquivos para OBS (com o andamento do carregamento exibido) ou atualizar o conteúdo de OBS usando aplicativos da web.
  • Páginas externas da web, folhas de estilo e aplicativos HTML5 hospedados em diferentes origens podem acessar fontes da web ou imagens armazenadas em OBS, implementando o compartilhamento de recursos.

Como usar essa função

Você pode configurar CORS usando console de OBS, as API, ou os SDK.

Ferramenta

Referência

Console de OBS

Configuração de CORS

Os SDK

OBS suporta kits de desenvolvimento de software (os SDK) em vários idiomas. Para obter detalhes, consulte o guia do desenvolvedor correspondente na página Visão geral de SDK.

As API

Configuração de CORS de bucket