Identity and Access Management in Amazon RDS - Amazon Relational Database Service

Identity and Access Management in Amazon RDS

AWS Identity and Access Management (IAM) ist ein AWS-Service, der Administratoren bei der sicheren Kontrolle des Zugriffs auf AWS-Ressourcen unterstützt. IAM-Administratoren steuern, wer zur Verwendung von Amazon RDS-Ressourcen authentifiziert (angemeldet) und autorisiert (berechtigt) werden kann. IAM ist ein AWS-Service, den Sie ohne zusätzliche Kosten nutzen können.

Zielgruppe

Wie Sie AWS Identity and Access Management (IAM) verwenden, unterscheidet sich je nach Ihrer Arbeit in Amazon RDS.

Service-Benutzer – Wenn Sie den Amazon RDS-Service verwenden, stellt Ihnen Ihr Administrator die erforderlichen Anmeldeinformationen und Berechtigungen bereit. Wenn Sie für Ihre Arbeit weitere Amazon RDS-Funktionen ausführen, benötigen Sie möglicherweise zusätzliche Berechtigungen. Wenn Sie die Funktionsweise der Zugriffskontrolle verstehen, kann Ihnen dies helfen, die richtigen Berechtigungen von Ihrem Administrator anzufordern. Unter Fehlerbehebung für Amazon RDS-Identität und -Zugriff finden Sie nützliche Informationen für den Fall, dass Sie keinen Zugriff auf eine Funktion in Amazon RDS haben.

Service-Administrator – Wenn Sie in Ihrem Unternehmen die Verantwortung für Amazon RDS-Ressourcen haben, haben Sie wahrscheinlich vollständigen Zugriff auf Amazon RDS. Ihre Aufgabe besteht darin, die Amazon RDS-Funktionen und -Ressourcen festzulegen, auf die Mitarbeiter zugreifen können sollten. Sie müssen anschließend bei Ihrem IAM-Administrator entsprechende Änderungen für die Berechtigungen Ihrer Service-Benutzer anfordern. Lesen Sie die Informationen auf dieser Seite, um die Grundkonzepte von IAM zu verstehen. Weitere Informationen dazu, wie Ihr Unternehmen IAM mit Amazon RDS verwenden kann, finden Sie unter Funktionsweise von Amazon RDS mit IAM.

IAM Administrator – Wenn Sie als IAM-Administrator fungieren, sollten Sie Einzelheiten dazu kennen, wie Sie Richtlinien zur Verwaltung des Zugriffs auf Amazon RDS verfassen können. Beispiele für identitätsbasierte Amazon RDS-Richtlinien, die Sie in IAM verwenden können, finden Sie unter Beispiele für identitätsbasierte Amazon RDS-Richtlinien.

Authentifizierung mit Identitäten

Die Authentifizierung ist die Art und Weise, wie Sie sich mit Ihren Anmeldeinformationen bei AWS anmelden. Weitere Informationen zum Anmelden über die AWS Management Console finden Sie unter Die IAM-Konsole und -Anmeldeseite im IAM-Benutzerhandbuch.

Sie müssen als Stammbenutzer des AWS-Kontos, als IAM-Benutzer oder durch Übernahme einer IAM-Rolle authentifiziert (bei AWS angemeldet) sein. Sie können auch die Single-Sign-on-Authentifizierung Ihres Unternehmens verwenden oder sich sogar über Google oder Facebook anmelden. In diesen Fällen hat Ihr Administrator vorher einen Identitätsverbund unter verwendung von IAM-Rollen eingerichtet. Wenn Sie mit Anmeldeinformationen eines anderen Unternehmens auf AWS zugreifen, nehmen Sie indirekt eine Rolle an.

Verwenden Sie zur direkten Anmeldung bei AWS Management Console Ihr Kennwort mit Ihrer Root-Benutzer-E-Mail-Adresse oder Ihrem IAM-Benutzernamen. Sie können auf AWS programmgesteuert oder mit Ihren Root-Benutzer- oder IAM-Benutzerzugriffsschlüsseln zugreifen. AWS stellt SDK- und Befehlszeilen-Tools bereit, mit denen Ihre Anforderung anhand Ihrer Anmeldeinformationen kryptografisch signiert wird. Wenn Sie keine AWS-Tools verwenden, müssen Sie die Anforderung selbst signieren. Hierzu verwenden Sie Signature Version 4, ein Protokoll für die Authentifizierung eingehender API-Anforderungen. Weitere Informationen zu diesen Authentifizierungsanfragen finden Sie unter Signature Version 4-Signaturprozess im AWS General Reference.

