Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memahami token akses
Token akses kolam pengguna berisi klaim tentang pengguna yang diautentikasi, daftar kelompok pengguna, dan daftar cakupan. Tujuan dari token akses adalah untuk mengotorisasi API operasi. Kumpulan pengguna Anda menerima token akses untuk mengotorisasi operasi layanan mandiri pengguna. Misalnya, Anda dapat menggunakan token akses untuk memberikan akses pengguna Anda untuk menambah, mengubah, atau menghapus atribut pengguna.
Dengan cakupan OAuth 2.0
Token akses pengguna Anda adalah izin untuk meminta informasi lebih lanjut tentang atribut pengguna Anda dariuserInfo titik akhir. Token akses pengguna Anda juga merupakan izin untuk membaca dan menulis atribut pengguna. Tingkat akses ke atribut yang diberikan token akses Anda bergantung pada izin yang Anda tetapkan ke klien aplikasi Anda, dan cakupan yang Anda berikan dalam token.
Token akses adalah Token JSON Web (JWT)kid
) tidak akan cocok dengan nilai kid
klaim dalam token ID dari sesi pengguna yang sama. Dalam kode aplikasi Anda, verifikasi token ID dan akses token secara independen. Jangan percaya klaim dalam token akses sampai Anda memverifikasi tanda tangan. Untuk informasi selengkapnya, lihat Memverifikasi Token JSON Web. Anda dapat mengatur kedaluwarsa token akses ke nilai apa pun antara 5 menit dan 1 hari. Anda dapat menetapkan nilai ini per klien aplikasi.
penting
Untuk token akses dan ID, jangan tentukan minimal kurang dari satu jam jika Anda menggunakan UI yang dihosting. Amazon Cognito HosteDui menggunakan cookie yang berlaku selama satu jam. Jika Anda memasukkan minimum kurang dari satu jam, Anda tidak akan mendapatkan waktu kedaluwarsa yang lebih rendah.
Akses header token
Header berisi dua lembar informasi: ID kunci (kid
), dan algoritme (alg
).
{ "kid" : "1234example=" "alg" : "RS256", }
kid
-
ID kunci. Nilainya menunjukkan kunci yang digunakan untuk mengamankan Tanda Tangan JSON Web (JWS) token. Anda dapat melihat kunci penandatanganan kumpulan pengguna IDs di
jwks_uri
titik akhir.Untuk informasi selengkapnya tentang
kid
parameter, lihat parameter header Key identifier (kid). alg
-
Algoritma kriptografi yang digunakan Amazon Cognito untuk mengamankan token akses. Kumpulan pengguna menggunakan algoritma RS256 kriptografi, yang merupakan RSA tanda tangan dengan SHA -256.
Untuk informasi selengkapnya tentang
alg
parameter, lihat Parameter header Algorithm (alg).
Akses muatan default token
Ini adalah muatan sampel dari token akses. Untuk informasi lebih lanjut, lihat JWTklaim
<header>
. { "sub":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "device_key": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "cognito:groups":[ "testgroup" ], "iss":"https://cognito-idp.us-west-2.amazonaws.com/us-west-2_example", "version":2, "client_id":"xxxxxxxxxxxxexample", "origin_jti":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "event_id":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "token_use":"access", "scope":"phone openid profile resourceserver.1/appclient2 email", "auth_time":1676313851, "exp":1676317451, "iat":1676313851, "jti":"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "username":"my-test-user" } .<token signature>
sub
-
Pengenal unik (UUID), atau subjek, untuk pengguna yang diautentikasi. Nama pengguna mungkin tidak unik di kumpulan pengguna Anda.
sub
Klaim adalah cara terbaik untuk mengidentifikasi pengguna tertentu. cognito:groups
-
Array nama grup kumpulan pengguna yang memiliki pengguna Anda sebagai anggota.
iss
-
Penyedia identitas yang mengeluarkan token. Klaim memiliki format berikut.
https://cognito-idp.
<Region>
.amazonaws.com/<your user pool ID>
client_id
-
Klien aplikasi kumpulan pengguna yang mengautentikasi pengguna Anda. Amazon Cognito memberikan nilai yang sama dalam klaim token ID.
aud
origin_jti
-
Pengidentifikasi pencabutan token yang terkait dengan token penyegaran pengguna Anda. Amazon Cognito mereferensikan
origin_jti
klaim ketika memeriksa apakah Anda mencabut token pengguna Anda dengan Cabut titik akhir atau operasi. RevokeTokenAPI Saat Anda mencabut token, Amazon Cognito membatalkan semua token akses dan ID dengan nilai yang sama.origin_jti
token_use
-
Tujuan token yang dimaksudkan. Dalam token akses, nilainya adalah
access
. scope
-
Daftar cakupan OAuth 2.0 yang menentukan akses apa yang disediakan token. Token dari Titik akhir token dapat berisi cakupan apa pun yang didukung klien aplikasi Anda. Token dari API login Amazon Cognito hanya berisi ruang lingkup.
aws.cognito.signin.user.admin
auth_time
-
Waktu otentikasi, dalam format waktu Unix, bahwa pengguna Anda menyelesaikan otentikasi.
exp
-
Waktu kedaluwarsa, dalam format waktu Unix, token pengguna Anda kedaluwarsa.
iat
-
Waktu yang dikeluarkan, dalam format waktu Unix, Amazon Cognito mengeluarkan token pengguna Anda.
jti
-
Pengidentifikasi unik dari. JWT
username
-
Nama pengguna pengguna Anda di kolam pengguna Anda.
Sumber daya lainnya
Tanda tangan token akses
Tanda tangan token akses dihitung berdasarkan header dan payload JWT token. Saat digunakan di luar aplikasi di web AndaAPIs, Anda harus selalu memverifikasi tanda tangan ini sebelum menerima token. Untuk informasi selengkapnya, lihat Memverifikasi Token JSON Web.