Skip To Content

IAM-Richtlinien für ArcGIS Enterprise on Amazon Web Services

Amazon Identity and Access Management (IAM) steuert den Zugriff auf Amazon Web Services (AWS)-Ressourcen. Die folgenden JSON-Beispielcodeausschnitte zeigen die erforderlichen IAM-Berechtigungen für den Zugriff auf bestimmte Ressourcen, die von ArcGIS Enterprise verwendet werden.

Ausführen von ArcGIS Enterprise Cloud Builder for AWS

Wenn Sie die App ArcGIS Enterprise Cloud Builder for AWS oder ArcGIS Enterprise Cloud Builder Command Line Interface for Amazon Web Services ausführen, um eine Bereitstellung zu erstellen, erstellen Sie wie im Folgenden beschrieben eine IAM-Richtlinie, und weisen Sie sie einem IAM-Benutzer zu. Sie verwenden die Anmeldeinformationen dieses Benutzers, z. B. Zugriffsschlüssel-ID und geheimer Zugriffsschlüssel, um sich bei Cloud Builder anzumelden.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            
            "Action": [
                "rds:*",
                "events:*",
                "logs:*",
                "dynamodb:*",
                "autoscaling:*",
                "acm:*",
                "s3:*",
                "cloudformation:*",
                "elasticloadbalancing:*",
                "iam:*",
                "cloudwatch:*",
                "ssm:*",
                "ssmmessages:*",
                "lambda:*",
                "route53:*",
                "ec2:*",
		   "ec2messages:*",
                "secretsmanager:*"
            ],
	      "Effect": "Allow",
            "Resource": "*"
        }
    ]
}

CloudFormation-Vorlagen von Esri

Wenn Sie die AWS CloudFormation-Vorlagen, die von Esri bereitgestellt werden, ausführen, erstellen sie für Sie eine IAM-Rolle und eine IAM-Richtlinie. Die Richtlinie wird nachfolgend beschrieben.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "autoscaling:DescribeAutoScalingGroups",
                "autoscaling:DescribeAutoScalingInstances",
                "autoscaling:DescribeLaunchConfigurations",
                "autoscaling:DescribeLifecycleHooks",
                "autoscaling:DescribeLifecycleHookTypes",
                "autoscaling:DescribeLoadBalancers",
                "autoscaling:DescribeTags",
                "autoscaling:AttachInstances",
                "autoscaling:AttachLoadBalancers",
                "autoscaling:AttachLoadBalancerTargetGroups",
                "autoscaling:CompleteLifecycleAction",
                "autoscaling:DeleteLifecycleHook",
                "autoscaling:DetachInstances",
                "autoscaling:DetachLoadBalancers",
                "autoscaling:DetachLoadBalancerTargetGroups",
                "autoscaling:PutLifecycleHook",
                "autoscaling:UpdateAutoScalingGroup"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "cloudformation:DescribeStacks",
                "cloudformation:DescribeStackResources",
                "cloudformation:DescribeStackResource",
                "cloudformation:SignalResource"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "dynamodb:*",
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ec2:DescribeAddresses",
                "ec2:DescribeImages",
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceStatus",
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeRegions",
                "ec2:DescribeSubnets",
                "ec2:DescribeTags",
                "ec2:AuthorizeSecurityGroupEgress",
                "ec2:AuthorizeSecurityGroupIngress",
                "ec2:CreateNetworkInterface",
                "ec2:DeleteNetworkInterface",
                "ec2:ModifyNetworkInterfaceAttribute",
                "ec2:ModifyInstanceMetadataOptions",
                "ec2:RevokeSecurityGroupEgress",
                "ec2:RevokeSecurityGroupIngress",
                "ec2:StartInstances",
                "ec2:StopInstances"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ec2messages:GetEndpoint",
                "ec2messages:GetMessages",
                "ec2messages:AcknowledgeMessage",
                "ec2messages:DeleteMessage",
                "ec2messages:FailMessage",
                "ec2messages:SendReply"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "elasticloadbalancing:ConfigureHealthCheck",
                "elasticloadbalancing:CreateLoadBalancerListeners",
                "elasticloadbalancing:CreateLoadBalancerPolicy",
                "elasticloadbalancing:CreateRule",
                "elasticloadbalancing:DeleteLoadBalancerListeners",
                "elasticloadbalancing:DeleteLoadBalancerPolicy",
                "elasticloadbalancing:DescribeLoadBalancers",
                "elasticloadbalancing:DescribeListeners",
                "elasticloadbalancing:DescribeLoadBalancerAttributes",
                "elasticloadbalancing:DescribeLoadBalancerPolicies",
                "elasticloadbalancing:DescribeRules",
                "elasticloadbalancing:DescribeTags",
                "elasticloadbalancing:DescribeTargetGroupAttributes",
                "elasticloadbalancing:DescribeTargetGroups",
                "elasticloadbalancing:DeleteRule",
                "elasticloadbalancing:DeregisterTargets",
                "elasticloadbalancing:DeregisterInstancesFromLoadBalancer",
                "elasticloadbalancing:ModifyListener",
                "elasticloadbalancing:ModifyLoadBalancerAttributes",
                "elasticloadbalancing:ModifyRule",
                "elasticloadbalancing:RegisterTargets",
                "elasticloadbalancing:RegisterInstancesWithLoadBalancer",
                "elasticloadbalancing:SetLoadBalancerListenerSSLCertificate",
                "elasticloadbalancing:SetLoadBalancerPoliciesOfListener",
                "elasticloadbalancing:SetRulePriorities"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "events:DescribeRule",
                "events:PutRule",
                "events:DeleteRule",
                "events:DisableRule",
                "events:EnableRule",
                "events:PutEvents",
                "events:PutTargets",
                "events:RemoveTargets"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "iam:PassRole",
            "Resource": "arn:aws:iam::0123456789:role/XXXXXXXX",
            "Effect": "Allow"
        },
        {
            "Action": [
                "logs:DescribeLogGroups",
                "logs:DescribeLogStreams",
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:PutMetricFilter"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation",
                "s3:GetBucketPolicy",
                "s3:GetObject",
                "s3:DeleteObjectTagging",
                "s3:PutBucketTagging",
                "s3:PutObjectTagging",
                "s3:CreateBucket",
                "s3:DeleteBucket",
                "s3:DeleteObject",
                "s3:PutObject"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "secretsmanager:GetSecretValue",
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ssm:ListAssociations",
                "ssm:DescribeAssociation",
                "ssm:DescribeDocument",
                "ssm:DescribeInstanceInformation",
                "ssm:GetDeployablePatchSnapshotForInstance",
                "ssm:GetDocument",
                "ssm:GetManifest",
                "ssm:GetParameter",
                "ssm:GetParameters",
                "ssm:ListCommands",
                "ssm:ListCommandInvocations",
                "ssm:ListInstanceAssociations",
                "ssm:PutConfigurePackageResult",
                "ssm:DeleteAssociation",
                "ssm:PutComplianceItems",
                "ssm:PutInventory",
                "ssm:SendCommand",
                "ssm:StartAutomationExecution",
                "ssm:UpdateAssociationStatus",
                "ssm:UpdateInstanceAssociationStatus",
                "ssm:UpdateInstanceInformation"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ssmmessages:CreateControlChannel",
                "ssmmessages:CreateDataChannel",
                "ssmmessages:OpenControlChannel",
                "ssmmessages:OpenDataChannel"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

Speichern des Portal for ArcGIS-Inhaltsverzeichnis in einem S3-Bucket

Zum Speichern des Portal for ArcGIS-Inhaltsverzeichnisses in einem Amazon Simple Storage Service (S3)-Bucket benötigen Sie einen IAM-Benutzer oder eine IAM-Rolle mit der folgenden IAM-Richtlinie:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "<statement-id>",
            "Effect": "Allow",
            "Action": [
                "s3:Get*",
                "s3:PutObject",
                "s3:ListBucket",
                "s3:CreateBucket",
                "s3:DeleteObject"
            ],
            "Resource": [
                "arn:aws:s3:::<portal-content-bucket-name>/*",
                "arn:aws:s3:::<portal-content-bucket-name>"
            ]
        }
    ]
}

