Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

Rola zarządzania

Utwórz rolę zarządzania, aby umożliwić Qlik Cloud konfigurowanie instancji i elastycznych adresów IP w środowisku lakehouse.

Rola zarządzania to rola IAM, którą tworzysz w celu przyznania Qlik niezbędnych uprawnień do interakcji ze środowiskiem AWS w Twoim imieniu. Ta rola jest przejmowana przez Qlik podczas wdrożenia i operacji wykonawczych w celu bezpiecznego dostępu i zarządzania zasobami AWS wymaganymi dla Twojego lakehouse Iceberg.

Rola jest powiązana z niestandardową zasadą IAM, która definiuje konkretne działania, do których wykonywania Qlik ma upoważnienie – takich jak odczyt i zapis do zasobników S3, zarządzanie instancjami EC2 i interakcja z innymi usługami, takimi jak AWS Glue lub KMS.

Rola ta zapewnia bezpieczny, najmniej uprzywilejowany dostęp, jednocześnie umożliwiając Qlik automatyzację i orkiestrację kluczowych zadań, takich jak zarządzanie metadanymi, przenoszenie danych i wykonywanie zadań na koncie AWS.

Aby działać poprawnie, rola musi zostać utworzona z wymaganą relacją zaufania i zasadami uprawnień, zgodnie z instrukcjami konfiguracji.

Wymagania wstępne

Upewnij się, że utworzono VPC i podsieć oraz Strefy dostępności do hostowania Qlik Open Lakehouse, i przygotuj następujące dane:

  • Identyfikator konta AWS.

  • ARN symetrycznego klucza KMS.

Tworzenie roli zarządzającej

Aby utworzyć rolę zarządzającą, należy wykonać następujące czynności:

  1. W konsoli AWS przejdź do IAM

  2. W sekcji Role kliknij przycisk Utwórz rolę i skonfiguruj ją:

    • Typ zaufanego podmiotu: wybierz opcję Niestandardowa zasada zaufania.

    • Oświadczenie: w okienku kodu wklej zasadę Podmiotu zaufanego utworzoną w Przewodniku konfiguracji roli w Qlik Cloud.

  3. Utwórz rolę i zanotuj wartość ARN. Powinna ona mieć następujący format:

    arn:aws:iam::<ACCOUNT_ID>:role/<ROLE_NAME>.

