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 memulainya AWS, Anda membutuhkan Akun AWS. Untuk informasi tentang membuat Akun AWS, lihat Mem ulai dengan an 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 Pen EventBridge jadwal. EventBridge Penjadwal mendukung kebijakan terkelola berikut untuk kasus penggunaan umum.

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

  • AmazonEventBridgeSchedulerReadOnlyAccess — Memberikan akses read-only ke EventBridge Scheduler.

Anda dapat melampirkan kebijakan terkelola ini ke prinsipal IAM Anda. Untuk informasi selengkapnya tentang mengelola akses ke Pen EventBridge jadwal menggunakan kebijakan IAM berbasis identitas, lihat. Menggunakan kebijakan berbasis identitas di Penjadwal EventBridge

Menyiapkan peran eksekusi

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

Anda juga dapat membuat peran eksekusi baru saat menggunakan konsol untuk membuat jadwal baru. Jika Anda menggunakan konsol, EventBridge Penjadwal membuat peran atas nama Anda dengan izin berdasarkan target yang Anda pilih. Saat EventBridge Penjadwal membuat peran untuk Anda, kebijakan kepercayaan peran mencakup kunci kondisi yang membatasi kepala sekolah 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 akses Sch EventBridge eduler untuk memanggil target. Topik ini menjelaskan izin untuk target templat 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 sebagaiScheduler-Execution-Role.json. Kebijakan kepercayaan ini memungkinkan EventBridge Penjadwal 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 menerapkan perlindungan tambahan untuk mencegah masalah wakil yang membingungkan. Untuk informasi selengkapnya dan contoh kebijakan, lihatPencegahan wakil yang 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 Penjadwal 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 Pen EventBridge jadwal 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 Penjadwal 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 Pen EventBridge jadwal 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 pada langkah selanjutnya 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 dari kebijakan yang Anda buat pada 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 EventBridge jadwal Scheduler, Anda memerlukan setidaknya satu target untuk dipanggil jadwal Anda. Anda dapat menggunakan AWS sumber daya yang ada, atau membuat yang baru. Langkah-langkah berikut menunjukkan cara membuat antrian Amazon SQS standar baru dengan CloudFormation.

Cara membuat antrian Amazon SQS baru
  1. Salin CloudFormation template JSON berikut dan simpan secara lokal sebagaiScheduler-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 membuat antrian 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 pengaturan, gunakan panduan Memulai untuk membuat penjadwal Pen EventBridge jadwal pertama Anda dan memanggil target.