Ersetzen Sie die Werte in spitzen Klammern (<>) durch die für Ihre Bereitstellung spezifischen Werte.

2012-10-17 ist die Version des hier gezeigten Richtliniendokuments. Wenn Sie das Versionsdatum ändern, ändert sich gegebenenfalls auch das Dokumentformat.

Speichern des ArcGIS Server-Konfigurationsspeicherverzeichnis in S3 und DynamoDB

Zum Speichern des ArcGIS Server-Konfigurationsspeicherverzeichnisses mithilfe von AWS-Speicherservices benötigen Sie einen IAM-Benutzer oder eine IAM-Rolle mit der folgenden IAM-Richtlinie:

{  
   "Version":"2012-10-17",
   "Statement":[  
      {  
         "Sid":"<statement-id1>",
         "Action":[  
            "s3:*"
         ],
         "Effect":"Allow",
         "Resource":[  
            "arn:aws:s3:::arcgis-config-store-*",
            "arn:aws:s3:::arcgis-config-store-*/*"
         ]
      },
      {  
         "Sid":"<statement-id2>",
         "Action":[  
            "dynamodb:*"
         ],
         "Effect":"Allow",
         "Resource":[  
            "arn:aws:dynamodb:*:*:table/ArcGISConfigStores",
            "arn:aws:dynamodb:*:*:table/ArcGISConfigStore.*"
         ]
      }
   ]
}

Ersetzen Sie die Werte in spitzen Klammern (<>) durch die für Ihre Bereitstellung spezifischen Werte.

2012-10-17 ist die Version des hier gezeigten Richtliniendokuments. Wenn Sie das Versionsdatum ändern, ändert sich gegebenenfalls auch das Dokumentformat.

Speichern von Caches in einem S3-Bucket