Unabhängig von der von Ihnen verwendeten Authentifizierungsmethode müssen Sie möglicherweise auch zusätzliche Sicherheitsinformationen angeben. AWS empfiehlt beispielsweise die Verwendung von Multi-Factor Authentication (MFA), um die Sicherheit Ihres Kontos zu verbessern. Weitere Informationen finden Sie unter Verwenden der Multi-Factor Authentication (MFA) in AWS im IAM-Benutzerhandbuch.

Stammbenutzer des AWS-Kontos

Wenn Sie ein AWS-Konto neu erstellen, enthält es zunächst nur eine einzelne Anmeldeidentität, die über Vollzugriff auf sämtliche AWS-Services und -Ressourcen im Konto verfügt. Diese Identität wird als Root-Benutzer des AWS-Kontos bezeichnet. Um auf es zuzugreifen, müssen Sie sich mit der E-Mail-Adresse und dem Passwort anmelden, die zur Erstellung des Kontos verwendet wurden. Wir raten ausdrücklich davon ab, den Root-Benutzer für Alltagsaufgaben einschließlich administrativen Aufgaben zu verwenden. Bleiben Sie stattdessen bei der bewährten Methode, den Root-Benutzer nur zu verwenden, um Ihren ersten IAM-Benutzer zu erstellen. Anschließend legen Sie die Anmeldedaten für den Root-Benutzer an einem sicheren Ort ab und verwenden ihn nur, um einige Konto- und Service-Verwaltungsaufgaben durchzuführen.

IAM-Benutzer und -Gruppen

Ein IAM-Benutzer ist eine Entität in Ihrem AWS-Konto mit bestimmten Berechtigungen für eine einzelne Person oder eine einzelne Anwendung. Ein IAM-Benutzer kann langfristige Anmeldeinformationen wie Benutzername und Kennwort oder einen Satz von Zugriffsschlüsseln haben. Informationen zum Generieren von Zugriffsschlüsseln finden Sie unter Verwalten von Zugriffsschlüsseln für IAM-Benutzer im IAM-Benutzerhandbuch. Achten Sie beim Generieren von Zugriffsschlüsseln für einen IAM-Benutzer darauf, dass Sie das Schlüsselpaar anzeigen und sicher speichern. Sie können den geheimen Zugriffsschlüssel später nicht wiederherstellen. Stattdessen müssen Sie ein neues Zugriffsschlüsselpaar generieren.

Ein IAM-Gruppe ist eine Identität, die eine Sammlung von IAM.Benutzern angibt. Sie können sich nicht als Gruppe anmelden. Mithilfe von Gruppen können Sie Berechtigungen für mehrere Benutzer gleichzeitig angeben. Gruppen vereinfachen die Verwaltung von Berechtigungen, wenn es zahlreiche Benutzer gibt. Sie könnten beispielsweise einer Gruppe mit dem Namen IAMAdmins Berechtigungen zum Verwalten von IAM-Ressourcen erteilen.

Benutzer unterscheiden sich von Rollen. Ein Benutzer ist einer einzigen Person oder Anwendung eindeutig zugeordnet. Eine Rolle kann von allen Personen angenommen werden, die sie benötigen. Benutzer besitzen permanente langfristige Anmeldeinformationen. Rollen stellen temporäre Anmeldeinformationen bereit. Weitere Informationen finden Sie unter Erstellen eines IAM-Benutzers (anstelle einer Rolle) im IAM-Benutzerhandbuch.

Sie können sich mit der IAM-Datenbankauthentifizierung bei Ihrem DB-Instance- authentifizieren.

Die IAM-Datenbankauthentifizierung funktioniert mit den folgenden DB-Engines:

  • Amazon RDS für MySQL

  • Amazon RDS für PostgreSQL

Weitere Informationen zur Authentifizierung bei Ihrem DB-Instance- mit IAM finden Sie unter IAM-Datenbankauthentifizierung für MySQL und PostgreSQL.

IAM-Rollen

Eine IAMRolle ist eine Entität in Ihrem AWS-Konto mit spezifischen Berechtigungen. Sie ist einem IAM-Benutzer vergleichbar, jedoch nicht mit einer bestimmten Person verknüpft. Sie können eine AWS Management Console-Rolle vorübergehend in der IAM annehmen, indem Sie Rollen wechseln. Sie können eine Rolle annehmen, indem Sie eine AWS CLI- oder AWS-API-Operation aufrufen oder eine benutzerdefinierte URL verwenden. Weitere Informationen zu Methoden für die Verwendung von Rollen finden Sie unter Verwenden von IAM-Rollen im IAM-Benutzerhandbuch.

IAM-Rollen mit temporären Anmeldeinformationen sind in folgenden Situationen hilfreich:

  • Temporäre IAM-Benutzerberechtigungen – Ein IAM-Benutzer kann eine IAM-Rolle annehmen, um vorübergehend andere Berechtigungen für eine bestimmte Aufgabe zu erhalten.

  • Zugriff für verbundene Benutzer –Statt einen IAM-Benutzer zu erstellen, können Sie vorhandene Identitäten von AWS Directory Service, aus Ihrem Unternehmens-Benutzerverzeichnis oder von einem Web-Identitätsanbieter verwenden. Diese werden als verbundene Benutzer bezeichnet. AWS weist einem verbundenen Benutzer eine Rolle zu, wenn der Zugriff über einen Identitätsanbieter angefordert wird. Weitere Informationen zu verbundenen Benutzern finden Sie unter Verbundene Benutzer und Rollen im IAM-Benutzerhandbuch.

  • Kontenübergreifender Zugriff–: Sie können eine IAM-Rolle verwenden, um einem vertrauenswürdigen Prinzipal in einem anderen Konto den Zugriff auf Ressourcen in Ihrem Konto zu ermöglichen. Rollen sind die primäre Möglichkeit, um kontoübergreifenden Zugriff zu gewähren. In einigen AWS-Services können Sie jedoch eine Richtlinie direkt an eine Ressource anfügen (anstatt eine Rolle als Proxy zu verwenden). Informationen zu den Unterschieden zwischen rollen- und ressourcenbasierten Richtlinien für den kontenübergreifenden Zugriff finden Sie unter So unterscheiden sich IAM-Rollen von ressourcenbasierten Richtlinien im IAM-Benutzerhandbuch.

  • AWS-Service-Zugriff –Eine Servicerolle ist eine IAM-Rolle, die ein Service übernimmt, um Aktionen in Ihrem Konto für Sie auszuführen. Beim Einrichten einiger AWS-Serviceumgebungen müssen Sie eine Rolle für den zu übernehmenden Service definieren. Diese Servicerolle muss alle für den Service erforderlichen Berechtigungen für den Zugriff auf die AWS-Ressourcen, die erforderlich sind, enthalten. Servicerollen unterscheiden sich von Service zu Service, aber viele erlauben Ihnen, Ihre Berechtigungen auszuwählen, solange Sie die dokumentierten Anforderungen für diesen Service erfüllen. Service-Rollen bieten nur Zugriff innerhalb Ihres Kontos und können nicht genutzt werden, um Zugriff auf Services in anderen Konten zu erteilen. Sie können eine Servicerolle in IAM erstellen, ändern und löschen. Sie können beispielsweise eine Rolle erstellen, mit der Amazon Redshift in Ihrem Namen auf einen Amazon S3-Bucket zugreifen und Daten aus diesem Bucket in einen Amazon Redshift-Cluster laden kann. Weitere Informationen finden Sie unter Erstellen einer Rolle zum Delegieren von Berechtigungen an einen AWS-Service im IAM-Benutzerhandbuch.

  • Auf Amazon EC2 ausgeführte Anwendungen – Sie können eine IAM-Rolle nutzen, um temporäre Anmeldeinformationen für Anwendungen zu verwalten, die auf einer EC2-Instance ausgeführt werden und AWS CLI- oder AWS-API-Anforderungen durchführen. Das ist empfehlenswerter als Zugriffsschlüssel innerhalb der EC2 Instance zu speichern. Erstellen Sie ein Instance-Profil, das an die Instance angefügt ist, um eine AWS-Rolle einer EC2-Instance zuzuweisen und die Rolle für sämtliche Anwendungen der Instance bereitzustellen. Ein Instance-Profil enthält die Rolle und ermöglicht, dass Programme, die in der EC2-Instance ausgeführt werden, temporäre Anmeldeinformationen erhalten. Weitere Informationen finden Sie unter Verwenden einer IAM-Rolle zum Erteilen von Berechtigungen für Anwendungen, die auf Amazon EC2-Instances ausgeführt werden im IAM-Benutzerhandbuch.

Informationen dazu, wann Sie IAM-Rollen verwenden sollten, finden Sie unter Wann Sie eine IAM-Rolle (statt eines Benutzers) erstellen sollten im IAM-Benutzerhandbuch.

Verwalten des Zugriffs mit Richtlinien

Für die Zugriffssteuerung in AWS erstellen Sie Richtlinien und weisen sie den IAM-Identitäten oder AWS-Ressourcen zu. Eine Richtlinie ist ein Objekt in AWS, das, wenn es einer Identität oder Ressource zugeordnet wird, deren Berechtigungen definiert. AWS wertet diese Richtlinien aus, wenn eine Entität (Root-Benutzer, IAM-Benutzer oder IAM-Rolle) eine Anforderung stellt. Berechtigungen in den Richtlinien bestimmen, ob die Anforderung zugelassen oder abgelehnt wird. Die meisten Richtlinien werden in AWS als JSON-Dokumente gespeichert. Weitere Informationen zu Struktur und Inhalten von JSON-Richtliniendokumenten finden Sie unter Übersicht über JSON-Richtlinien im IAM-Benutzerhandbuch.

Ein IAM-Administrator kann mithilfe von Richtlinien die Benutzer, die auf AWS-Ressourcen zugreifen können, und die Aktionen, die diese für diese Ressourcen ausführen dürfen, angeben. Eine IAM-Entität (Benutzer oder Rolle) besitzt zunächst keine Berechtigungen. Anders ausgedrückt, können Benutzer standardmäßig keine Aktionen ausführen und nicht einmal ihr Kennwort ändern. Um einem Benutzer die Berechtigung für eine Aktion zu erteilen, muss ein Administrator einem Benutzer eine Berechtigungsrichtlinie zuweisen. Alternativ kann der Administrator den Benutzer zu einer Gruppe hinzufügen, die über die gewünschten Berechtigungen verfügt. Wenn ein Administrator einer Gruppe Berechtigungen erteilt, erhalten alle Benutzer in dieser Gruppe diese Berechtigungen.

IAM-Richtlinien definieren Berechtigungen für eine Aktion unabhängig von der Methode, die Sie zur Ausführung der Aktion verwenden. Angenommen, es gibt eine Richtlinie, die Berechtigungen für die iam:GetRole-Aktion erteilt. Ein Benutzer mit dieser Richtlinie kann Benutzer informationen über die AWS Management Console, die AWS CLI oder die AWS-API abrufen.

Identitätsbasierte Richtlinien

Identitätsbasierte Richtlinien sind JSON-Berechtigungsrichtliniendokumente, die Sie einem Prinzipal (oder einer Identität) anfügen können, wie z. B.IAM-Benutzer, -Rollen oder -Gruppen. Diese Richtlinien steuern, welche Aktionen diese Identität für welche Ressourcen und unter welchen Bedingungen ausführen kann. Informationen zum Erstellen identitätsbasierter Richtlinien finden Sie unter Erstellen von IAM-Richtlinien im IAM-Benutzerhandbuch.

Identitätsbasierte Richtlinien können weiter als Inline-Richtlinien oder verwaltete Richtlinien kategorisiert werden. Inline-Richtlinien sind direkt in einen einzelnen Benutzer, eine einzelne Gruppe oder eine einzelne Rolle eingebettet. Verwaltete Richtlinien sind eigenständige Richtlinien, die Sie mehreren Benutzern, Gruppen und Rollen in Ihrem AWS-Konto anfügen können. Verwaltete Richtlinien umfassen von AWS verwaltete und von Kunden verwaltete Richtlinien. Informationen dazu, wie Sie zwischen einer verwalteten Richtlinie und einer Inline-Richtlinie wählen, finden Sie unter Wählen zwischen verwalteten und Inline-Richtlinien im IAM-Benutzerhandbuch.

Die folgenden AWS-verwalteten Richtlinien, die an Benutzer in Ihrem Konto angefügt werden, gelten speziell für Amazon RDS:

  • AmazonRDSReadOnlyAccess – Gewährt Lesezugriff auf alle Amazon RDS-Ressourcen für das angegebene AWS-Konto.

  • AmazonRDSFullAccess – Gewährt Vollzugriff auf alle Amazon RDS-Ressourcen für das angegebene AWS-Konto.

Weitere Richtlinientypen

AWS unterstützt zusätzliche, weniger häufig verwendete Richtlinientypen. Diese Richtlinientypen können die maximalen Berechtigungen festlegen, die Ihnen von den häufiger verwendeten Richtlinientypen erteilt werden können.

  • Berechtigungsgrenzen – Eine Berechtigungsgrenze ist eine erweiterte Funktion, mit der Sie die maximalen Berechtigungen festlegen können, die eine identitätsbasierte Richtlinie einer IAM-Entität (IAM-Benutzer oder Rolle) erteilen kann. Sie können eine Berechtigungsgrenze für eine Entität festlegen. Die resultierenden Berechtigungen sind eine Schnittmenge der identitätsbasierten Richtlinien der Entität und ihrer Berechtigungsgrenzen. Ressourcenbasierte Richtlinien, die den Benutzer oder die Rolle im Feld Principal angeben, werden nicht durch Berechtigungsgrenzen eingeschränkt. Eine explizite Zugriffsverweigerung in einer dieser Richtlinien setzt eine Zugriffserlaubnis außer Kraft. Weitere Informationen zu Berechtigungsgrenzen finden Sie unter Berechtigungsgrenzen für IAM-Entitäten im IAM-Benutzerhandbuch.

  • Service-Kontrollrichtlinien (Service Control Policies, SCPs) – SCPs sind JSON-Richtlinien, die die maximalen Berechtigungen für eine Organisation oder Organisationseinheit (Organization Unit, OU) in AWS Organizations angeben. AWS Organizations ist ein Service für die Gruppierung und zentrale Verwaltung der AWS-Konten Ihres Unternehmens. Wenn Sie innerhalb einer Organisation alle Funktionen aktivieren, können Sie Service-Kontrollrichtlinien (SCPs) auf alle oder einzelne Ihrer Konten anwenden. SCPs schränken Berechtigungen für Entitäten in Mitgliedskonten einschließlich des jeweiligen Stammbenutzer des AWS-Kontos ein. Weitere Informationen zu Organisationen und SCPs finden Sie unter Funktionsweise von SCPs im AWS Organizations-Benutzerhandbuch.

  • Sitzungsrichtlinien – Sitzungsrichtlinien sind erweiterte Richtlinien, die Sie als Parameter übergeben, wenn Sie eine temporäre Sitzung für eine Rolle oder einen verbundenen Benutzer programmgesteuert erstellen. Die resultierenden Sitzungsberechtigungen sind eine Schnittmenge der auf der Identität des Benutzers oder der Rolle basierenden Richtlinien und der Sitzungsrichtlinien. Berechtigungen können auch aus einer ressourcenbasierten Richtlinie stammen. Eine explizite Zugriffsverweigerung in einer dieser Richtlinien setzt eine Zugriffserlaubnis außer Kraft. Weitere Informationen finden Sie unter Sitzungsrichtlinien im IAM-Benutzerhandbuch.

Mehrere Richtlinientypen

Wenn mehrere auf eine Anforderung mehrere Richtlinientypen angewendet werden können, sind die entsprechenden Berechtigungen komplizierter. Informationen dazu, wie AWS die Zulässigkeit einer Anforderung ermittelt, wenn mehrere Richtlinientypen beteiligt sind, finden Sie unter Logik für die Richtlinienauswertung im IAM-Benutzerhandbuch.

Weitere Informationen über Identitäts- und Zugriffsverwaltung für Amazon RDS finden Sie auf den folgenden Seiten: