View a markdown version of this page

Amazon EventBridge Scheduler einrichten - EventBridge Terminplaner

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.

Amazon EventBridge Scheduler einrichten

Bevor Sie EventBridge Scheduler verwenden können, müssen Sie die folgenden Schritte ausführen.

Melden Sie sich an für AWS

Melde dich an für ein AWS-Konto

Um loszulegen AWS, benötigen Sie eine AWS-Konto. Informationen zum Erstellen eines AWS-Konto finden Sie unter Erste Schritte mit einem AWS-Konto im AWS -Kontenverwaltung Referenzhandbuch.

Verwenden Sie verwaltete Richtlinien

Nachdem Sie Ihr AWS Konto und Ihren Administratorbenutzer eingerichtet haben, empfehlen wir Ihnen, separate Benutzer, Gruppen oder Rollen mit nur den für die Verwendung von EventBridge Scheduler erforderlichen Berechtigungen zu erstellen. EventBridge Scheduler unterstützt die folgenden verwalteten Richtlinien für allgemeine Anwendungsfälle.

  • AmazonEventBridgeSchedulerFullAccess — Gewährt vollen Zugriff auf EventBridge Scheduler über die Konsole und die API.

  • AmazonEventBridgeSchedulerReadOnlyAccess — Gewährt schreibgeschützten Zugriff auf den Scheduler. EventBridge

Sie können diese verwalteten Richtlinien an Ihre IAM-Prinzipale anhängen. Weitere Informationen zur Verwaltung des Zugriffs auf EventBridge Scheduler mithilfe identitätsbasierter IAM-Richtlinien finden Sie unter. Verwenden von identitätsbasierten Richtlinien im Scheduler EventBridge

Einrichten der Ausführungsrolle

Eine Ausführungsrolle ist eine IAM-Rolle, die EventBridge Scheduler übernimmt, um in Ihrem Namen mit anderen zu interagieren. AWS-Services Sie fügen dieser Rolle Berechtigungsrichtlinien hinzu, um EventBridge Scheduler Zugriff zum Aufrufen von Zielen zu gewähren.

Sie können auch eine neue Ausführungsrolle erstellen, wenn Sie die Konsole verwenden, um einen neuen Zeitplan zu erstellen. Wenn Sie die Konsole verwenden, erstellt EventBridge Scheduler in Ihrem Namen eine Rolle mit Berechtigungen, die auf dem von Ihnen ausgewählten Ziel basieren. Wenn EventBridge Scheduler eine Rolle für Sie erstellt, enthält die Vertrauensrichtlinie der Rolle Bedingungsschlüssel, die einschränken, welche Prinzipale die Rolle in Ihrem Namen übernehmen können. Dies schützt vor dem potenziellen Sicherheitsproblem mit dem verwirrten Stellvertreter.

In den folgenden Schritten wird beschrieben, wie Sie eine neue Ausführungsrolle erstellen und dem EventBridge Scheduler Zugriff gewähren, um ein Ziel aufzurufen. In diesem Thema werden Berechtigungen für beliebte Ziele mit Vorlagen beschrieben. Informationen zum Hinzufügen von Berechtigungen für andere Ziele finden Sie unterVerwenden von Zielvorlagen im Scheduler EventBridge.

Um eine Ausführungsrolle mit dem zu erstellen AWS CLI
  1. Kopieren Sie die folgende JSON-Richtlinie „Rolle übernehmen“ und speichern Sie sie lokal unterScheduler-Execution-Role.json. Diese Vertrauensrichtlinie ermöglicht es EventBridge Scheduler, die Rolle in Ihrem Namen zu übernehmen.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    Wichtig

    Um eine Ausführungsrolle in einer Produktionsumgebung einzurichten, empfehlen wir die Implementierung zusätzlicher Sicherheitsvorkehrungen, um Probleme mit unklaren Stellvertretern zu vermeiden. Weitere Informationen und ein Beispiel für eine Richtlinie finden Sie unterVerhinderung verwirrter Stellvertreter im Scheduler EventBridge.

  2. Geben Sie AWS Command Line Interface unter (AWS CLI) den folgenden Befehl ein, um eine neue Rolle zu erstellen. SchedulerExecutionRoleErsetzen Sie es durch den Namen, den Sie dieser Rolle geben möchten.

    $ aws iam create-role --role-name SchedulerExecutionRole --assume-role-policy-document file://Scheduler-Execution-Role.json

    Bei Erfolg wird die folgende Ausgabe angezeigt:

    {
        "Role": {
            "Path": "/",
            "RoleName": "Scheduler-Execution-Role",
            "RoleId": "BR1L2DZK3K4CTL5ZF9EIL",
            "Arn": "arn:aws:iam::123456789012:role/SchedulerExecutionRole",
            "CreateDate": "2022-03-10T18:45:01+00:00",
            "AssumeRolePolicyDocument": {
                "Version": "2012-10-17",		 	 	 
                "Statement": [
                    {
                        "Effect": "Allow",
                        "Principal": {
                            "Service": "scheduler.amazonaws.com"
                        },
                        "Action": "sts:AssumeRole"
                    }
                ]
            }
        }
    }
  3. Um eine neue Richtlinie zu erstellen, die es EventBridge Scheduler ermöglicht, ein Ziel aufzurufen, wählen Sie eines der folgenden allgemeinen Ziele aus. Kopieren Sie die JSON-Berechtigungsrichtlinie und speichern Sie sie lokal als .json Datei.

    Amazon SQS – SendMessage

    Im Folgenden kann EventBridge Scheduler die sqs:SendMessage Aktion für alle Amazon SQS SQS-Warteschlangen in Ihrem Konto aufrufen.

    JSON
    JSON
    { "Version":"2012-10-17", "Statement": [ { "Action": [ "sqs:SendMessage" ], "Effect": "Allow", "Resource": "*" } ] }
    Amazon SNS – Publish

    Im Folgenden kann EventBridge Scheduler die sns:Publish Aktion für alle Amazon SNS SNS-Themen in Ihrem Konto aufrufen.

    JSON
    JSON
    { "Version":"2012-10-17", "Statement": [ { "Action": [ "sns:Publish" ], "Effect": "Allow", "Resource": "*" } ] }
    Lambda – Invoke

    Im Folgenden kann EventBridge Scheduler die lambda:InvokeFunction Aktion für alle Lambda-Funktionen in Ihrem Konto aufrufen.

    JSON
    JSON
    { "Version":"2012-10-17", "Statement": [ { "Action": [ "lambda:InvokeFunction" ], "Effect": "Allow", "Resource": "*" } ] }
  4. Führen Sie den folgenden Befehl aus, um die neue Berechtigungsrichtlinie zu erstellen. PolicyNameErsetzen Sie sie durch den Namen, den Sie dieser Richtlinie geben möchten.

    $ aws iam create-policy --policy-name PolicyName --policy-document file://PermissionPolicy.json

    Bei Erfolg wird die folgende Ausgabe angezeigt. Beachten Sie den Richtlinien-ARN. Sie verwenden diesen ARN im nächsten Schritt, um die Richtlinie an unsere Ausführungsrolle anzuhängen.

    {
        "Policy": {
            "PolicyName": "PolicyName",
            "CreateDate": "2022-03-015T19:31:18.620Z",
            "AttachmentCount": 0,
            "IsAttachable": true,
            "PolicyId": "ZXR6A36LTYANPAI7NJ5UV",
            "DefaultVersionId": "v1",
            "Path": "/",
            "Arn": "arn:aws:iam::123456789012:policy/PolicyName",
            "UpdateDate": "2022-03-015T19:31:18.620Z"
        }
    }
    
  5. Führen Sie den folgenden Befehl aus, um die Richtlinie an Ihre Ausführungsrolle anzuhängen. your-policy-arnErsetzen Sie es durch den ARN der Richtlinie, die Sie im vorherigen Schritt erstellt haben. SchedulerExecutionRoleErsetzen Sie ihn durch den Namen Ihrer Ausführungsrolle.

    $ aws iam attach-role-policy --policy-arn your-policy-arn --role-name SchedulerExecutionRole

    Der attach-role-policy Vorgang gibt keine Antwort in der Befehlszeile zurück.

Richten Sie ein Ziel ein

Bevor Sie einen EventBridge Scheduler-Zeitplan erstellen, benötigen Sie mindestens ein Ziel, das Ihr Zeitplan aufrufen kann. Sie können eine vorhandene AWS Ressource verwenden oder eine neue erstellen. Die folgenden Schritte zeigen, wie Sie eine neue Amazon SQS SQS-Standardwarteschlange mit CloudFormation erstellen.

So erstellen Sie eine neue Amazon SQS SQS-Warteschlange
  1. Kopieren Sie die folgende CloudFormation JSON-Vorlage und speichern Sie sie lokal unter. Scheduler-Target-SQS.json

    { "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "MyQueue": { "Type": "AWS::SQS::Queue", "Properties": { "QueueName": "MyQueue" } } }, "Outputs": { "QueueName": { "Description": "The name of the queue", "Value": { "Fn::GetAtt": [ "MyQueue", "QueueName" ] } }, "QueueURL": { "Description": "The URL of the queue", "Value": { "Ref": "MyQueue" } }, "QueueARN": { "Description": "The ARN of the queue", "Value": { "Fn::GetAtt": [ "MyQueue", "Arn" ] } } } }
  2. Führen Sie in der den folgenden Befehl aus AWS CLI, um einen CloudFormation Stack aus der Scheduler-Target-SQS.json Vorlage zu erstellen.

    $ aws cloudformation create-stack --stack-name Scheduler-Target-SQS --template-body file://Scheduler-Target-SQS.json

    Bei Erfolg wird die folgende Ausgabe angezeigt:

    {
        "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/Scheduler-Target-SQS/1d2af345-a121-12eb-abc1-012e34567890"
    }
  3. Führen Sie den folgenden Befehl aus, um die Übersichtsinformationen für Ihren CloudFormation Stack anzuzeigen. Zu diesen Informationen gehören der Status des Stacks und die in der Vorlage angegebenen Ausgaben.

    $ aws cloudformation describe-stacks --stack-name Scheduler-Target-SQS

    Bei Erfolg erstellt der Befehl die Amazon SQS SQS-Warteschlange und gibt die folgende Ausgabe zurück:

    {
        "Stacks": [
            {
                "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/Scheduler-Target-SQS/1d2af345-a121-12eb-abc1-012e34567890",
                "StackName": "Scheduler-Target-SQS",
                "CreationTime": "2022-03-17T16:21:29.442000+00:00",
                "RollbackConfiguration": {},
                "StackStatus": "CREATE_COMPLETE",
                "DisableRollback": false,
                "NotificationARNs": [],
                "Outputs": [
                    {
                        "OutputKey": "QueueName",
                        "OutputValue": "MyQueue",
                        "Description": "The name of the queue"
                    },
                    {
                        "OutputKey": "QueueARN",
                        "OutputValue": "arn:aws:sqs:us-west-2:123456789012:MyQueue",
                        "Description": "The ARN of the queue"
                    },
                    {
                        "OutputKey": "QueueURL",
                        "OutputValue": "https://sqs.us-west-2.amazonaws.com/123456789012/MyQueue",
                        "Description": "The URL of the queue"
                    }
                ],
                "Tags": [],
                "EnableTerminationProtection": false,
                "DriftInformation": {
                    "StackDriftStatus": "NOT_CHECKED"
                }
            }
        ]
    }

    Später in diesem Handbuch werden Sie den Wert für verwenden, QueueARN um die Warteschlange als Ziel für EventBridge Scheduler einzurichten.

Als nächstes

Nachdem Sie den Einrichtungsschritt abgeschlossen haben, verwenden Sie den Leitfaden Erste Schritte, um Ihren ersten EventBridge Scheduler-Scheduler zu erstellen und ein Ziel aufzurufen.