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á.
Criação de políticas de acesso a dados do IAM no Amazon Neptune
Os exemplos a seguir mostram como criar políticas personalizadas do IAM que usam controle de acesso refinado do plano de dados APIs e das ações, introduzidas na versão 1.2.0.0 do Neptune Engine.
Exemplo de política que viabiliza acesso irrestrito aos dados em um cluster de banco de dados do Neptune
O exemplo de política a seguir permite que um usuário do IAM se conecte a um cluster de banco de dados do Neptune usando a autenticação de banco de dados do IAM e usa o caractere “*
“ para corresponder a todas as ações disponíveis.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "neptune-db:*",
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
}
]
}
O exemplo anterior inclui um ARN de recurso em um formato específico da autenticação do IAM no Neptune. Para criar o ARN, consulte Specifying data resources. Observe que o ARN usando para um Resource
de autorização do IAM não é o mesmo ARN atribuído ao cluster na criação.
Exemplo de política que viabiliza acesso somente leitura a um cluster de banco de dados do Neptune
A política a seguir concede permissão para acesso total somente leitura aos dados em um cluster de banco de dados do Neptune:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action": [
"neptune-db:Read*",
"neptune-db:Get*",
"neptune-db:List*"
],
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
}
]
}
Exemplo de política que nega acesso todo o acesso a um cluster de banco de dados do Neptune
A ação padrão do IAM é negar o acesso a um cluster de banco de dados a menos que um Effect Allow
seja concedido. No entanto, a política a seguir nega todo o acesso a um cluster de banco de dados para uma determinada AWS conta e região, que então tem precedência sobre qualquer Allow
efeito.
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "neptune-db:*",
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
}
]
}
Exemplo de política que concede acesso de leitura por meio de consultas
A seguinte política apenas concede permissão para leitura de um cluster de banco de dados do Neptune usando uma consulta:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "neptune-db:ReadDataViaQuery",
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
}
]
}
Exemplo de política que só permite consultas do Gremlin
A seguinte política usa a chave de condição neptune-db:QueryLanguage
para conceder permissão para consultar o Neptune somente usando a linguagem de consulta Gremlin:
- JSON
-
-
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"neptune-db:ReadDataViaQuery",
"neptune-db:WriteDataViaQuery",
"neptune-db:DeleteDataViaQuery"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"neptune-db:QueryLanguage": "Gremlin"
}
}
}
]
}
Exemplo de política que permite todo o acesso, exceto ao gerenciamento de modelos do Neptune ML
A seguinte política concede acesso total às operações de grafo do Neptune, exceto os atributos de gerenciamento de modelos do Neptune ML:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action": [
"neptune-db:CancelLoaderJob",
"neptune-db:CancelQuery",
"neptune-db:DeleteDataViaQuery",
"neptune-db:DeleteStatistics",
"neptune-db:GetEngineStatus",
"neptune-db:GetLoaderJobStatus",
"neptune-db:GetQueryStatus",
"neptune-db:GetStatisticsStatus",
"neptune-db:GetStreamRecords",
"neptune-db:ListLoaderJobs",
"neptune-db:ManageStatistics",
"neptune-db:ReadDataViaQuery",
"neptune-db:ResetDatabase",
"neptune-db:StartLoaderJob",
"neptune-db:WriteDataViaQuery"
],
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
}
]
}
Exemplo de política que permite acesso ao gerenciamento de modelos do Neptune ML
Essa política concede acesso aos atributos de gerenciamento de modelos do Neptune ML:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action": [
"neptune-db:CancelMLDataProcessingJob",
"neptune-db:CancelMLModelTrainingJob",
"neptune-db:CancelMLModelTransformJob",
"neptune-db:CreateMLEndpoint",
"neptune-db:DeleteMLEndpoint",
"neptune-db:GetMLDataProcessingJobStatus",
"neptune-db:GetMLEndpointStatus",
"neptune-db:GetMLModelTrainingJobStatus",
"neptune-db:GetMLModelTransformJobStatus",
"neptune-db:ListMLDataProcessingJobs",
"neptune-db:ListMLEndpoints",
"neptune-db:ListMLModelTrainingJobs",
"neptune-db:ListMLModelTransformJobs",
"neptune-db:StartMLDataProcessingJob",
"neptune-db:StartMLModelTrainingJob",
"neptune-db:StartMLModelTransformJob"
],
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
}
]
}
Exemplo de política que concede acesso total por consulta
A seguinte política concede acesso total às operações de consulta de grafo do Neptune, mas não a atributos, como redefinição rápida, fluxos, carregador em massa, gerenciamento de modelos do Neptune ML, etc.:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action": [
"neptune-db:ReadDataViaQuery",
"neptune-db:WriteDataViaQuery",
"neptune-db:DeleteDataViaQuery",
"neptune-db:GetEngineStatus",
"neptune-db:GetQueryStatus",
"neptune-db:CancelQuery"
],
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
}
]
}
Exemplo de política que concede acesso total somente para consultas do Gremlin
A seguinte política concede acesso total às operações de consulta de grafo do Neptune usando a linguagem de consulta Gremlin, mas não a consultas em outras linguagens e não a atributos, como redefinição rápida, fluxos, carregador em massa, gerenciamento de modelos do Neptune ML, etc.:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement":[
{
"Effect": "Allow",
"Action": [
"neptune-db:ReadDataViaQuery",
"neptune-db:WriteDataViaQuery",
"neptune-db:DeleteDataViaQuery",
"neptune-db:GetEngineStatus",
"neptune-db:GetQueryStatus",
"neptune-db:CancelQuery"
],
"Resource": [
"arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
],
"Condition": {
"StringEquals": {
"neptune-db:QueryLanguage":"Gremlin"
}
}
}
]
}
Exemplo de política que concede acesso total, exceto para redefinição rápida
A seguinte política concede acesso total a um cluster de banco de dados do Neptune, exceto para uso de redefinição rápida:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "neptune-db:*",
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
},
{
"Effect": "Deny",
"Action": "neptune-db:ResetDatabase",
"Resource": "arn:aws:neptune-db:us-east-1
:123456789012
:cluster-ABCD1234EFGH5678IJKL90MNOP
/*"
}
]
}