View a markdown version of this page

Identitäts- und Zugriffsmanagement für Amazon Connect Health - Amazon Connect Health

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Identitäts- und Zugriffsmanagement für Amazon Connect Health

AWS Identity and Access Management (IAM) ist ein AWS-Service, der es einem Administrator ermöglicht, den Zugriff auf AWS-Ressourcen sicher zu steuern. IAM-Administratoren kontrollieren, wer authentifiziert (angemeldet) und autorisiert werden kann (über Berechtigungen verfügt), um Amazon Connect Health-Ressourcen zu nutzen. IAM ist ein AWS-Service, die Sie ohne zusätzliche Kosten verwenden können.

Zielgruppe

Wie Sie AWS Identity and Access Management (IAM) verwenden, hängt von der Arbeit ab, die Sie in Amazon Connect Health ausführen.

Servicebenutzer — Wenn Sie den Amazon Connect Health-Service für Ihre Arbeit verwenden, stellt Ihnen Ihr Administrator die Anmeldeinformationen und Berechtigungen zur Verfügung, die Sie benötigen. Da Sie mehr Amazon Connect Health-Funktionen für Ihre Arbeit verwenden, benötigen Sie möglicherweise zusätzliche Berechtigungen. Wenn Sie die Funktionsweise der Zugriffskontrolle nachvollziehen, wissen Sie bereits, welche Berechtigungen Sie von Ihrem Administrator anfordern müssen.

Service-Administrator — Wenn Sie in Ihrem Unternehmen für die Amazon Connect Health-Ressourcen verantwortlich sind, haben Sie wahrscheinlich vollen Zugriff auf Amazon Connect Health. Es ist Ihre Aufgabe, zu bestimmen, auf welche Funktionen und Ressourcen von Amazon Connect Health Ihre Servicebenutzer zugreifen sollen. Anschließend müssen Sie Anforderungen an Ihren IAM-Administrator senden, um die Berechtigungen der Servicebenutzer zu ändern. Lesen Sie die Informationen auf dieser Seite, um die Grundkonzepte von IAM nachzuvollziehen.

IAM-Administrator — Wenn Sie ein IAM-Administrator sind, möchten Sie vielleicht mehr darüber erfahren, wie Sie Richtlinien schreiben können, um den Zugriff auf Amazon Connect Health zu verwalten.

Authentifizierung mit Identitäten

Die Authentifizierung ist die Art und Weise, wie Sie sich mit Ihren Anmeldeinformationen bei AWS anmelden. Sie müssen als Root-Benutzer des AWS-Kontos, als IAM-Benutzer authentifiziert (bei AWS angemeldet) sein oder eine IAM-Rolle annehmen.

Für den programmatischen Zugriff bietet AWS ein SDK und eine CLI, die Ihre Anfragen mit Ihren Anmeldeinformationen kryptografisch signieren. Wenn Sie keine AWS-Tools verwenden, müssen Sie Anfragen selbst signieren. Amazon Connect Health unterstützt Signature Version 4, ein Protokoll zur Authentifizierung eingehender API-Anfragen. Weitere Informationen zur Authentifizierung von Anfragen finden Sie unter AWS Signature Version 4 für API-Anfragen im IAM-Benutzerhandbuch.

Unabhängig von der verwendeten Authentifizierungsmethode müssen Sie möglicherweise auch zusätzliche Sicherheitsinformationen angeben. AWS empfiehlt beispielsweise die Verwendung von Multi-Faktor-Authentifizierung (MFA), um die Sicherheit Ihres Kontos zu verbessern.

Stammbenutzer des AWS-Kontos — Wenn Sie ein AWS-Konto erstellen, beginnen Sie mit einer Anmeldeidentität, die vollständigen Zugriff auf alle AWS-Services und -Ressourcen im Konto hat. Diese Identität wird als Stammbenutzer des AWS-Kontos bezeichnet. Verwenden Sie Ihren Root-Benutzer nicht für alltägliche Aufgaben. Schützen Sie Ihre Root-Benutzer-Anmeldeinformationen. Verwenden Sie diese nur, um die Aufgaben auszuführen, die nur der Root-Benutzer ausführen kann.

