View a markdown version of this page

Tutorial: Configuração de um domínio com o banco de dados interno do usuário e a autenticação básica HTTP - OpenSearch Serviço Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Tutorial: Configuração de um domínio com o banco de dados interno do usuário e a autenticação básica HTTP

Este tutorial aborda outro caso de uso de controle de acesso refinado e popular: um usuário principal no banco de dados de usuários interno e autenticação básica HTTP para painéis. OpenSearch O usuário principal pode então entrar nos OpenSearch painéis, criar um usuário interno, mapear o usuário para uma função e usar um controle de acesso refinado para limitar as permissões do usuário.

nota

Ao usar a Autenticação Básica HTTP com uma política de acesso baseada em recursos que especifica um principal do IAM, as solicitações não assinadas autenticadas por meio da Autenticação Básica HTTP são tratadas exclusivamente pelo banco de dados interno de usuários de controle de acesso refinado. As solicitações assinadas (usando SigV4) são avaliadas em relação à política de acesso ao domínio e ao controle de acesso refinado. Se sua política de acesso especificar um principal"AWS": "arn:aws:iam::111122223333:root", como, por exemplo, somente SigV4-signed solicitações dessa conta serão permitidas pela política de acesso, enquanto as solicitações HTTP Basic Auth ignoram a política de acesso e são controladas inteiramente por funções de controle de acesso refinadas.

Você concluirá as seguintes etapas neste tutorial:

Etapa 1: Criar um domínio

Navegue até o console do Amazon OpenSearch Service em https://console.aws.amazon.com/aos/home/e crie um domínio com as seguintes configurações:

  • OpenSearch 1.0 ou posterior, ou Elasticsearch 7.9 ou posterior

  • Acesso público

  • Fine-grained controle de acesso com um usuário principal no banco de dados interno do usuário (TheMasterUserpara o restante deste tutorial)

  • Autenticação do Amazon Cognito para Dashboards desabilitada

  • A seguinte política de acesso:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "es:ESHttp*" ], "Resource": "arn:aws:es:us-east-1:111122223333:domain/{domain-name}/*" } ] }
  • HTTPS necessário para todo o tráfego para o domínio

  • Node-to-node criptografia

  • Criptografia de dados em repouso

Etapa 2: criar um usuário interno nos OpenSearch painéis

Agora que você tem um domínio, pode entrar no OpenSearch Dashboards e criar um usuário interno.

  1. Volte para o console OpenSearch de serviços e navegue até a URL dos OpenSearch painéis do domínio que você criou. O URL segue este formato: domain-endpoint/_dashboards/.

  2. Faça login com o TheMasterUser.

  3. Escolha Adicionar dados de amostras e adicione os dados de voo de amostra.

  4. No painel de navegação à esquerda, escolha Segurança, Usuários internos, Criar usuário interno.

  5. Nomeie o usuário new-user e especifique uma senha. Em seguida, escolha Criar.

Etapa 3: mapear funções em OpenSearch painéis

Agora que seu usuário está configurado, você pode mapeá-lo para uma perfil.

  1. Fique na seção Segurança dos OpenSearch Painéis e escolha Funções, Criar função.

  2. Nomeie a função new-role.

  3. Em Índice, especifique opensearch_dashboards_sample_data_fli*(kibana_sample_data_fli* nos domínios do Elasticsearch) para o padrão de índice.

  4. Para o grupo de ações, escolha leitura.

  5. Em Segurança em nível de documento, especifique a seguinte consulta:

    { "match": { "FlightDelay": true } }
  6. Para segurança em nível de campo, escolha Excluir e especifique FlightNum.

  7. Em Anonimização, especifique Dest.

  8. Escolha Criar.

  9. Escolha Usuários mapeados e Gerenciar mapeamento. Em seguida, adicione new-user a Usuários e escolha Mapa.

Etapa 4: Testar as permissões

Quando suas funções estiverem mapeadas corretamente, é possível fazer login como o usuário limitado e testá-las.

  1. Em uma nova janela privada do navegador, navegue até o URL dos OpenSearch painéis do domínio, faça login usando new-user as credenciais e escolha Explorar sozinho.

  2. Escolha Ferramentas de desenvolvimento e execute a pesquisa padrão:

    GET _search { "query": { "match_all": {} } }

    Observe o erro de permissões. new-user não tem permissões para executar pesquisas em todo o cluster.

  3. Execute outra pesquisa:

    GET dashboards_sample_data_flights/_search { "query": { "match_all": {} } }

    Observe que todos os documentos correspondentes têm um campo FlightDelay de true, um campo anônimo Dest e nenhum campo FlightNum.

  4. Na janela original do navegador, conectado como TheMasterUser, escolha Ferramentas de desenvolvimento e execute as mesmas pesquisas. Observe a diferença nas permissões, número de ocorrências, documentos correspondentes e campos incluídos.