Menu Docs
Página inicial do Docs
/ /
Kubernetes Operator do MongoDB Atlas
/

AtlasFederatedAuth Recurso personalizado

Nesta página

  • Exemplos
  • Parâmetros

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 usa 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 AtlasProject Recurso 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.,0 consulte Novo padrão: proteção de exclusão no Atlas Kubernetes 2 Operator.0.

    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 personalizado AtlasDeployment, 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.

O exemplo abaixo configura um recurso personalizado do AtlasFederatedAuth que faz o seguinte:

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.

Esta seção descreve os parâmetros disponíveis para o recurso personalizado do AtlasFederatedAuth . Para obter descrições detalhadas dos parâmetros, consulte o recurso da API de autenticação federada do Atlas.

Consulte essas descrições, o exemplo nesta página e a documentação da API para personalizar suas especificações.

metadata.name

Tipo: string

Obrigatório

Nome que identifica o recurso personalizado do AtlasFederatedAuth que o Atlas Kubernetes Operator utiliza para configurar a autenticação federada para a organização.

metadata.namespace

Tipo: string

Opcional

namespace onde você deseja implantar o recurso personalizado do AtlasFederatedAuth .

spec.enabled

Tipo: booleano

Obrigatório

Sinalizador que determina se a autenticação federada deve ser habilitada para a organização. Padrão é false.

spec.dataAccessIdentityProviders

Tipo: lista

Opcional

List of string values that identify the identity providers that Atlas Kubernetes Operator uses to configure federated authentication for the organization.

Observação

The dataAccessIdentityProviders parameter defines one or more identity providers that are used for data access. This means that they are used to access the actual MongoDB database instances, as configured in the AtlasDatabaseUser resource. This is different from the existing options in the AtlasFederatedAuth resource which is used to configure using identity providers for the Atlas UI.

spec.connectionSecretRef.name

Tipo: string

Obrigatório

Nome do segredo opaco que contém um único password campo com o ID da organização e as chaves de API que o Atlas Kubernetes Operator usa para se conectar ao Atlas. Ao criar o segredo, especifique os campos orgID, publicApiKey e privateApiKey .

As chaves de API do segredo devem ter o role Organization Owner . Você pode usar o mesmo segredo de um Recurso PersonalizadoAtlasProject somente se o segredo tiver Organization Owner permissões.

Atlas Kubernetes Operator observa segredos apenas com a etiqueta atlas.mongodb.com/type=credentials para evitar a exibição de segredos desnecessários .

O exemplo a seguir rotula um segredo:

kubectl label secret the-user-password atlas.mongodb.com/type=credentials

Observação

Por padrão, o Atlas Kubernetes Operator mantém segredos de conexão no mesmo namespace como o AtlasProject Recurso Personalizado. Para armazenar segredos em outro namespace, especifique o parâmetro spec.connectionSecretRef.namespace .

spec.connectionSecretRef.namespace

Tipo: string

Opcional

Namespace que contém o segredo com o ID da organização e as chaves de API que o Atlas Kubernetes Operator usa para se conectar ao Atlas. Se você omitir ou não especificar este parâmetro, o Atlas Kubernetes Operator manterá segredos de conexão no mesmo namespace como o AtlasProject recurso personalizado .

spec.domainAllowList

Tipo: array de strings

Opcional

Domínios aprovados que restringem os usuários que podem ingressar na organização com base em seus endereços de e-mail.

spec.domainRestrictionEnabled

Tipo: booleano

Obrigatório

Sinalizador que indica se a restrição de domínio está habilitada para a organização conectada. Padrão é false.

Se você definir esse parâmetro como true, o Atlas retornará uma lista de usuários que pertencem a organizações fora da federação. Para saber mais, consulte Conflitos de usuários.

spec.ssoDebugEnabled

Tipo: booleano

Opcional

Sinalizador que indica se o fornecedor de identidade tem a depuração habilitada para SSO. O padrão é false.

spec.postAuthRoleGrants

Tipo: array de strings

Opcional

Funções do Atlas que são concedidas a um usuário nessa organização após a autenticação. Por exemplo:

  • ORG_MEMBER

  • ORG_READ_ONLY

  • ORG_BILLING_ADMIN

  • ORG_GROUP_CREATOR

  • ORG_OWNER

  • ORG_BILLING_READ_ONLY

  • ORG_TEAM_MEMBERS_ADMIN

Para obter uma lista completa dos valores aceitos, consulte o Recurso da API de autenticação federada.

spec.roleMappings

Tipo : array de objetos

Opcional

Mapeamentos de role configurados nesta organização.

O spec.roleMappings.roleAssignments O parâmetro deve incluir pelo menos uma função da organização dentro da organização atual ou os projetos na organização.

spec.roleMappings.externalGroupName

Tipo: string

Obrigatório

Rótulo legível único para humanos que identifica o grupo de fornecedores de identidade ao qual esse mapeamento de role se aplica.

spec.roleMappings.roleAssignments

Tipo : array de objetos

Opcional

Roles do Atlas e os identificadores exclusivos dos grupos e organizações associados a cada role. Este parâmetro deve incluir pelo menos uma role da organização dentro da organização atual ou dos projetos na organização.

spec.roleMappings.roleAssignments.projectName

Tipo: string

Opcional

O projeto Atlas na mesma organização à qual associar o papel.

spec.roleMappings.roleAssignments.role

Tipo: string

Opcional

Etiqueta legível para humanos que identifica a collection de privilégios que o Atlas concede a uma chave de API, usuário ou equipe específica. Essas funções incluem privilégios de nível de organização e projeto.

O Atlas Kubernetes Operator aceita os seguintes valores:

  • ORG_MEMBER

  • ORG_READ_ONLY

  • ORG_BILLING_ADMIN

  • ORG_GROUP_CREATOR

  • ORG_OWNER

  • ORG_BILLING_READ_ONLY

  • ORG_TEAM_MEMBERS_ADMIN

  • GROUP_AUTOMATION_ADMIN

  • GROUP_BACKUP_ADMIN

  • GROUP_MONITORING_ADMIN

  • GROUP_OWNER

  • GROUP_READ_ONLY

  • GROUP_USER_ADMIN

  • GROUP_BILLING_ADMIN

  • GROUP_DATA_ACCESS_ADMIN

  • GROUP_DATA_ACCESS_READ_ONLY

  • GROUP_DATA_ACCESS_READ_WRITE

  • GROUP_CHARTS_ADMIN

  • GROUP_CLUSTER_MANAGER

  • GROUP_SEARCH_INDEX_EDITOR

Voltar

AtlasStreamInstance

Nesta página