O recurso personalizado do AtlasFederatedAuth configura aautenticação federada do para sua organização Atlas.
Quando você cria o recurso personalizado do AtlasFederatedAuth , o Atlas Kubernetes Operator utiliza o Recurso da API de Autenticação Federada para o atualizar a configuração da organização para a federação. Na configuração da organização , você especifica as configurações de federação para sua organização Atlas , como mapeamentos de organização e função.
Importante
Os Recursos Personalizados Não Excluem Mais Objetos por Padrão
O Atlas Kubernetes Operator utiliza arquivos de configuração de recurso personalizado para gerenciar sua configuração do Atlas , mas a partir do Atlas Kubernetes Operator,2.0 os recursos personalizados que você exclui no Kubernetes não são mais (por padrão) excluídos no Atlas. Em vez disso, o Atlas Kubernetes Operator simplesmente para de gerenciar estes recursos no Atlas. Por exemplo, se você excluir um
AtlasProjectRecurso Personalizado no Kubernetes, por padrão, o Atlas Kubernetes Operator não excluirá mais automaticamente o projeto correspondente do Atlas. Essa mudança no comportamento destina-se a ajudar a evitar exclusões acidentais ou inesperadas. Para saber mais, incluindo como reverter este comportamento para o padrão utilizado antes do Atlas Kubernetes Operator.,2 0consulte Novo padrão: Proteção de exclusão no Atlas Kubernetes 2 0Operator..Da mesma forma, o Atlas Kubernetes Operator não exclui equipes do Atlas se você as remover de um projeto do Atlas no Kubernetes com o Atlas Kubernetes Operator.
Defina explicitamente os detalhes de configuração desejados para evitar o uso implícito de valores de configuração padrão do Atlas . Em alguns casos, herdar os padrões do Atlas pode resultar em um loop de reconciliação que pode impedir que seu recurso personalizado atinja um estado
READY. Por exemplo, definir explicitamente o comportamento de autoscaling desejado em seu recurso personalizadoAtlasDeployment, conforme mostrado no exemplo incluído, garante que um tamanho de instância estática em seu recurso personalizado não esteja sendo aplicado repetidamente a um sistema do Atlas que tenha o autoscaling ativado.autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
Para utilizar este recurso, você deve ter um fornecedor de identidade existente (IdP) vinculado à sua organização Atlas. Para saber mais, consulte Aproveite a autenticação federada do Kubernetes.
Exemplos
O exemplo abaixo configura um recurso personalizado do AtlasFederatedAuth que faz o seguinte:
Habilita a autenticação federada para a organização vinculada ao segredo especificado.
Adiciona
my-org-domain.comcomo um domínio aprovado.Habilita a restrição de domínio para a organização.
Desabilita a depuração para SSO.
Concede a função
Organization Memberaos usuários após a autenticação.Mapeia a função
Organization Ownerpara a organização e aplica o mapeamento de função a um grupo de IdP chamadoorg-admin.Mapeia as funções
Organization Project CreatoreProject Ownerpara um projeto na organização denominadodev-projecte aplica o mapeamento de role a um grupo de IdP denominadodev-team.
apiVersion: atlas.mongodb.com/v1 kind: AtlasFederatedAuth metadata: name: atlas-default-federated-auth namespace: mongodb-atlas-system spec: enabled: true dataAccessIdentityProviders: - 32b6e34b3d91647abb20e7b8 - 42d8v92k5a34184rnv93f0c1 connectionSecretRef: name: my-org-secret namespace: mongodb-atlas-system domainAllowList: - my-org-domain.com domainRestrictionEnabled: true ssoDebugEnabled: false postAuthRoleGrants: - ORG_MEMBER roleMappings: - externalGroupName: org-admin roleAssignments: - role: ORG_OWNER - externalGroupName: dev-team roleAssignments: - role: ORG_GROUP_CREATOR - projectName: dev-project role: GROUP_OWNER status: conditions: - type: Ready status: True - type: RolesReady status: True - type: UsersReady status: True
Observação
O exemplo anterior inclui a seção status , que descreve o processo de atualização. Para saber mais, consulte Criar e atualizar processo.
Parâmetros
AtlasFederatedAuth
AtlasFederatedAuth é o esquema para a API Atlasfederatedauth
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | atlas.mongodb.com/v1 | true |
| string |
| true |
| objeto | Consulte a documentação do Kubernetes | true |
| objeto |
| false |
| objeto |
| false |
AtlasFederatedAuth.spec
AtlasFederatedAuthSpec define o estado de destino de AtlasFederatedAuth.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| objeto | Segredo de conexão com credenciais | false |
| []string | A coleção de ids únicos que representam os provedores de identidade que podem ser usados para acesso aos dados nessa organização. Os provedores de identidade de acesso aos dados conectados no momento que não estão nesse campo serão desconectados. | false |
| []string | Domínios aprovados que restringem os usuários que podem ingressar na organização com base em seus endereços de e-mail. | false |
| booleano | Impedir que usuários da federação acessem organizações de fora da federação e criem novas organizações. Esta opção se aplica a toda a federação. Veja mais informações em https://www.mongodb.com/pt-br/docs/atlas/security/federation-advanced-options/#restrict-user-membership-to-the-federation Padrão: false | false |
| booleano | Padrão: false | false |
| []string | Funções do Atlas que são concedidas a um usuário nessa organização após a autenticação. | false |
| [] objeto | Mapear | false |
| booleano | Padrão: false | false |
AtlasFederatedAuth.spec.connectionSecretRef
Segredo de conexão com credenciais API para configurar a federação. Essas credenciais devem ter permissões de OrganizationOwner.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Nome do Recurso Kubernetes | true |
| string | Namespace do Recurso Kubernetes | false |
AtlasFederatedAuth.spec.roleMappings
RoleMapping mapeia um grupo externo de um provedor de identidade para funções dentro do Atlas.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string |
| false |
| [] objeto |
| false |
AtlasFederatedAuth.spec.roleMappings.roleAssignments
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | O projeto Atlas na mesma organização em que a função deve ser fornecida. | false |
| enum | O | false |
AtlasFederatedAuth.status
AtlasFederatedAuthStatus define o estado observado de AtlasFederatedAuth.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| [] objeto | Condições é a lista de status que mostra o estado atual do Recurso Personalizado do Atlas | true |
| inteiro |
| false |
AtlasFederatedAuth.status. conditions
A condição descreve o estado de um recurso personalizado do Atlas em um determinado ponto.
Name | Tipo | Descrição | Obrigatório |
|---|---|---|---|
| string | Status da condição; um de verdadeiro, falso, desconhecido. | true |
| string | Tipo de condição do Atlas recurso. | true |
| string | Última vez que a condição fez a transição de um status para outro. Representado no formato | false |
| string | Um | false |
| string | O | false |