View a markdown version of this page

Menyiapkan Amazon EventBridge Scheduler - EventBridge Penjadwal

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menyiapkan Amazon EventBridge Scheduler

Sebelum Anda dapat menggunakan EventBridge Scheduler, Anda harus menyelesaikan langkah-langkah berikut.

Daftar untuk AWS

Mendaftar untuk Akun AWS

Untuk memulai AWS, Anda membutuhkan Akun AWS. Untuk informasi tentang membuat Akun AWS, lihat Memulai dengan Akun AWS di Panduan AWS Account Management Referensi.

Gunakan kebijakan terkelola

Setelah menyiapkan AWS akun dan pengguna administratif, sebaiknya buat pengguna, grup, atau peran terpisah hanya dengan izin yang diperlukan untuk menggunakan EventBridge Scheduler. EventBridge Scheduler mendukung kebijakan terkelola berikut untuk kasus penggunaan umum.

  • AmazonEventBridgeSchedulerFullAccess — Memberikan akses penuh ke EventBridge Scheduler menggunakan konsol dan API.

  • AmazonEventBridgeSchedulerReadOnlyAccess — Memberikan akses hanya-baca ke Scheduler. EventBridge

Anda dapat melampirkan kebijakan terkelola ini ke kepala sekolah IAM Anda. Untuk informasi selengkapnya tentang mengelola akses ke EventBridge Scheduler menggunakan kebijakan IAM berbasis identitas, lihat. Menggunakan kebijakan berbasis identitas di Scheduler EventBridge

Mengatur peran eksekusi

Peran eksekusi adalah peran IAM yang diasumsikan oleh EventBridge Scheduler untuk berinteraksi dengan orang lain Layanan AWS atas nama Anda. Anda melampirkan kebijakan izin ke peran ini untuk memberikan EventBridge Scheduler akses ke target pemanggilan.

Anda juga dapat membuat peran eksekusi baru saat menggunakan konsol untuk membuat jadwal baru. Jika Anda menggunakan konsol, EventBridge Scheduler membuat peran atas nama Anda dengan izin berdasarkan target yang Anda pilih. Saat EventBridge Scheduler membuat peran untuk Anda, kebijakan kepercayaan peran tersebut mencakup kunci kondisi yang membatasi prinsipal mana yang dapat mengambil peran atas nama Anda. Ini menjaga terhadap potensi masalah keamanan wakil yang membingungkan.

Langkah-langkah berikut menjelaskan cara membuat peran eksekusi baru dan cara memberikan EventBridge Scheduler akses untuk memanggil target. Topik ini menjelaskan izin untuk target template populer. Untuk informasi tentang menambahkan izin untuk target lain, lihatMenggunakan target template di Scheduler EventBridge.

Untuk membuat peran eksekusi menggunakan AWS CLI
  1. Salin kebijakan JSON asumsi peran berikut dan simpan secara lokal sebagai. Scheduler-Execution-Role.json Kebijakan kepercayaan ini memungkinkan EventBridge Scheduler untuk mengambil peran atas nama Anda.

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

    Untuk mengatur peran eksekusi dalam lingkungan produksi, kami merekomendasikan untuk menerapkan perlindungan tambahan untuk mencegah masalah wakil yang membingungkan. Untuk informasi selengkapnya dan kebijakan contoh, lihatPencegahan Deputi Bingung di EventBridge Scheduler.

  2. Dari AWS Command Line Interface (AWS CLI), masukkan perintah berikut untuk membuat peran baru. Ganti SchedulerExecutionRole dengan nama yang ingin Anda berikan peran ini.

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

    Jika berhasil, Anda akan melihat output berikut:

    {
        "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. Untuk membuat kebijakan baru yang memungkinkan EventBridge Scheduler memanggil target, pilih salah satu target umum berikut. Salin kebijakan izin JSON dan simpan secara lokal sebagai .json file.

    Amazon SQS – SendMessage

    Berikut ini memungkinkan EventBridge Scheduler untuk memanggil sqs:SendMessage tindakan pada semua antrian Amazon SQS di akun Anda.

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

    Berikut ini memungkinkan EventBridge Scheduler untuk memanggil sns:Publish tindakan pada semua topik Amazon SNS di akun Anda.

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

    Berikut ini memungkinkan EventBridge Scheduler untuk memanggil lambda:InvokeFunction tindakan pada semua fungsi Lambda di akun Anda.

    JSON
    JSON
    { "Version":"2012-10-17", "Statement": [ { "Action": [ "lambda:InvokeFunction" ], "Effect": "Allow", "Resource": "*" } ] }
  4. Jalankan perintah berikut untuk membuat kebijakan izin baru. Ganti PolicyName dengan nama yang ingin Anda berikan pada kebijakan ini.

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

    Jika berhasil, Anda akan melihat output berikut. Perhatikan kebijakan ARN. Anda menggunakan ARN ini di langkah berikutnya untuk melampirkan kebijakan ke peran eksekusi kami.

    {
        "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. Jalankan perintah berikut untuk melampirkan kebijakan ke peran eksekusi Anda. Ganti your-policy-arn dengan ARN kebijakan yang Anda buat di langkah sebelumnya. Ganti SchedulerExecutionRole dengan nama peran eksekusi Anda.

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

    attach-role-policyOperasi tidak mengembalikan respons pada baris perintah.

Siapkan target

Sebelum Anda membuat jadwal EventBridge Scheduler, Anda memerlukan setidaknya satu target agar jadwal Anda dapat dipanggil. Anda dapat menggunakan AWS sumber daya yang ada, atau membuat yang baru. Langkah-langkah berikut menunjukkan cara membuat antrean Amazon SQS standar baru dengan. CloudFormation

Untuk membuat antrean Amazon SQS baru
  1. Salin CloudFormation template JSON berikut dan simpan secara lokal sebagai. 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. Dari AWS CLI, jalankan perintah berikut untuk membuat CloudFormation tumpukan dari Scheduler-Target-SQS.json template.

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

    Jika berhasil, Anda akan melihat output berikut:

    {
        "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/Scheduler-Target-SQS/1d2af345-a121-12eb-abc1-012e34567890"
    }
  3. Jalankan perintah berikut untuk melihat informasi ringkasan untuk CloudFormation tumpukan Anda. Informasi ini mencakup status tumpukan dan output yang ditentukan dalam template.

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

    Jika berhasil, perintah akan membuat antrean Amazon SQS dan mengembalikan output berikut:

    {
        "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"
                }
            }
        ]
    }

    Kemudian dalam panduan ini, Anda akan menggunakan nilai QueueARN untuk mengatur antrian sebagai target untuk EventBridge Scheduler.

Apa selanjutnya?

Setelah Anda menyelesaikan langkah penyiapan, gunakan panduan Memulai untuk membuat EventBridge penjadwal Penjadwal pertama Anda dan memanggil target.