Membuat dan mengelola Amazon EMR Serverless aplikasi dengan Step Functions - AWS Step Functions

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

Membuat dan mengelola Amazon EMR Serverless aplikasi dengan Step Functions

Pelajari cara membuat, memulai, menghentikan, dan menghapus aplikasi di EMR Serverless menggunakan Step Functions. Halaman ini mencantumkan status yang didukung APIs dan memberikan contoh Task status untuk melakukan kasus penggunaan umum.

Untuk mempelajari tentang mengintegrasikan dengan AWS layanan di Step Functions, lihat Integrasi layanan danMeneruskan parameter ke API layanan di Step Functions.

Fitur utama dari EMR Serverless integrasi yang dioptimalkan
  • Integrasi EMR Serverless layanan yang Dioptimalkan memiliki set khusus APIsyang membungkus yang mendasarinya EMR Serverless APIs. Karena penyesuaian ini, EMR Serverless integrasi yang dioptimalkan berbeda secara signifikan dari integrasi layanan AWS SDK.

  • Selain itu, EMR Serverless integrasi yang dioptimalkan mendukung pola Jalankan Tugas (.sync) integrasi.

  • Pola Tunggu Callback dengan Task Token integrasi tidak didukung.

EMR Serverlessintegrasi layanan APIs

Untuk AWS Step Functions berintegrasiEMR Serverless, Anda dapat menggunakan enam integrasi EMR Serverless layanan berikut APIs. Integrasi layanan ini APIs mirip dengan yang sesuai EMR Serverless APIs, dengan beberapa perbedaan di bidang yang diteruskan dan dalam tanggapan yang dikembalikan.

Tabel berikut menjelaskan perbedaan antara setiap API integrasi EMR Serverless layanan dan API yang sesuaiEMR Serverless.

EMR ServerlessAPI integrasi layanan EMR ServerlessAPI yang sesuai Perbedaan

BuatAplikasi

Membuat aplikasi.

EMR Serverlessterkait dengan jenis peran unik yang dikenal sebagai IAM peran terkait layanan. Agar createApplication dan createApplication.sync bekerja, Anda harus mengonfigurasi izin yang diperlukan untuk membuat AWS ServiceRoleForAmazonEMRServerless peran yang tertaut layanan. Untuk informasi selengkapnya tentang ini, termasuk pernyataan yang dapat Anda tambahkan ke kebijakan IAM izin, lihat Menggunakan peran terkait layanan untuk. EMR Serverless

CreateApplication Tidak ada

CreateApplication.sync

Membuat aplikasi.

CreateApplication

Tidak ada perbedaan antara permintaan dan tanggapan EMR Serverless API dan API integrasi EMR Serverless layanan. Namun, createApplication.sync menunggu aplikasi mencapai status. CREATED

MulaiAplikasi

Memulai aplikasi tertentu dan menginisialisasi kapasitas awal aplikasi jika dikonfigurasi.

StartApplication

Respons EMR Serverless API tidak berisi data apa pun, tetapi respons API integrasi EMR Serverless layanan menyertakan data berikut.

{ "ApplicationId": "string" }

StartApplication.sync

Memulai aplikasi tertentu dan menginisialisasi kapasitas awal jika dikonfigurasi.

StartApplication

Respons EMR Serverless API tidak berisi data apa pun, tetapi respons API integrasi EMR Serverless layanan menyertakan data berikut.

{ "ApplicationId": "string" }

Selain itu, startApplication.sync menunggu aplikasi mencapai status. STARTED

StopAplikasi

Menghentikan aplikasi tertentu dan melepaskan kapasitas awal jika dikonfigurasi. Semua pekerjaan yang dijadwalkan dan berjalan harus diselesaikan atau dibatalkan sebelum menghentikan aplikasi.

StopApplication

Respons EMR Serverless API tidak berisi data apa pun, tetapi respons API integrasi EMR Serverless layanan menyertakan data berikut.

{ "ApplicationId": "string" }

StopApplication.sync

Menghentikan aplikasi tertentu dan melepaskan kapasitas awal jika dikonfigurasi. Semua pekerjaan yang dijadwalkan dan berjalan harus diselesaikan atau dibatalkan sebelum menghentikan aplikasi.

StopApplication

Respons EMR Serverless API tidak berisi data apa pun, tetapi respons API integrasi EMR Serverless layanan menyertakan data berikut.

{ "ApplicationId": "string" }

Selain itu, StopApplication.sync menunggu aplikasi mencapai status. STOPPED

HapusAplikasi

Menghapus aplikasi. Aplikasi harus dalam CREATED keadaan STOPPED atau agar dapat dihapus.

DeleteApplication

Respons EMR Serverless API tidak berisi data apa pun, tetapi respons API integrasi EMR Serverless layanan menyertakan data berikut.

{ "ApplicationId": "string" }

DeleteApplication.sync

Menghapus aplikasi. Aplikasi harus dalam CREATED keadaan STOPPED atau agar dapat dihapus.

DeleteApplication

Respons EMR Serverless API tidak berisi data apa pun, tetapi respons API integrasi EMR Serverless layanan menyertakan data berikut.

{ "ApplicationId": "string" }

Selain itu, StopApplication.sync menunggu aplikasi mencapai status. TERMINATED

startJobRun

Memulai menjalankan pekerjaan.

StartJobRun Tidak ada

startJobRun.sinkronisasi

Memulai menjalankan pekerjaan.

StartJobRun

Tidak ada perbedaan antara permintaan dan tanggapan EMR Serverless API dan API integrasi EMR Serverless layanan. Namun, startJobRun.sync menunggu aplikasi mencapai status. SUCCESS

cancelJobRun

Membatalkan menjalankan pekerjaan.

CancelJobRun Tidak ada

cancelJobRun.sinkronisasi

Membatalkan menjalankan pekerjaan.

CancelJobRun

Tidak ada perbedaan antara permintaan dan tanggapan EMR Serverless API dan API integrasi EMR Serverless layanan. Namun, cancelJobRun.sync menunggu aplikasi mencapai status. CANCELLED

Kasus penggunaan integrasi EMR Tanpa Server

Untuk integrasi EMR Serverless layanan yang Dioptimalkan, kami menyarankan Anda membuat satu aplikasi, dan kemudian menggunakan aplikasi itu untuk menjalankan beberapa pekerjaan. Misalnya, dalam mesin negara tunggal, Anda dapat menyertakan beberapa startJobRunpermintaan, yang semuanya menggunakan aplikasi yang sama. Contoh Status alur kerja tugas status berikut menunjukkan kasus penggunaan untuk diintegrasikan EMR Serverless APIs denganStep Functions. Untuk informasi tentang kasus penggunaan lainnyaEMR Serverless, lihat Apa itu Amazon EMR Serverless.

Tip

Untuk menerapkan contoh mesin status yang terintegrasi dengan EMR Serverless untuk menjalankan beberapa pekerjaan;, lihat. Jalankan EMR Serverless pekerjaan

Untuk mempelajari tentang mengonfigurasi IAM izin saat menggunakan Step Functions dengan AWS layanan lain, lihat. Bagaimana Step Functions menghasilkan kebijakan IAM untuk layanan terintegrasi

Dalam contoh yang ditunjukkan dalam kasus penggunaan berikut, ganti italicized teks dengan informasi khusus sumber daya Anda. Misalnya, ganti yourApplicationId dengan ID EMR Serverless aplikasi Anda, seperti00yv7iv71inak893.

Membuat aplikasi

Contoh status Tugas berikut membuat aplikasi menggunakan API integrasi layanan createApplication.sync.

"Create_Application": { "Type": "Task", "Resource": "arn:aws:states:::emr-serverless:createApplication.sync", "Arguments": { "Name": "MyApplication", "ReleaseLabel": "emr-6.9.0", "Type": "SPARK" }, "End": true }

Memulai aplikasi

Contoh status Tugas berikut memulai aplikasi menggunakan API integrasi layanan startApplication.sync.

"Start_Application": { "Type": "Task", "Resource": "arn:aws:states:::emr-serverless:startApplication.sync", "Arguments": { "ApplicationId": "yourApplicationId" }, "End": true }

Hentikan aplikasi

Contoh status Tugas berikut menghentikan aplikasi menggunakan API integrasi layanan StopApplication.sync.

"Stop_Application": { "Type": "Task", "Resource": "arn:aws:states:::emr-serverless:stopApplication.sync", "Arguments": { "ApplicationId": "yourApplicationId" }, "End": true }

Menghapus sebuah aplikasi

Contoh status Tugas berikut menghapus aplikasi menggunakan API integrasi layanan DeleteApplication.sync.

"Delete_Application": { "Type": "Task", "Resource": "arn:aws:states:::emr-serverless:deleteApplication.sync", "Arguments": { "ApplicationId": "yourApplicationId" }, "End": true }

Memulai pekerjaan di aplikasi

Contoh status Tugas berikut memulai pekerjaan dalam aplikasi menggunakan API integrasi layanan startJobRun.sync.

"Start_Job": { "Type": "Task", "Resource": "arn:aws:states:::emr-serverless:startJobRun.sync", "Arguments": { "ApplicationId": "yourApplicationId", "ExecutionRoleArn": "arn:aws:iam::account-id:role/myEMRServerless-execution-role", "JobDriver": { "SparkSubmit": { "EntryPoint": "s3://<amzn-s3-demo-bucket>/sample.py", "EntryPointArguments": ["1"], "SparkSubmitParameters": "--conf spark.executor.cores=4 --conf spark.executor.memory=4g --conf spark.driver.cores=2 --conf spark.driver.memory=4g --conf spark.executor.instances=1" } } }, "End": true }

Batalkan pekerjaan di aplikasi

Contoh status Tugas berikut membatalkan pekerjaan dalam aplikasi menggunakan API integrasi layanan cancelJobRun.sync.

"Cancel_Job": { "Type": "Task", "Resource": "arn:aws:states:::emr-serverless:cancelJobRun.sync", "Arguments": { "ApplicationId": "{% $states.input.ApplicationId %}", "JobRunId": "{% $states.input.JobRunId %}" }, "End": true }

Kebijakan IAM untuk menelepon Amazon EMR Serverless

Saat Anda membuat mesin status menggunakan konsol, Step Functions secara otomatis membuat peran eksekusi untuk mesin status Anda dengan hak istimewa paling sedikit yang diperlukan. IAMPeran yang dihasilkan secara otomatis ini berlaku untuk Wilayah AWS di mana Anda membuat mesin status.

Contoh templat berikut menunjukkan cara AWS Step Functions menghasilkan kebijakan IAM berdasarkan sumber daya dalam definisi mesin status Anda. Untuk informasi selengkapnya, lihat Bagaimana Step Functions menghasilkan kebijakan IAM untuk layanan terintegrasi dan Temukan pola integrasi layanan di Step Functions.

Sebaiknya saat Anda membuat IAM kebijakan, jangan sertakan wildcard dalam kebijakan. Sebagai praktik terbaik keamanan, Anda harus mencatat kebijakan Anda sebanyak mungkin. Anda harus menggunakan kebijakan dinamis hanya jika parameter input tertentu tidak diketahui selama runtime.

Selanjutnya, pengguna administrator harus berhati-hati saat memberikan peran eksekusi pengguna non-administrator untuk menjalankan mesin status. Sebaiknya sertakan kebijakan PassRole dalam peran eksekusi jika Anda membuat kebijakan sendiri. Kami juga menyarankan Anda menambahkan kunci aws:SourceARN dan aws:SourceAccount konteks dalam peran eksekusi.

Contoh kebijakan IAM untuk integrasi EMR Tanpa Server dengan Step Functions

Contoh kebijakan IAM untuk CreateApplication

Berikut ini adalah contoh kebijakan IAM untuk mesin negara dengan CreateApplication Status alur kerja tugas status.

catatan

Anda perlu menentukan CreateServiceLinkedRole izin dalam kebijakan IAM Anda selama pembuatan aplikasi pertama di akun Anda. Setelah itu, Anda tidak perlu menambahkan izin ini. Untuk informasi tentang CreateServiceLinkedRole, lihat CreateServiceLinkedRoledi bagian https://docs.aws.amazon.com/IAM/ terbaru/ APIReference /.

Sumber daya statis dan dinamis untuk kebijakan berikut adalah sama.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:CreateApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/*" ] }, { "Effect": "Allow", "Action": [ "emr-serverless:GetApplication", "emr-serverless:DeleteApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule" ] }, { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::account-id:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWS ServiceRoleForAmazonEMRServerless*", "Condition": { "StringLike": { "iam:AWSServiceName": "ops.emr-serverless.amazonaws.com" } } } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:CreateApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/*" ] }, { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::account-id:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWS ServiceRoleForAmazonEMRServerless*", "Condition": { "StringLike": { "iam:AWSServiceName": "ops.emr-serverless.amazonaws.com" } } } ] }

Contoh kebijakan IAM untuk StartApplication

Sumber daya statis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya statis saat Anda menggunakan mesin status dengan StartApplication Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StartApplication", "emr-serverless:GetApplication", "emr-serverless:StopApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StartApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]" ] } ] }
Sumber daya dinamis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya dinamis saat Anda menggunakan mesin status dengan StartApplication Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StartApplication", "emr-serverless:GetApplication", "emr-serverless:StopApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StartApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] } ] }

Contoh kebijakan IAM untuk StopApplication

Sumber daya statis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya statis saat Anda menggunakan mesin status dengan StopApplication Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StopApplication", "emr-serverless:GetApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StopApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]" ] } ] }
Sumber daya dinamis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya dinamis saat Anda menggunakan mesin status dengan StopApplication Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StopApplication", "emr-serverless:GetApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StopApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] } ] }

Contoh kebijakan IAM untuk DeleteApplication

Sumber daya statis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya statis saat Anda menggunakan mesin status dengan DeleteApplication Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:DeleteApplication", "emr-serverless:GetApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:DeleteApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]" ] } ] }
Sumber daya dinamis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya dinamis saat Anda menggunakan mesin status dengan DeleteApplication Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:DeleteApplication", "emr-serverless:GetApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessApplicationRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:DeleteApplication" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] } ] }

Contoh kebijakan IAM untuk StartJobRun

Sumber daya statis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya statis saat Anda menggunakan mesin status dengan StartJobRun Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StartJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": [ "[[jobExecutionRoleArn]]" ], "Condition": { "StringEquals": { "iam:PassedToService": "emr-serverless.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "emr-serverless:GetJobRun", "emr-serverless:CancelJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]/jobruns/*" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessJobRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StartJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": [ "[[jobExecutionRoleArn]]" ], "Condition": { "StringEquals": { "iam:PassedToService": "emr-serverless.amazonaws.com" } } } ] }
Sumber daya dinamis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya dinamis saat Anda menggunakan mesin status dengan StartJobRun Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StartJobRun", "emr-serverless:GetJobRun", "emr-serverless:CancelJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": [ "[[jobExecutionRoleArn]]" ], "Condition": { "StringEquals": { "iam:PassedToService": "emr-serverless.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessJobRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:StartJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": [ "[[jobExecutionRoleArn]]" ], "Condition": { "StringEquals": { "iam:PassedToService": "emr-serverless.amazonaws.com" } } } ] }

Contoh kebijakan IAM untuk CancelJobRun

Sumber daya statis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya statis saat Anda menggunakan mesin status dengan CancelJobRun Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:CancelJobRun", "emr-serverless:GetJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]/jobruns/[[jobRunId]]" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessJobRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:CancelJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/[[applicationId]]/jobruns/[[jobRunId]]" ] } ] }
Sumber daya dinamis

Berikut ini adalah contoh kebijakan IAM untuk sumber daya dinamis saat Anda menggunakan mesin status dengan CancelJobRun Status alur kerja tugas status.

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:CancelJobRun", "emr-serverless:GetJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:region:account-id:rule/StepFunctionsGetEventsForEMRServerlessJobRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-serverless:CancelJobRun" ], "Resource": [ "arn:aws:emr-serverless:region:account-id:/applications/*" ] } ] }