Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Untuk menggunakan federasi identitas web, aplikasi Anda harus mengambil IAM peran yang Anda buat. Sejak saat itu, aplikasi menghormati kebijakan akses yang Anda lampirkan pada peran tersebut.
Saat runtime, jika aplikasi Anda menggunakan federasi identitas web, aplikasi harus mengikuti langkah-langkah berikut:
-
Autentikasi dengan penyedia identitas pihak ketiga. Aplikasi Anda harus memanggil penyedia identitas menggunakan antarmuka yang mereka sediakan. Cara yang tepat di mana Anda mengautentikasi pengguna bergantung pada penyedia dan pada platform apa aplikasi Anda berjalan. Biasanya, jika pengguna belum masuk, penyedia identitas berperan untuk menampilkan halaman masuk untuk penyedia tersebut.
Setelah penyedia identitas mengautentikasi pengguna, penyedia mengembalikan token identitas web ke aplikasi Anda. Format token ini bergantung pada penyedia, tetapi biasanya berupa string karakter yang sangat panjang.
-
Dapatkan kredensi AWS keamanan sementara. Untuk melakukan ini, aplikasi Anda mengirimkan permintaan
AssumeRoleWithWebIdentity
untuk AWS Security Token Service (AWS STS). Permintaan ini berisi hal berikut ini:-
Token identitas web dari langkah sebelumnya
-
ID aplikasi dari penyedia identitas
-
Nama Sumber Daya Amazon (ARN) dari IAM peran yang Anda buat untuk penyedia identitas ini untuk aplikasi ini
AWS STS mengembalikan satu set kredensi AWS keamanan yang kedaluwarsa setelah jangka waktu tertentu (3.600 detik, secara default).
Berikut ini adalah sampel permintaan dan respons dari tindakan
AssumeRoleWithWebIdentity
dalam AWS STS. Token identitas web diperoleh dari penyedia identitas Login with Amazon.GET / HTTP/1.1 Host: sts.amazonaws.com Content-Type: application/json; charset=utf-8 URL: https://sts.amazonaws.com/?ProviderId=www.amazon.com &DurationSeconds=900&Action=AssumeRoleWithWebIdentity &Version=2011-06-15&RoleSessionName=web-identity-federation &RoleArn=arn:aws:iam::123456789012:role/GameRole &WebIdentityToken=Atza|IQEBLjAsAhQluyKqyBiYZ8-kclvGTYM81e...(remaining characters omitted)
<AssumeRoleWithWebIdentityResponse xmlns="https://sts.amazonaws.com/doc/2011-06-15/"> <AssumeRoleWithWebIdentityResult> <SubjectFromWebIdentityToken>amzn1.account.AGJZDKHJKAUUSW6C44CHPEXAMPLE</SubjectFromWebIdentityToken> <Credentials> <SessionToken>AQoDYXdzEMf//////////wEa8AP6nNDwcSLnf+cHupC...(remaining characters omitted)</SessionToken> <SecretAccessKey>8Jhi60+EWUUbbUShTEsjTxqQtM8UKvsM6XAjdA==</SecretAccessKey> <Expiration>2013-10-01T22:14:35Z</Expiration> <AccessKeyId>06198791C436IEXAMPLE</AccessKeyId> </Credentials> <AssumedRoleUser> <Arn>arn:aws:sts::123456789012:assumed-role/GameRole/web-identity-federation</Arn> <AssumedRoleId>AROAJU4SA2VW5SZRF2YMG:web-identity-federation</AssumedRoleId> </AssumedRoleUser> </AssumeRoleWithWebIdentityResult> <ResponseMetadata> <RequestId>c265ac8e-2ae4-11e3-8775-6969323a932d</RequestId> </ResponseMetadata> </AssumeRoleWithWebIdentityResponse>
-
-
Akses AWS sumber daya. Respons dari AWS STS berisi informasi yang dibutuhkan aplikasi Anda untuk mengakses sumber daya DynamoDB:
-
Bidang
AccessKeyID
,SecretAccessKey
, danSessionToken
berisi kredensial keamanan yang valid hanya untuk pengguna dan aplikasi ini. -
Bidang
Expiration
menandakan batas waktu untuk kredensial ini, setelah itu mereka tidak lagi valid. -
AssumedRoleId
Kolom berisi nama IAM peran khusus sesi yang telah diasumsikan oleh aplikasi. Aplikasi menghormati kontrol akses dalam dokumen IAM kebijakan selama sesi ini berlangsung. -
SubjectFromWebIdentityToken
Kolom berisi ID unik yang muncul dalam variabel IAM kebijakan untuk penyedia identitas khusus ini. Berikut ini adalah variabel IAM kebijakan untuk penyedia yang didukung, dan beberapa contoh nilai untuk mereka:Variabel Kebijakan Nilai Contoh ${www.amazon.com:user_id}
amzn1.account.AGJZDKHJKAUUSW6C44CHPEXAMPLE
${graph.facebook.com:id}
123456789
${accounts.google.com:sub}
123456789012345678901
-
Misalnya IAM kebijakan di mana variabel kebijakan ini digunakan, lihatKebijakan Contoh: Menggunakan ketentuan untuk kontrol parameter terperinci.
Untuk informasi selengkapnya tentang cara AWS STS menghasilkan kredenal akses sementara, lihat Meminta Kredensial Keamanan Sementara di Panduan Pengguna. IAM