Wenn Sie einen S3-Bucket als Cloud-Speicher zum Speichern und Abrufen von Caches für Karten- und Bilddaten registrieren möchten, muss der IAM-Benutzer oder die IAM-Rolle zumindest die folgende IAM-Richtlinie aufweisen:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "<statement-id>",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:GetBucketAcl",
                "s3:GetObjectVersion",
																"s3:DeleteObject"
            ],
            "Resource": [
                "arn:aws:s3:::<cache-bucket-name>/*",
                "arn:aws:s3:::<cache-bucket-name>"
            ]
        }
    ]
}

Ersetzen Sie die Werte in spitzen Klammern (<>) durch die für Ihre Bereitstellung spezifischen Werte.

2012-10-17 ist die Version des hier gezeigten Richtliniendokuments. Wenn Sie das Versionsdatum ändern, ändert sich gegebenenfalls auch das Dokumentformat.

Verwenden eines S3-Buckets als Big-Data-Dateifreigabe

Wenn Sie einen S3-Bucket als Big-Data-Dateifreigabe registrieren möchten, muss der IAM-Benutzer bzw. die IAM-Rolle zumindest die folgende Richtlinie aufweisen:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "<statement-id>",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:CreateBucket",
                "s3:DeleteBucket",
                "s3:AbortMultipartUpload"
            ],
            "Resource": [
                "arn:aws:s3:::<bdfs-bucket-name>/*",
                "arn:aws:s3:::<bdfs-bucket-name>"
            ]
        }
    ]
}

Ersetzen Sie die Werte in spitzen Klammern (<>) durch die für Ihre Bereitstellung spezifischen Werte.

2012-10-17 ist die Version des hier gezeigten Richtliniendokuments. Wenn Sie das Versionsdatum ändern, ändert sich gegebenenfalls auch das Dokumentformat.

Verwenden eines S3-Buckets als Raster-Speicher

Wenn Sie einen S3-Bucket als Raster-Speicher registrieren möchten, muss der IAM-Benutzer bzw. die IAM-Rolle zumindest die folgende Richtlinie aufweisen:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "<statement-id>",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:GetBucketAcl",
                "s3:GetObjectVersion"
            ],
            "Resource": [
                "arn:aws:s3:::<raster-store-bucket-name>/*",
                "arn:aws:s3:::<raster-store-bucket-name>"
            ]
        }
    ]
}

Ersetzen Sie die Werte in spitzen Klammern (<>) durch die für Ihre Bereitstellung spezifischen Werte.

2012-10-17 ist die Version des hier gezeigten Richtliniendokuments. Wenn Sie das Versionsdatum ändern, ändert sich gegebenenfalls auch das Dokumentformat.

Verwenden eines S3-Buckets für Sicherungen, die mit dem Dienstprogramm "webgisdr" erstellt wurden

Wenn Sie das mit Portal for ArcGIS installierte Dienstprogramm "webgisdr" zum Erstellen von Sicherungen in einem S3-Bucket auf AWS verwenden, benötigt Ihr IAM-Benutzer bzw. Ihre IAM-Rolle Richtlinien zum Erstellen der Sicherungsdateien und Richtlinien zum Wiederherstellen der Bereitstellung für diese Sicherungsdateien.

Im Folgenden sind die Richtlinieneinstellungen aufgeführt, die mindestens erforderlich sind, wenn das Dienstprogramm "webgisdr" zum Erstellen einer Sicherung in einem S3-Bucket verwendet werden soll:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "<statement-id>",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:DeleteObject",
                "s3:GetBucketAcl",
                "s3:PutObjectAcl"
            ],
            "Resource": [
                "arn:aws:s3:::<webgisdr-bucket-name>",
                "arn:aws:s3:::<portal-content-backup-bucket-name>",
                "arn:aws:s3:::<webgisdr-bucket-name>/*",
                "arn:aws:s3:::<portal-content-backup-bucket-name>/*"
            ]
        }
    ]
}

Im Folgenden sind die Richtlinieneinstellungen aufgeführt, die mindestens erforderlich sind, wenn das Dienstprogramm "webgisdr" zum Wiederherstellen einer Bereitstellung von den in einem S3-Bucket gespeicherten Sicherungsdateien verwendet werden soll:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "<statement-id>",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:ListBucket",
                "s3:GetBucketAcl",
                "s3:PutObject",
                "s3:DeleteObject"
            ],
            "Resource": [
                "arn:aws:s3:::<webgisdr-bucket-name>",
                "arn:aws:s3:::<portal-content-backup-bucket-name>",
                "arn:aws:s3:::<webgisdr-bucket-name>/*",
                "arn:aws:s3:::<portal-content-backup-bucket-name>/*"
            ]
        }
    ]
}

Ersetzen Sie die Werte in spitzen Klammern (<>) durch die für Ihre Bereitstellung spezifischen Werte.

2012-10-17 ist die Version des hier gezeigten Richtliniendokuments. Wenn Sie das Versionsdatum ändern, ändert sich gegebenenfalls auch das Dokumentformat.