Políticas de acesso IAM para permissões em nível de recurso
Atribua políticas de acesso granulares e baseadas em atributos para obter acesso com privilégios mínimos, controlando quem pode acessar recursos específicos do site IBM Cloud e quais ações podem ser executadas neles.
O gráfico a seguir ajuda a explicar como a política do IAM é criada. As políticas são sempre criadas especificando primeiro o sujeito. O assunto é um usuário específico, ID de serviço, grupo de acesso ou um perfil confiável. Em seguida, o destino da política é selecionado, que representa o que você está permitindo que o usuário acesse, por exemplo: todos os serviços em um grupo de recursos, todos os serviços ativados pelo IAM na conta, os serviços de gerenciamento de conta ou uma instância de serviço específica. Por fim, você conclui sua política de acesso selecionando entre as funções disponíveis. Essas funções definem exatamente as ações que um usuário pode realizar. Mais opções de configuração podem estar disponíveis, dependendo do serviço selecionado.
Será possível designar e gerenciar políticas se você possuir a função adequada. A tabela a seguir mostra as tarefas de gerenciamento de política e a função que é necessária para cada uma.
| Ação | Função necessária |
|---|---|
| Criar uma política em uma conta para todos os serviços e instâncias | Proprietário da conta ou administrador em todos os serviços de gerenciamento de conta e todos os serviços ativados para o Identity and Access |
| Criar uma política em um serviço em uma conta | Proprietário da conta, administrador em todos os serviços ativados para o Identity and Access ou administrador no serviço na conta |
| Criar uma política em uma instância de serviço | Proprietário da conta, administrador em todos os serviços ativados para o Identity and Access, administrador no serviço na conta, administrador em todos os serviços no grupo de recursos relevantes ou administrador na instância de serviço |
Tipos de política de acesso comum
É possível fornecer acesso de baixa granularidade para os usuários, os IDs de serviço ou os grupos de acesso designando os tipos de políticas de acesso a seguir:
- Todos os serviços de gerenciamento de conta
- Um serviço de gerenciamento de conta específico
- Todos os serviços de gerenciamento de contas de IAM, que são um subconjunto de serviços de gerenciamento de contas que inclui identidade de IAM, gerenciamento de acesso de IAM, gerenciamento de usuários de IAM e grupos de IAM
- Um serviço IAM específico
- Todos os recursos na conta
- Todos os recursos dentro de todos os serviços que pertencem a um grupo de recursos individuais com a capacidade de gerenciar o grupo de recursos
- Todos os recursos dentro de um único serviço em um grupo de recursos com a capacidade de gerenciar o grupo de recursos
- Todos os recursos dentro de um único serviço na conta, independentemente do grupo de recursos ao qual eles estão designados
- Recursos em uma instância individual
- Um tipo de recurso único dentro de uma instância, por exemplo, um depósito em uma instância do Object Storage
Se quiser permitir que um usuário tenha acesso total de administrador para concluir as tarefas de gerenciamento de conta, como convidar e remover usuários, visualizar o faturamento e o uso, gerenciar IDs de serviço, gerenciar grupos de acesso, gerenciar o acesso do usuário e acessar todos os recursos da conta, você deverá atribuir ao usuário o seguinte acesso:
- Uma política para todos os serviços habilitados para Identidade e Acesso dentro da conta com as funções de administrador e gerente atribuídas.
- Uma política com a função de administrador atribuída em todos os serviços de gerenciamento de contas.
Grupos de serviços
É possível atribuir acesso a um grupo de serviços para que você precise apenas de uma única política para atribuir acesso a vários serviços. Dessa forma, você diminui o número de políticas em sua conta e reduz o tempo e o esforço para gerenciar o acesso.
- Todos os serviços habilitados para identidade e acesso: Todos os serviços de catálogo que usam o IAM para gerenciamento de acesso.
- Todos os serviços de gerenciamento de contas: Serviços de plataforma, como faturamento e uso, licença e direitos, empresas e muito mais. Para obter mais informações, consulte Designando acesso aos serviços de gerenciamento de conta.
- Todos os serviços de gerenciamento de contas de IAM: Um subconjunto de serviços de gerenciamento de contas que inclui os serviços de plataforma de IAM Identidade de IAM, Gerenciamento de Acesso de IAM, Usuários de IAM, Grupos de IAM e serviços futuros de IAM.
Designando políticas de acesso da IBM Cloud
Para ajudar a entender melhor como o acesso é designado usando políticas de acesso na IBM Cloud, em relação a outros provedores em nuvem com os quais é possível que você tenha familiaridade, confira os detalhes e o exemplo de uma política de acesso a seguir.
As políticas do IBM Cloud IAM consistem na identidade que (assunto) está recebendo o acesso, como o usuário ou o ID de serviço, os recursos ou os serviços específicos (destino) para os quais eles estão recebendo acesso e as funções que definem quais ações são permitidas dentro do contexto do recurso ou do serviço selecionado.
Na IBM Cloud, um usuário, um ID de serviço ou os membros de um grupo de acesso não têm acesso por padrão. O modelo de acesso IBM Cloud é simples quando se trata de entender como é permitida ou negada a realização de ações específicas. O acesso só é concedido depois que um administrador designa uma política de acesso com uma função de acesso específica. O sistema IAM não tem de avaliar políticas de permissão e de negação para determinar quais ações são permitidas; em vez disso, ele apenas avalia para quais recursos você tem políticas e qual nível de acesso é permitido por suas funções designadas.
Para reduzir o número de políticas na conta e manter apenas o acesso mínimo necessário para cada usuário, é possível identificar e remover as políticas de acesso usadas com pouca frequência. Para obter mais informações, consulte Gerenciamento de políticas inativas.
Ao especificar um recurso em uma política porque a IBM Cloud é baseada em atributo, é possível especificar um amplo conjunto de recursos ao qual um usuário tenha acesso, por exemplo, todos os recursos em um grupo de recursos. Ou ainda, é possível limitar o acesso do usuário a uma instância específica de um único serviço ou até mesmo um tipo de subrecurso, como um depósito do Object Storage. O IBM Cloud IAM fornece um alto nível de flexibilidade e granularidade para ajudá-lo a atribuir apenas o tipo de acesso que é necessário. Alguns exemplos dos diferentes níveis de acesso que é possível designar usando atributos em uma política de acesso são os apresentados a seguir:
- Todos os serviços de gerenciamento de conta
- Um serviço de gerenciamento de conta específico
- Todos os serviços habilitados para identidade e acesso na conta, o que inclui todos os serviços de catálogo que usam o IAM para gerenciamento de acesso
- Todos os recursos que pertencem a um grupo de recursos
- Todos os tipos de recurso de um único serviço em toda a conta, independentemente da designação do grupo de recursos
- Uma instância específica de um serviço na conta
- Um único tipo de sub-recurso em uma instância, por exemplo, um depósito em uma instância do Object Storage
Se uma plataforma ou uma função de serviço predefinida específica não se ajustar ao que você estiver procurando ao designar o nível de acesso, será possível criar uma função customizada para um serviço específico e, em seguida, escolher entre as ações disponíveis para criar uma função que se ajuste às necessidades de sua organização.
Exemplo de política
Esse exemplo de política fornece acesso a todos os recursos de serviço que pertencem a um grupo de recursos denominado default com um ID de abcd2e6fg1h74i44j5kl467m701n5289 com a função de plataforma Viewer designada. Essa política pode ser designada a um usuário, um ID de serviço ou um grupo de acesso. Nesse caso, ela é designada a um usuário com um iam_id de IBMid-3IAMISBEST1.
Os grupos de acesso não são identidades como um usuário ou um ID de serviço, no entanto, eles são um mecanismo de agrupamento para identidades. Um grupo de acesso pode ser definido como um assunto de uma política de acesso e o acesso designado no grupo se aplica a todos os membros nele incluídos.
{
"type": "access",
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-3IAMISBEST1"
}
]
}
],
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Viewer"
}
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "7e522a19eb77477e88e96a600c44fb22"
},
{
"name": "resourceGroupId",
"value": "abcd2e6fg1h74i44j5kl467m701n5289"
}
]
}
]
}
Além de uma política de acesso para um usuário, ID de serviço ou grupo de acesso que possa fornecer acesso a um serviço, recurso específico ou grupo de recursos na conta, a IBM Cloud também fornece a capacidade de atribuir uma política de acesso, chamada de autorização de serviço para serviço, que oferece acesso entre serviços. Para obter um exemplo desse tipo de política, consulte Criando uma autorização usando a API.