Controlando o acesso a depósitos do Cloud Object Storage

Um depósito é uma abstração lógica que fornece um contêiner para dados. Depósitos no Cloud Object Storage são criados no IBM Cloud. Dentro de uma instância do Cloud Object Storage, é possível utilizar políticas para restringir o acesso dos usuários a depósitos.

Aqui está como ele funciona:

Uma instância do Cloud Object Storage com dois baldes

Nesta ilustração, duas credenciais são associadas a uma instância do Cloud Object Storage. Cada credencial faz referência a um ID de serviço IAM, no qual políticas são definidas para controlar qual depósito o ID de serviço pode acessar. Quando se usa uma credencial específica ao incluir uma conexão do Cloud Object Storage em um projeto, somente os depósitos acessíveis para o ID de serviço associado a essa credencial ficam visíveis.

Para criar conexões que restringem o acesso dos usuários a depósitos, siga estas etapas.

Primeiro, no IBM Cloud:

  1. Crie uma instância do Cloud Object Storage e vários depósitos

  2. Crie uma credencial de serviço e ID de serviço para cada combinação de depósitos que você deseja que os usuários sejam capazes de acessar

  3. Verifique se os IDs de serviço foram criados

  4. Edite as políticas de cada ID de serviço para fornecer acesso aos depósitos adequados

  5. Copie os valores de cada uma das credenciais de serviço que você criou

  6. Copie o terminal

    Em seguida, em seu projeto:

  7. Inclua conexões do Cloud Object Storage que usem as credenciais de serviço que você criou

  8. Teste o acesso dos usuários aos depósitos

Etapa 1: crie uma instância do Cloud Object Storage em vários depósitos

  1. No catálogo IBM Cloud, procure por Object Storage e, em seguida, crie uma instância do Cloud Object Storage.

  2. Selecione Depósitos na área de janela de navegação.

  3. Crie quantos depósitos forem necessários.

    Por exemplo, crie três depósitos: dept1-bucket, dept2-bucket e dept3-bucket.

    Página de baldes

Etapa 2: crie uma credencial de serviço e um ID de Serviço para cada combinação de depósitos que você quer que os usuários acessem

  1. Selecione Credenciais de serviço na área de janela de navegação.

  2. Clique em Nova credencial.

  3. No diálogo Incluir nova credencial, forneça um nome para a credencial e selecione a função de acesso apropriada.

  4. Dentro do campo Selecionar ID de serviço, clique em Criar novo ID de serviço.

  5. Insira um nome para o novo ID de serviço. Recomendamos o uso do mesmo nome ou de um nome semelhante ao da credencial para facilitar a identificação.

  6. Clique em Incluir.

  7. Repita da etapa 2 à 6 para cada credencial que deseja criar.

    Por exemplo, crie três credenciais: cos-all-access, dept1-dept2-buckets-only e dept2-dept3-buckets-only.

    Página de credenciais de serviço

Etapa 3: verifique se os IDs de serviço foram criados

  1. No cabeçalho da página do IBM Cloud , clique em Gerenciar> Acesso (IAM).

  2. Selecione IDs de serviço na área de janela de navegação.

  3. Confirme se os IDs de serviço criados nas etapas 2d e 2e estão visíveis.

    Página IDs de serviço

Etapa 4: edite as políticas de cada ID de serviço para fornecer acesso aos depósitos apropriados

  1. Abra um ID de serviço por vez.

  2. Na guia Políticas de acesso, selecione Editar no menu Ações para visualizar a política.

  3. Se for necessário, edite a política para fornecer acesso aos depósitos apropriados.

  4. Se for necessário, crie uma ou mais novas políticas.

    1. Remova a política padrão existente que fornece acesso a todos os depósitos na instância do Cloud Object Storage.

    2. Clique em Designar acesso.

    3. Para Tipo de recurso, especifique "depósito".

    4. Para ID do recurso, especifique um nome do depósito.

    5. Na seção Selecionar funções, selecione Visualizador na lista "Designar funções de acesso à plataforma" e selecione Gravador na lista "Designar funções de acesso ao serviço".

Exemplo 1

Por padrão, a política para o ID de serviço cos-all-access fornece acesso de Gravador à instância do Cloud Object Storage.

Guia de políticas de acesso para o ID do serviço cos-all-access

Como você quer que esse ID de serviço e a credencial correspondente forneçam aos usuários acesso a todos os depósitos, não é necessário fazer edições.

Editar página de política para o ID do serviço cos-all-access

Exemplo 2

Por padrão, a política para o ID de serviço "dept1-dept2-buckets-only" fornece acesso de Gravador à instância do Cloud Object Storage. Como você quer que esse ID de serviço e a credencial correspondente forneçam aos usuários acesso somente aos depósitos dept1-bucket e dept2-bucket, remova a política padrão e crie duas políticas de acesso, uma para dept1-bucket e uma para dept2-bucket.

Guia de políticas de acesso para o ID de serviço dept1-dept2-buckets-only

Página de Política de Edição para o ID de serviço dept1-bucket-only

Página de Política de Edição para o ID de serviço dept2-bucket-only

Etapa 5: copie valores de cada uma das credenciais de serviço que você criou

  1. Retorne ao seu Painel IBM Cloud e selecione Cloud Object Storage na lista Armazenamento.

  2. Selecione Credenciais de serviço na área de janela de navegação.

  3. Clique na ação Visualizar credenciais para um dos IDs de serviço que você criou na etapa 2.

  4. Copie o valor de "apikey" e o valor de "resource_instance_id" para um local temporário, como uma nota na área de trabalho.

    credencial de todos os acessos

    credencial de todos os acessos

  5. Repita as etapas 3 e 4 para cada credencial.

Etapa 6: Copiar o terminal

  1. Selecione Terminal no painel de navegação.

  2. Copie a URL do terminal ao qual deseja se conectar. Salve o valor em um local temporário, como uma nota da área de trabalho.

Etapa 7: Incluir conexões do Cloud Object Storage que usam as credenciais de serviço que você criou

  1. Retorne para seu projeto na guia Ativos e clique em Novo ativo> Conectar a uma origem de dados. Ou em um catálogo, clique em Incluir no projeto> Conexão.

  2. Na página Nova conexão, clique em Cloud Object Storage.

  3. Nomeie a nova conexão e insira a URL de login (a partir da página Terminais) assim como os valores de "apikey" e "resource_instance_id" que você copiou na etapa 5 de uma das credenciais de serviço.

  4. Repita da etapa 3 à 5 para cada credencial de serviço.

    As conexões ficarão visíveis na seção Ativos de dados do projeto.

Teste o acesso dos usuários aos depósitos

Daqui para frente, ao incluir um ativo de dados de uma conexão do Cloud Object Storage a um projeto, você verá apenas os depósitos que as políticas permitem você acessar. Para testar isso:

  1. Em um projeto, clique em Importar ativos> Dados conectados. Ou em um catálogo, clique em Incluir no catálogo> Ativo conectado.

  2. Na seção Origem de conexão, clique em Selecionar origem.

    Na página Selecionar origem da conexão, é possível ver as conexões do Cloud Object Storage que você criou.

  3. Selecione uma das conexões do Cloud Object Storage para ver se apenas os depósitos acessíveis para o ID de serviço associado à credencial daquele depósito estão visíveis.