Como soluciono problemas de permissões ao criar um grupo de atributos do SageMaker?

4 minuto de leitura
0

Quero criar um grupo de atributos do Amazon SageMaker e recebo um erro de “AccessDenied”.

Breve descrição

Os erros de “AccessDenied” do SageMaker indicam que o perfil do AWS Identity and Access Management (AWS IAM) não tem permissões suficientes para realizar a operação Criar grupo de atributos.

Você recebe um erro de “AccessDenied” quando as permissões do perfil de execução têm as seguintes informações ausentes ou mal configuradas:

  • Política AmazonSageMakerFeatureStoreAccess e requisitos de nomenclatura de buckets do Amazon Simple Storage Service (Amazon S3)
  • Permissões do AWS Lake Formation
  • Política do AWS Key Management Service (AWS KMS)
  • Política de bucket do Amazon S3

Resolução

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Para ver uma mensagem de erro detalhada ao criar um grupo de atributos, execute o seguinte comando em seu terminal e verifique FailureReason:

$ aws sagemaker describe-feature-group --feature-group-name nameofthefeaturegroup

Política AmazonSageMakerFeatureStoreAccess e requisitos de nomenclatura de buckets do Amazon S3 ausentes

Se seu perfil de execução não tiver a política AmazonSageMakerFeatureStore, primeiro revise as políticas anexadas ao perfil de execução. Em seguida, anexe a política AmazonSageMakerFeatureStoreAccess:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:GetBucketAcl",
        "s3:PutObjectAcl"
      ],
      "Resource": [
        "arn:aws:s3:::*SageMaker*",
        "arn:aws:s3:::*Sagemaker*",
        "arn:aws:s3:::*sagemaker*"
      ]
    }
  ]
}

Se a criação do grupo de atributos falhar após você adicionar a política AmazonSageMakerFeatureStoreAccess, verifique se o bucket tem a palavra “sagemaker” no nome. Essa convenção de nomenclatura é necessária para uma política gerenciada pela Amazon armazenada em um bucket do S3.

Permissões do Lake Formation ausentes

A criação do Grupo de atributos falha devido às permissões insuficientes do AWS Lake Formation. Quando você cria um grupo de atributos, um banco de dados do AWS Glue é criado automaticamente. Todos os grupos de atributos que você criou usando o SageMaker são criados como tabelas dentro desse banco de dados do AWS Glue.

Confirme se o perfil de execução tem permissão para criar um banco de dados do AWS Glue. Se o perfil de execução não tiver permissão, conclua etapas a seguir:

  1. Abra o console do LakeFormation.
  2. Na barra lateral esquerda, escolha Permissões e, em seguida, escolha Permissões de dados.
  3. Escolha Conceder.
  4. Escolha o perfil de execução do IAM na lista suspensa de entidades principais e, em seguida, conceda as permissões necessárias.

Observação: O AWS Lake Formation exige que cada entidade principal (usuário ou perfil) seja autorizado a realizar ações nos recursos gerenciados do Lake Formation.

Para obter mais informações sobre como conceder permissões de banco de dados, consulte Conceder permissões em um banco de dados ou tabela compartilhada com sua conta.

Política do AWS KMS ausente

A chamada de API CreateFeatureGroup falha devido à falta de políticas do AWS KMS. Para verificar esse problema, revise as políticas do IAM do perfil de execução e confirme se ele tem as seguintes políticas anexadas:

kms:GenerateDataKeykms:Decrypt
kms: Encrypt

Se as políticas anteriores não estiverem visíveis após a execução do comando da AWS CLI, anexe as políticas e tente novamente.

Política de bucket do S3

Os erros de “AccessDenied” ocorrem devido a uma política de bucket do Amazon S3 que impede o acesso ao bucket. Consulte a política do bucket do S3 e verifique se o perfil de execução usado para criar o Grupo de atributos tem acesso ao bucket.

Informações relacionadas

Conceder permissões de links de recursos