IAM-Benutzer und -Gruppen — Ein IAM-Benutzer ist eine Identität innerhalb Ihres AWS-Kontos, die über spezifische Berechtigungen für eine einzelne Person oder Anwendung verfügt. Wenn möglich, empfehlen wir, temporäre Anmeldeinformationen zu verwenden, anstatt IAM-Benutzer zu erstellen, die langfristige Anmeldeinformationen wie Passwörter und Zugriffsschlüssel haben.

IAM-Rollen — Eine IAM-Rolle ist eine Identität innerhalb Ihres AWS-Kontos, die über bestimmte Berechtigungen verfügt. Sie ist einem IAM-Benutzer vergleichbar, jedoch nicht mit einer bestimmten Person verknüpft. Sie können eine AWS-Managementkonsole-Rolle vorübergehend in der IAM annehmen, indem Sie Rollen wechseln.

Föderierte Identitäten — Es hat sich bewährt, dass menschliche Benutzer, einschließlich Benutzer, die Administratorzugriff benötigen, den Verbund mit einem Identitätsanbieter verwenden müssen, um mithilfe temporärer Anmeldeinformationen auf AWS-Services zuzugreifen. Eine föderierte Identität ist ein Benutzer aus Ihrem Unternehmensbenutzerverzeichnis, einem Web-Identitätsanbieter, dem AWS Directory Service, dem Identity Center-Verzeichnis oder einem beliebigen Benutzer, der mithilfe von Anmeldeinformationen, die über eine Identitätsquelle bereitgestellt werden, auf AWS-Services zugreift.

Verwalten des Zugriffs mit Richtlinien

Sie kontrollieren den Zugriff in AWS, indem Sie Richtlinien erstellen und diese an AWS-Identitäten oder -Ressourcen anhängen. Eine Richtlinie ist ein Objekt in AWS, das, einer Identität oder Ressource zugeordnet, deren Berechtigungen definiert. AWS bewertet diese Richtlinien, wenn ein Principal (Benutzer oder Rolle) eine Anfrage stellt. Die Berechtigungen in den Richtlinien legen fest, ob eine Anforderung zugelassen oder abgelehnt wird. Die meisten Richtlinien werden in AWS als JSON-Dokumente gespeichert.

Identity-based Richtlinien — Identity-based Richtlinien sind Richtliniendokumente für JSON-Berechtigungen, die Sie an eine Identität anhängen können, z. B. an einen IAM-Benutzer, eine Benutzergruppe oder eine Rolle. Diese Richtlinien steuern, welche Aktionen die Benutzer und Rollen für welche Ressourcen und unter welchen Bedingungen ausführen können.

Resource-based Richtlinien — Resource-based Richtlinien sind JSON-Richtliniendokumente, die Sie an eine Ressource anhängen. Beispiele für ressourcenbasierte Richtlinien sind IAM-Rollen-Vertrauensrichtlinien und Amazon-S3-Bucket-Richtlinien.

Andere Richtlinientypen — AWS unterstützt zusätzliche, weniger verbreitete Richtlinientypen, darunter Berechtigungsgrenzen, Service Control Policies (SCPs), Resource Control Policies (RCPs) und Sitzungsrichtlinien.

So funktioniert Amazon Connect Health mit IAM

Amazon Connect Health verwendet identitätsbasierte IAM-Richtlinien, um den Zugriff auf Connect Health-Operationen und -Ressourcen zu kontrollieren. Administratoren sollten das Prinzip der geringsten Rechte anwenden und nur die für jede Rolle erforderlichen Berechtigungen gewähren.

Amazon Connect Health unterstützt die folgenden IAM-Funktionen:

  • Identity-based Richtlinien: Ja

  • Resource-based Richtlinien: Nein

  • Politische Maßnahmen: Ja (health-agent:*)

  • Politische Ressourcen: Ja (Domäne, Agent, Integrations-ARNs)

  • Schlüssel für Richtlinienbedingungen: Ja (aws:RequestTag,aws:ResourceTag,aws:TagKeys)

  • ABAC (attributebasierte Zugriffskontrolle): Ja

Amazon Connect Health unterstützt die attributebasierte Zugriffskontrolle (ABAC) über IAM-Tags für domänen- und agentenbezogene Operationen. Resource-level Berechtigungen können angewendet werden, um den Zugriff auf bestimmte Domänen, Agenten und Integrationen einzuschränken. Administratoren benötigen mindestens IAM-Berechtigungen, um über die AWS-Konsole auf Amazon Connect Health zuzugreifen.

Read-only Konsolenrichtlinie:

{ "Version": "2012-10-17" , "Statement": [ { "Effect": "Allow", "Action": [ "health-agent:ListDomains", "health-agent:GetDomain", "health-agent:ListIntegrations", "health-agent:ListAgents" ], "Resource": "*" } ] }

Richtlinie für die Konsole mit vollem Zugriff:

{ "Version": "2012-10-17" , "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStacks", "cloudformation:GetTemplate", "cloudformation:ListStacks", "connect:AssociatePhoneNumberContactFlow", "connect:ClaimPhoneNumber", "connect:DescribeInstance", "connect:DescribePhoneNumber", "connect:ListInstances", "connect:ListPhoneNumbersV2", "connect:ReleasePhoneNumber", "connect:SearchAvailablePhoneNumbers", "connect:TagResource", "connect:UpdatePhoneNumber", "connect:UpdatePhoneNumberMetadata", "ds:DescribeDirectories", "health-agent:CreateAgent", "health-agent:CreateDomain", "health-agent:CreateIntegration", "health-agent:DeleteAgent", "health-agent:DeleteDomain", "health-agent:DeleteIntegration", "health-agent:GenerateMedicalCodes", "health-agent:GetAgent", "health-agent:GetDomain", "health-agent:GetIntegration", "health-agent:GetPatientInsightsJob", "health-agent:ListAgents", "health-agent:ListDomains", "health-agent:ListIntegrations", "health-agent:PublishAgent", "health-agent:StartPatientInsightsJob", "health-agent:UpdateAgent", "health-agent:UpdateIntegration", "healthlake:ReadResource", "healthlake:SearchEverything", "healthlake:SearchWithGet", "healthlake:SearchWithPost", "iam:AttachRolePolicy", "iam:CreatePolicy", "iam:CreatePolicyVersion", "iam:CreateRole", "iam:CreateServiceLinkedRole", "iam:DeletePolicyVersion", "iam:GetRole", "iam:GetRolePolicy", "iam:PassRole", "iam:PutRolePolicy", "kms:DescribeKey", "kms:ListAliases", "kms:ListKeys", "lambda:AddPermission", "lambda:CreateFunction", "lambda:GetFunction", "lex:BuildBotLocale", "lex:CreateBot", "lex:CreateBotAlias", "lex:CreateBotLocale", "lex:CreateBotVersion", "lex:CreateCustomVocabulary", "lex:CreateIntent", "lex:CreateResourcePolicy", "lex:CreateSlot", "lex:CreateSlotType", "lex:CreateUploadUrl", "lex:DeleteBotLocale", "lex:DeleteCustomVocabulary", "lex:DeleteIntent", "lex:DeleteSlot", "lex:DeleteSlotType", "lex:DescribeBot", "lex:DescribeBotAlias", "lex:DescribeBotLocale", "lex:DescribeBotVersion", "lex:DescribeImport", "lex:ListBotLocales", "lex:ListBots", "lex:ListTagsForResource", "lex:StartImport", "lex:TagResource", "lex:UpdateBot", "lex:UpdateBotAlias", "lex:UpdateBotLocale", "lex:UpdateCustomVocabulary", "lex:UpdateIntent", "lex:UpdateResourcePolicy", "lex:UpdateSlot", "lex:UpdateSlotType", "organizations:DescribeOrganization", "organizations:ListAccounts", "s3:GetObject", "s3:ListAllMyBuckets", "s3:ListBucket", "s3:PutObject", "sso:CreateApplication", "sso:CreateApplicationAssignment", "sso:CreateInstance", "sso:ListDirectoryAssociations", "sso:ListInstances", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationGrant", "sso-directory:CreateUser", "sso-directory:SearchUsers" ], "Resource": "*" } ] }

Identity-based Richtlinienbeispiele für Amazon Connect Health

Standardmäßig sind Benutzer und Rollen nicht berechtigt, Amazon Connect Health-Ressourcen zu erstellen oder zu ändern. Sie können auch keine Aufgaben mithilfe der AWS-Managementkonsole, der AWS-CLI oder der AWS-API ausführen. Ein IAM-Administrator muss IAM-Richtlinien erstellen, die Benutzern die Berechtigung erteilen, Aktionen für die Ressourcen auszuführen, die sie benötigen. Der Administrator kann dann die IAM-Richtlinien zu Rollen hinzufügen, und Benutzer können die Rollen annehmen.

Informationen zum Erstellen einer identitätsbasierten IAM-Richtlinie mithilfe dieser Beispieldokumente zu JSON-Richtlinien finden Sie unter Erstellen von Richtlinien auf der Registerkarte JSON im IAM-Benutzerhandbuch.

Bewährte Methoden für Richtlinien:

  • Beginnen Sie mit verwalteten AWS-Richtlinien und wechseln Sie zu Berechtigungen mit den geringsten Rechten.

  • Berechtigungen mit den geringsten Rechten anwenden — Wenn Sie Berechtigungen mit IAM-Richtlinien festlegen, gewähren Sie nur die Berechtigungen, die für die Ausführung einer Aufgabe erforderlich sind.

  • Verwenden Sie Bedingungen in IAM-Richtlinien, um den Zugriff weiter einzuschränken.

  • Verwenden Sie IAM Access Analyzer, um Ihre IAM-Richtlinien zu validieren, um sichere und funktionale Berechtigungen zu gewährleisten.

  • Multi-Faktor-Authentifizierung (MFA) erforderlich.

Beispiel 1: Vollzugriff auf eine bestimmte Domain zulassen

Die folgende Richtlinie gewährt vollen Zugriff auf eine bestimmte Amazon Connect Health-Domain und deren Integrationen.

{ "Version": "2012-10-17" , "Statement": [ { "Effect": "Allow", "Action": [ "health-agent:*" ], "Resource": [ "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>", "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>/integration/*" ] } ] }

Beispiel 2: Erlauben Sie Benutzern, Sitzungen zur Umgebungsdokumentation zu starten und anzusehen

Die folgende Richtlinie ermöglicht es Benutzern, Sitzungen zur Umgebungsdokumentation zu starten und abzurufen.

{ "Version": "2012-10-17" , "Statement": [ { "Effect": "Allow", "Action": [ "health-agent:StartMedicalScribeListeningSession", "health-agent:GetMedicalScribeListeningSession" ], "Resource": "*" } ] }

Beispiel 3: Read-only Zugriff auf die Umgebungsdokumentation

Die folgende Richtlinie gewährt nur Lesezugriff auf Sitzungen zur Umgebungsdokumentation.

{ "Version": "2012-10-17" , "Statement": [ { "Effect": "Allow", "Action": [ "health-agent:GetMedicalScribeListeningSession", "health-agent:ListMedicalScribeListeningSessions" ], "Resource": "*" } ] }

Beispiel 4: Vollzugriff auf alle Connect Health-Ressourcen

Die folgende Richtlinie gewährt vollen Zugriff auf alle Amazon Connect Health-Ressourcen.

{ "Version": "2012-10-17" , "Statement": [ { "Effect": "Allow", "Action": "health-agent:*", "Resource": "*" } ] }

Beispiel 5: Read-only Zugriff mit Verweigerung bei destruktiven Aktionen

Die folgende Richtlinie gewährt Domänen und Agenten nur Lesezugriff, verweigert aber ausdrücklich Löschvorgänge.

{ "Version": "2012-10-17" , "Statement": [ { "Effect": "Allow", "Action": [ "health-agent:GetDomain", "health-agent:ListAgents", "health-agent:GetAgent" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "health-agent:DeleteDomain", "health-agent:DeleteAgent" ], "Resource": "*" } ] }

Beispiel 6: Erlauben Sie IAM-Benutzern, ihre eigenen Berechtigungen einzusehen

In diesem Beispiel wird gezeigt, wie Sie eine Richtlinie erstellen, die IAM-Benutzern die Berechtigung zum Anzeigen der eingebundenen Richtlinien und verwalteten Richtlinien gewährt, die ihrer Benutzeridentität angefügt sind.

{ "Version": "2012-10-17" , "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Servicerollen und Vertrauensrichtlinien

Amazon Connect Health verwendet eine IAM-Servicerolle, um Aktionen in Ihrem Namen durchzuführen. Jede AWS-Servicekomponente, mit der Amazon Connect Health interagiert, arbeitet unter einer speziellen IAM-Servicerolle mit einer Vertrauensrichtlinie, die auf den jeweiligen Service-Principal beschränkt ist.

Das folgende Beispiel zeigt eine Servicerollenrichtlinie für Amazon Connect Health, die Berechtigungen für die Domain-, Integrations- und Agentenverwaltung gewährt.

{ "Version": "2012-10-17" , "Statement": [ { "Sid": "DescribeUserWithSourceIdentity", "Effect": "Allow", "Action": [ "identitystore:DescribeUser" ], "Resource": "arn:aws:identitystore:::user/${aws:SourceIdentity}" }, { "Sid": "DomainReadAccess", "Effect": "Allow", "Action": [ "health-agent:GetDomain" ], "Resource": "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>" }, { "Sid": "ListOperations", "Effect": "Allow", "Action": [ "health-agent:ListIntegrations", "health-agent:ListAgents", "health-agent:ListAgentVersions" ], "Resource": "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>" }, { "Sid": "IntegrationManagement", "Effect": "Allow", "Action": [ "health-agent:CreateIntegration", "health-agent:GetIntegration", "health-agent:UpdateIntegration", "health-agent:DeleteIntegration" ], "Resource": [ "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>", "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>/integration/*" ] }, { "Sid": "AgentManagement", "Effect": "Allow", "Action": [ "health-agent:CreateAgent", "health-agent:UpdateAgent", "health-agent:GetAgent", "health-agent:PublishAgent", "health-agent:DeleteAgent" ], "Resource": [ "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>", "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>/agent/*" ] } ] }

Das folgende Beispiel zeigt eine Vertrauensrichtlinie, die es dem Amazon Connect Health-Service Principal ermöglicht, die Rolle zu übernehmen.

{ "Version": "2012-10-17" , "Statement": [ { "Sid": "AllowHealthAgentServicePrincipal", "Effect": "Allow", "Principal": { "Service": "health-agent.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetContext", "sts:SetSourceIdentity" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:health-agent:<region>:<account-id>:domain/<domain-id>/*" }, "StringEquals": { "aws:SourceAccount": "<account-id>" } } } ] }

Um das Problem des verwirrten Stellvertreters zu vermeiden, empfehlen wir, die Schlüssel aws:SourceArn und die aws:SourceAccount Bedingung in der Vertrauensrichtlinie zu verwenden. Der Quell-ARN sollte auf die spezifische Amazon Connect Health-Domain beschränkt sein, für die die Rolle vorgesehen ist.