Adicione usuários e configure contas de serviço - SageMaker IA da 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á.

Adicione usuários e configure contas de serviço

Controle de acesso refinado - nossa recomendação

Os usuários são diferenciados com base no nome de usuário do Kubernetes. O nome de usuário do Kubernetes do usuário é definido em sua entrada de acesso. Para garantir que dois usuários humanos tenham nomes de usuário distintos, há duas opções:

  1. Recomendado - Vários usuários humanos podem usar a mesma função, desde que cada um tenha seu próprio nome de sessão distinto que persistirá entre as sessões. Por padrão, os nomes de usuário do Kubernetes para funções do IAM estão no formato. arn:aws:sts::{ACCOUNT_ID}:assumed-role/{ROLE_NAME}/{SESSION_NAME} Com esse padrão, os usuários já serão diferenciados pelo nome da sessão. Um administrador tem algumas maneiras de impor nomes de sessão exclusivos por usuário.

    • Login SSO - Os usuários que usam o login SSO terão, por padrão, um nome de sessão vinculado ao nome de usuário AWS

    • Serviço central de venda de credenciais - Para clientes corporativos, eles podem ter algum serviço interno de venda automática de credenciais para o qual os usuários possam ligar para obter credenciais com sua identidade.

    • Aplicação baseada em funções — Exija que os usuários do IAM definam seu nome de sessão aws:username como função ao assumirem uma função do IAM em suaConta da AWS. A documentação sobre como fazer isso está aqui: https://aws.amazon.com/blogs/easily-control-naming-individualsegurança/ -/iam-role-sessions

  2. Se dois cientistas de dados estiverem usando entradas de acesso diferentes (função ou usuário do IAM diferente), eles sempre serão contados como usuários diferentes.

Criando entrada de acesso

Política de IAM necessária para a função de cientista de dados:

  • eks:DescribeCluster

Políticas de entrada de acesso necessárias

  • AmazonSagemakerHyperpodSpacePolicy- com escopo para o namespace DS deve criar espaços em

  • AmazonSagemakerHyperpodSpaceTemplatePolicy- com escopo definido para o namespace “jupyter-k8s-shared”

Espaços públicos e privados

Oferecemos suporte a dois tipos de padrões de compartilhamento: “Público” e “OwnerOnly”. Os campos “AccessType” e “OwnershipType” usam esses dois valores.

  • AccessType: os espaços públicos podem ser acessados por qualquer pessoa com permissões no namespace, mas só OwnerOnly podem ser acessados pelo criador do espaço e pelos usuários administradores. Os usuários administradores são definidos com os seguintes critérios:

  • OwnershipType: os espaços públicos podem ser modified/deleted de qualquer pessoa com permissões no namespace, OwnerOnly do criador ou do administrador. modified/deleted

Os usuários administradores são definidos por:

  1. Parte do grupo system:masters Kubernetes

  2. Parte do grupo Kubernetes definido na variável de ambiente CLUSTER_ADMIN_GROUP no gráfico do leme.

Os grupos de um usuário podem ser configurados usando entradas de acesso do EKS. Um espaço pode ser definido como “Público” ou “OwnerOnly” configurando a especificação no objeto:

apiVersion: workspace.jupyter.org/v1alpha1 kind: Workspace metadata: labels: app.kubernetes.io/name: jupyter-k8s name: example-workspace spec: displayName: "Example Workspace" image: "public.ecr.aws/sagemaker/sagemaker-distribution:3.4.2-cpu" desiredStatus: "Running" ownershipType: "Public"/"OwnerOnly" accessType: "Public"/"OwnerOnly" # more fields here