Tworzenie zasady

  1. W IAM kliknij Role i wybierz rolę utworzoną powyżej.

  2. Kliknij przycisk Dodaj uprawnienia

  3. Wybierz Utwórz zasadę wbudowaną.

  4. W Edytorze zasad wybierz JSON. Wklej poniższy tekst i dodatkowo:    

  • Zmień parametr <AWS_ACCOUNT_ID> na swoje konto. 

  • Zaktualizuj wartość <KMS_SYMMETRIC_KEY_ARN> za pomocą ARN swojego klucza .


			{
			"Version": "2012-10-17",
			"Statement": [
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"ec2:CancelSpotInstanceRequests",
			"ec2:CreateLaunchTemplate",
			"ec2:CreateTags",
			"ec2:CreateVolume",
			"ec2:DescribeAddresses",
			"ec2:DescribeImageAttribute",
			"ec2:DescribeImages",
			"ec2:DescribeInstanceStatus",
			"ec2:DescribeInstanceTypeOfferings",
			"ec2:DescribeInstanceTypes",
			"ec2:DescribeInstances",
			"ec2:DescribeLaunchTemplateVersions",
			"ec2:DescribeLaunchTemplates",
			"ec2:DescribeSpotInstanceRequests",
			"ec2:DescribeSpotPriceHistory",
			"ec2:DescribeTags",
			"ec2:DescribeRegions",
			"ec2:DescribeSubnets",
			"ec2:DescribeRouteTables",
			"ec2:DescribeSecurityGroups",
			"ec2:RequestSpotInstances",
			"ec2:DescribeVolumes"
			]
			},
			{
			"Effect": "Allow",
			"Resource": [
			"arn:aws:ec2:*::image/*",
			"arn:aws:ec2:*:*:instance/*",
			"arn:aws:ec2:*:*:key-pair/*",
			"arn:aws:ec2:*:*:launch-template/*",
			"arn:aws:ec2:*:*:network-interface/*",
			"arn:aws:ec2:*:*:security-group/*",
			"arn:aws:ec2:*:*:subnet/*",
			"arn:aws:ec2:*:*:volume/*"
			],
			"Action": [
			"ec2:RunInstances"
			]
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"ec2:AttachVolume",
			"ec2:DeleteVolume",
			"ec2:DetachVolume",
			"ec2:DeleteLaunchTemplate",
			"ec2:TerminateInstances",
			"ec2:StartInstances",
			"ec2:ModifyLaunchTemplate",
			"ec2:DeleteLaunchTemplateVersions",
			"ec2:CreateLaunchTemplateVersion"
			],
			"Condition": {
			"Null": {
			"aws:ResourceTag/qlik_cluster": "false"
			}
			}
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"autoscaling:DeleteAutoScalingGroup",
			"autoscaling:DeletePolicy",
			"autoscaling:DeleteTags",
			"autoscaling:PutScalingPolicy",
			"autoscaling:StartInstanceRefresh",
			"autoscaling:TerminateInstanceInAutoScalingGroup",
			"autoscaling:UpdateAutoScalingGroup"
			],
			"Condition": {
			"Null": {
			"aws:ResourceTag/qlik_cluster": "false"
			}
			}
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"autoscaling:CreateAutoScalingGroup",
			"autoscaling:CreateOrUpdateTags",
			"autoscaling:DescribeAutoScalingGroups",
			"autoscaling:DescribeInstanceRefreshes",
			"autoscaling:DescribePolicies",
			"autoscaling:DescribeScalingActivities",
			"autoscaling:DescribeTags"
			]
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"ec2:DescribeRegions",
			"ec2:DescribeSubnets",
			"ec2:DescribeRouteTables",
			"ec2:DescribeSecurityGroups",
			"ec2:DescribeKeyPairs"			
			]
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"cloudwatch:DescribeAlarmHistory",
			"cloudwatch:DescribeAlarms",
			"cloudwatch:DescribeAlarmsForMetric",
			"cloudwatch:GetMetricStatistics",
			"cloudwatch:ListMetrics",
			"cloudwatch:PutMetricData"
			]
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"cloudwatch:DeleteAlarms"
			],
			"Condition": {
			"Null": {
			"aws:ResourceTag/qlik_cluster": "false"
			}
			}
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"cloudwatch:PutMetricAlarm"
			],
			"Condition": {
			"Null": {
			"aws:RequestTag/qlik_cluster": "false"
			}
			}
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"iam:AddRoleToInstanceProfile",
			"iam:CreateServiceLinkedRole",
			"iam:GetPolicy",
			"iam:GetPolicyVersion",
			"iam:ListAccountAliases",
			"iam:ListAttachedRolePolicies",
			"iam:ListInstanceProfiles",
			"iam:ListInstanceProfilesForRole",
			"iam:ListPolicies",
			"iam:ListRoles",
			"iam:PassRole"
			]
			},
			{
			"Effect": "Allow",
			"Resource": [
			"*"
			],
			"Action": [
			"sts:DecodeAuthorizationMessage"
			]
			},
			{
			"Effect": "Allow",
			"Resource": [
			"arn:aws:ssm:*:<AWS_ACCOUNT_ID>:parameter/qlik/*"
				],
				"Action": [
				"ssm:PutParameter"
				]
				},
				{
				"Effect": "Allow",
				"Resource": [
				"<KMS_SYMMETRIC_KEY_ARN>"
					],
					"Action": [
					"kms:GenerateDataKeyPairWithoutPlaintext",
					"kms:Encrypt"
					]
					}
					]
					}
		

Uzasadnienie prośby o uprawnienia

Poniższa tabela zawiera objaśnienia poszczególnych uprawnień roli administratora:

Zasada Uprawnienia Objaśnienie
EC2 – działania związane z zarządzaniem zasobami

{

"Version": "2012-10-17",

"Statement": [

{

"Action": [

"ec2:CancelSpotInstanceRequests",

"ec2:CreateLaunchTemplate",

"ec2:CreateTags",

"ec2:CreateVolume",

"ec2:DescribeAddresses",

"ec2:DescribeImageAttribute",

"ec2:DescribeImages",

"ec2:DescribeInstanceStatus",

"ec2:DescribeInstanceTypeOfferings",

"ec2:DescribeInstanceTypes",

"ec2:DescribeInstances",

"ec2:DescribeLaunchTemplateVersions",

"ec2:DescribeLaunchTemplates",

"ec2:DescribeSpotInstanceRequests",

"ec2:DescribeSpotPriceHistory",

"ec2:DescribeTags",

"ec2:DescribeRegions",

"ec2:DescribeSubnets",

"ec2:DescribeRouteTables",

"ec2:DescribeSecurityGroups",

"ec2:RequestSpotInstances",

"ec2:DescribeVolumes"

],

"Effect": "Allow",

"Resource": "*"

},

{

"Action": "ec2:RunInstances",

"Effect": "Allow",

"Resource": [

"arn:aws:ec2:*:*:subnet/*",

"arn:aws:ec2:*:*:network-interface/*",

"arn:aws:ec2:*::image/*"

]

}

]

}


                                    
Ta zasada przyznaje Qlik uprawnienie do zarządzania instancjami i zasobami EC2, takimi jak woluminy, grupy zabezpieczeń i podsieci. Nie uwzględnia żadnych warunków, ponieważ wszystkie metody opisują lub tworzą działania.
EC2 – działania związane z manipulowaniem zasobami

{

"Version": "2012-10-17",

"Statement": [

{

"Action": [

"ec2:AttachVolume",

"ec2:DeleteVolume",

"ec2:DetachVolume",

"ec2:DeleteLaunchTemplate",

"ec2:TerminateInstances",

"ec2:StartInstances",

"ec2:ModifyLaunchTemplate",

"ec2:DeleteLaunchTemplateVersions",

"ec2:CreateLaunchTemplateVersion"

],

"Condition": {

"Null": {

"aws:ResourceTag/qlik_cluster": "false"

}

},

"Effect": "Allow",

"Resource": "*"

},

{

"Action": [

"autoscaling:PutScalingPolicy",

"autoscaling:UpdateAutoScalingGroup",

"autoscaling:DeleteAutoScalingGroup",

"autoscaling:DeletePolicy",

"autoscaling:DeleteTags",

"autoscaling:StartInstanceRefresh"

],

"Condition": {

"Null": {

"aws:ResourceTag/qlik_cluster": "false"

}

},

"Effect": "Allow",

"Resource": "*"

}

]

}


                                    
Ta zasada udziela Qlik uprawnień do zarządzania instancjami EC2 i zasobami utworzonymi przez Qlik na podstawie znacznika qlik_cluster. Uprawnienia obejmują takie działania, jak dołączanie woluminów, zamykanie instancji i modyfikowanie szablonów uruchamiania.
EC2 – działania związane z weryfikacją

{

"Version": "2012-10-17",

"Statement": [

{

"Sid": "VisualEditor0",

"Effect": "Allow",

"Action": [

"ec2:DescribeRegions",

"ec2:DescribeSubnets",

"ec2:DescribeRouteTables",

"ec2:DescribeSecurityGroups",

"ec2:DescribeKeyPairs"

],

"Resource": "*"

}

]

}


                                    
Ta zasada udziela Qlik uprawnień do sprawdzania poprawności danych wejściowych podczas tworzenia integracji sieciowych. Działania te nie są obowiązkowe i są wymagane tylko w przypadku podania określonych danych wejściowych.
IAM – działania profilu instancji

"Version": "2012-10-17",

"Statement": [

{

"Action": [

"iam:AddRoleToInstanceProfile",

"iam:CreateServiceLinkedRole",

"iam:GetPolicy",

"iam:GetPolicyVersion",

"iam:ListAccountAliases",

"iam:ListAttachedRolePolicies",

"iam:ListInstanceProfiles",

"iam:ListInstanceProfilesForRole",

"iam:ListPolicies",

"iam:ListRoles",

"iam:PassRole"

],

"Effect": "Allow",

"Resource": "*"

}

]

}

{

Ta zasada umożliwia roli zarządzania obsługę profili instancji EC2, w tym wykonywanie takich działań, jak tworzenie ról powiązanych z usługami i przekazywanie ról do instancji EC2.
STS – działanie autoryzacyjne

"Version": "2012-10-17",

"Statement": [

{

"Action": "sts:DecodeAuthorizationMessage",

"Effect": "Allow",

"Resource": "*"

}

]

}

{

Ta polityka przyznaje Qlik uprawnienia do dekodowania komunikatów autoryzacyjnych, aby pomóc w rozwiązywaniu problemów z autoryzacją.
SSM – tajne działania zarządcze

"Version": "2012-10-17",

"Statement": [

{

"Action": [

"ssm:PutParameter"

],

"Effect": "Allow",

"Resource": "arn:aws:ssm:*:<AWS_ACCOUNT_ID>:parameter/qlik/*",

}

]

}

{

Ta zasada przyznaje roli zarządzania uprawnienia do przechowywania wpisów tajnych w AWS Systems Manager Parameter Store. Te tajne wpisy będą odczytywane przez instancje udostępnione przez Qlik.<AWS_ACCOUNT_ID> to wartość skonfigurowana przez użytkownika
KMS

"Version": "2012-10-17",

"Statement": [

{

"Sid": "VisualEditor0",

"Effect": "Allow",

"Action": [

"kms:GenerateDataKeyPairWithoutPlaintext",

"kms:Encrypt"

],

"Resource": "<KMS_SYMMETRIC_KEY_ARN>"

}

]

}

{

Ta zasada nadaje Qlik uprawnienia do generowania par kluczy szyfrujących bez dostępu do klucza prywatnego oraz do szyfrowania danych, które będą odczytywane i odszyfrowywane przez maszyny udostępnione przez Qlik. <KMS_SYMMETRIC_KEY_ARN> jest wartością skonfigurowaną przez użytkownika.

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać!