Wenn Sie in Amazon Data Firehose veröffentlichen, können Sie einen Bereitstellungsstream auswählen, der sich in demselben Konto wie die zu überwachende Ressource (das Quellkonto) oder in einem anderen Konto (dem Zielkonto) befindet. Um die kontenübergreifende Übermittlung von Flow-Protokollen an Amazon Data Firehose zu ermöglichen, müssen Sie eine IAM-Rolle im Quellkonto und eine IAM-Rolle im Zielkonto erstellen.
Rolle des Quellkontos
Erstellen Sie im Quellkonto eine Rolle, die die folgenden Berechtigungen gewährt. In diesem Beispiel lautet der Name der Rolle mySourceRole
, allerdings können Sie einen anderen Namen für diese Rolle wählen. Die letzte Anweisung ermöglicht es der Rolle im Zielkonto, diese Rolle zu übernehmen. Die Bedingungsanweisungen stellen sicher, dass diese Rolle nur an den Protokollbereitstellungsservice und nur beim Überwachen der angegebenen Ressource übergeben wird. Geben Sie beim Erstellen Ihrer Richtlinie die VPCs, Netzwerkschnittstellen oder Subnetze, die Sie überwachen, mit dem Bedingungsschlüssel iam:AssociatedResourceARN
an.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::source-account
:role/mySourceRole
",
"Condition": {
"StringEquals": {
"iam:PassedToService": "delivery.logs.amazonaws.com"
},
"StringLike": {
"iam:AssociatedResourceARN": [
"arn:aws:ec2:region
:source-account
:vpc/vpc-00112233344556677
"
]
}
}
},
{
"Effect": "Allow",
"Action": [
"logs:CreateLogDelivery",
"logs:DeleteLogDelivery",
"logs:ListLogDeliveries",
"logs:GetLogDelivery"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::destination-account
:role/AWSLogDeliveryFirehoseCrossAccountRole"
}
]
}
Stellen Sie sicher, dass Ihre Rolle die folgende Vertrauensrichtlinie hat, die es dem Protokollservice erlaubt, die Rolle zu übernehmen.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "delivery.logs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
Führen Sie aus dem Quellkonto die folgenden Schritte zum Erstellen der Rolle aus.
So erstellen Sie die Rolle des Quellkontos
Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/
. -
Wählen Sie im Navigationsbereich Policies aus.
-
Wählen Sie Richtlinie erstellen aus.
-
Führen Sie auf der Seite Create policy (Richtlinie erstellen) die folgenden Schritte aus:
-
Wählen Sie JSON.
-
Ersetzen Sie den Inhalt dieses Fensters durch die Berechtigungsrichtlinie am Anfang dieses Abschnitts.
-
Wählen Sie Weiter.
-
Geben Sie einen Namen und eine optionale Beschreibung sowie Tags für Ihre Richtlinie ein und wählen Sie dann Richtlinie erstellen aus.
-
-
Wählen Sie im Navigationsbereich Rollen aus.
-
Wählen Sie Rolle erstellen aus.
-
Für Trusted entity type (Vertrauenstyp der Entität), wählen Sie Custom trust policy (Benutzerdefinierte Vertrauensrichtlinie). Für Custom trust policy (Benutzerdefinierte Vertrauensrichtlinie), ersetzen Sie
"Principal": {},
mit dem Folgenden, was den Protokollbereitstellungsdienst spezifiziert. Wählen Sie Weiter."Principal": { "Service": "delivery.logs.amazonaws.com" },
-
Wählen Sie auf der Seite Add permissions (Berechtigungen hinzufügen) die zuvor in diesem Verfahren erstellte Richtlinie und anschließend Next (Weiter).
-
Geben Sie einen Namen für die Rolle sowie optional eine Beschreibung ein.
-
Wählen Sie Rolle erstellen aus.
Rolle des Zielkontos
Erstellen Sie im Zielkonto eine Rolle mit einem Namen, der mit AWSLogDeliveryFirehoseCrossAccountRole beginnt. Die Rolle muss die folgenden Berechtigungen enthalten.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole",
"firehose:TagDeliveryStream"
],
"Resource": "*"
}
]
}
Stellen Sie sicher, dass diese Rolle über die folgende Vertrauensrichtlinie verfügt, mit der die Rolle, die Sie im Quellkonto erstellt haben, diese Rolle übernehmen kann.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::source-account
:role/mySourceRole
"
},
"Action": "sts:AssumeRole"
}
]
}
Führen Sie vom Quellkonto die folgenden Schritte zum Erstellen der Rolle aus.
So erstellen Sie die Rolle des Zielkontos
Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/
. -
Wählen Sie im Navigationsbereich Policies aus.
-
Wählen Sie Richtlinie erstellen aus.
-
Führen Sie auf der Seite Create policy (Richtlinie erstellen) die folgenden Schritte aus:
-
Wählen Sie JSON.
-
Ersetzen Sie den Inhalt dieses Fensters durch die Berechtigungsrichtlinie am Anfang dieses Abschnitts.
-
Wählen Sie Weiter.
-
Geben Sie einen Namen für Ihre Richtlinie ein, der mit AWSLogDeliveryFirehoseCrossAccountRole beginnt, und wählen Sie dann Create policy (Richtlinie erstellen) aus.
-
-
Wählen Sie im Navigationsbereich Rollen aus.
-
Wählen Sie Rolle erstellen aus.
-
Für Trusted entity type (Vertrauenstyp der Entität), wählen Sie Custom trust policy (Benutzerdefinierte Vertrauensrichtlinie). Für Custom trust policy (Benutzerdefinierte Vertrauensrichtlinie), ersetzen Sie
"Principal": {},
mit dem Folgenden, was die Rolle des Quellkontos angibt. Wählen Sie Weiter."Principal": { "AWS": "arn:aws:iam::
source-account
:role/mySourceRole
" }, -
Wählen Sie auf der Seite Add permissions (Berechtigungen hinzufügen) die zuvor in diesem Verfahren erstellte Richtlinie und anschließend Next (Weiter).
-
Geben Sie einen Namen für die Rolle sowie optional eine Beschreibung ein.
-
Wählen Sie Rolle erstellen aus.