Mengotorisasi aplikasi Anda untuk mengirim data ke AWS melalui CloudWatch RUM - Amazon CloudWatch

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

Mengotorisasi aplikasi Anda untuk mengirim data ke AWS melalui CloudWatch RUM

Untuk menggunakannya CloudWatch RUM, aplikasi Anda harus memiliki otorisasi.

Anda memiliki tiga opsi untuk mengatur otorisasi:

  • Mari CloudWatch RUM buat kumpulan identitas Amazon Cognito baru untuk aplikasi. Metode ini membutuhkan usaha paling sedikit untuk mengatur. Ini adalah opsi default.

    Kolam identitas akan berisi identitas yang tidak diautentikasi. Ini memungkinkan klien CloudWatch RUM web untuk mengirim data CloudWatch RUM tanpa mengautentikasi pengguna aplikasi.

    Kumpulan identitas Amazon Cognito memiliki peran terlampirIAM. Identitas Amazon Cognito yang tidak diautentikasi memungkinkan klien web untuk mengambil IAM peran yang diizinkan untuk mengirim data. CloudWatch RUM

  • Gunakan kolam identitas Amazon Cognito yang ada. Dalam hal ini, Anda juga harus memodifikasi IAM peran yang dilampirkan ke kumpulan identitas. Gunakan opsi ini untuk kumpulan identitas yang mendukung pengguna yang tidak diautentikasi. Anda dapat menggunakan kumpulan identitas hanya dari Wilayah yang sama.

  • Gunakan autentikasi dari penyedia identitas yang sudah ada yang telah Anda atur. Dalam hal ini, Anda harus mendapatkan kredensil dari penyedia identitas dan aplikasi Anda harus meneruskan kredensil ini ke klien web. RUM

    Gunakan opsi ini untuk kumpulan identitas yang hanya mendukung pengguna yang diautentikasi.

Bagian berikut mencakup detail lebih lanjut tentang opsi ini.

CloudWatch RUMmembuat kumpulan identitas Amazon Cognito baru

Ini adalah opsi paling sederhana untuk diatur, dan jika Anda memilih ini, tidak diperlukan langkah pengaturan lebih lanjut. Anda harus memiliki izin administratif untuk menggunakan opsi ini. Untuk informasi selengkapnya, lihat IAMkebijakan untuk digunakan CloudWatch RUM.

Dengan opsi ini, CloudWatch RUM buat sumber daya berikut:

  • Sebuah kolam identitas Amazon Cognito baru

  • Identitas Amazon Cognito yang tidak diautentikasi. Ini memungkinkan klien RUM web untuk mengambil IAM peran tanpa mengautentikasi pengguna aplikasi.

  • IAMPeran yang akan diasumsikan oleh klien RUM web. IAMKebijakan yang dilampirkan pada peran ini memungkinkannya menggunakan sumber daya monitor aplikasi PutRumEvents API dengan. Dengan kata lain, ini memungkinkan klien RUM web untuk mengirim data keRUM.

Klien RUM web menggunakan identitas Amazon Cognito untuk mendapatkan AWS kredensialnya. Bagian AWS kredensyal dikaitkan dengan peran tersebut. IAM IAMPeran tersebut diizinkan untuk digunakan PutRumEvents dengan AppMonitor sumber daya.

Amazon Cognito mengirimkan token keamanan yang diperlukan untuk memungkinkan aplikasi Anda mengirim data ke. CloudWatch RUM Cuplikan JavaScript kode yang CloudWatch RUM dihasilkan mencakup baris berikut untuk mengaktifkan otentikasi.

{ identityPoolId: [identity pool id], // e.g., 'us-west-2:EXAMPLE4a-66f6-4114-902a-EXAMPLEbad7' } );

Gunakan kolam identitas Amazon Cognito yang ada

Jika Anda memilih untuk menggunakan kumpulan identitas Amazon Cognito yang ada, Anda menentukan kumpulan identitas saat menambahkan aplikasi. CloudWatch RUM Kolam harus mendukung pengaktifan ke identitas yang tidak diautentikasi. Anda dapat menggunakan kumpulan identitas hanya dari Wilayah yang sama.

Anda juga harus menambahkan izin berikut ke IAM kebijakan yang dilampirkan pada IAM peran yang terkait dengan kumpulan identitas ini.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:[region]:[accountid]:appmonitor/[app monitor name]" } ] }

Amazon Cognito kemudian akan mengirim token keamanan yang diperlukan untuk memungkinkan aplikasi Anda mengakses. CloudWatch RUM

Penyedia pihak ketiga

Jika Anda memilih untuk menggunakan otentikasi pribadi dari penyedia pihak ketiga, Anda harus mendapatkan kredensi dari penyedia identitas dan meneruskannya ke AWS. Cara terbaik untuk melakukannya adalah dengan menggunakan vendor token keamanan. Anda dapat menggunakan vendor token keamanan apa pun, termasuk Amazon Cognito dengan AWS Security Token Service. Untuk informasi lebih lanjut tentang AWS STS Lihat Selamat Datang di AWS Security Token Service APIReferensi.

Jika Anda ingin menggunakan Amazon Cognito sebagai vendor token dalam skenario ini, Anda dapat mengonfigurasi Amazon Cognito agar berfungsi dengan penyedia autentikasi. Untuk informasi selengkapnya, silakan lihat Memulai Kolam Identitas Amazon Cognito (Gabungan Identitas).

Setelah mengonfigurasi Amazon Cognito untuk bekerja dengan penyedia identitas Anda, Anda juga perlu melakukan hal berikut ini:

  • Buat IAM peran dengan izin berikut. Aplikasi Anda akan menggunakan peran ini untuk mengakses AWS.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "rum:PutRumEvents", "Resource": "arn:aws:rum:[region]:[accountID]:appmonitor/[app monitor name]" } ] }
  • Tambahkan yang berikut ini ke aplikasi Anda agar dapat meneruskan kredensialnya dari penyedia Anda. CloudWatch RUM Masukkan baris sehingga berjalan setelah pengguna masuk ke aplikasi Anda dan aplikasi telah menerima kredensi yang akan digunakan untuk mengakses AWS.

    cwr('setAwsCredentials', {/* Credentials or CredentialProvider */});

Untuk informasi lebih lanjut tentang penyedia kredensi di AWS JavaScript SDK, lihat Menyetel kredensil di browser web di panduan pengembang v3 SDK untuk JavaScript, Menyetel kredensil di browser web di panduan pengembang v2 untuk SDK for JavaScript, dan @aws -sdk/credential-providers.

Anda juga dapat menggunakan SDK untuk klien CloudWatch RUM web untuk mengkonfigurasi metode otentikasi klien web. Untuk informasi selengkapnya tentang klien webSDK, lihat klien CloudWatch RUM web SDK.