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:
-
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:usernamecomo 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
-
-
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:
-
Parte do grupo
system:mastersKubernetes -
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