IAMdan kunci konteks AWS STS kondisi - AWS Identity and Access Management

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

IAMdan kunci konteks AWS STS kondisi

Anda dapat menggunakan Condition elemen dalam JSON kebijakan untuk menguji nilai kunci yang disertakan dalam konteks permintaan semua AWS permintaan. Kunci-kunci ini menyediakan informasi tentang permintaannya sendiri atau sumber daya yang dirujuk oleh permintaan. Anda dapat memeriksa bahwa kunci telah menentukan nilai sebelum mengizinkan tindakan yang diminta oleh pengguna. Ini memberi Anda kontrol terperinci atas kapan pernyataan JSON kebijakan Anda cocok atau tidak cocok dengan permintaan yang masuk. Untuk informasi tentang cara menggunakan Condition elemen dalam JSON kebijakan, lihatIAMJSONelemen kebijakan: Condition.

Topik ini menjelaskan kunci yang ditentukan dan disediakan oleh IAM layanan (dengan iam: awalan) dan layanan AWS Security Token Service (AWS STS) (dengan sts: awalan). Beberapa AWS layanan lain juga menyediakan kunci khusus layanan yang relevan dengan tindakan dan sumber daya yang ditentukan oleh layanan tersebut. Untuk informasi selengkapnya, lihat Tindakan, Sumber Daya, dan Kunci Kondisi untuk AWS Layanan. Dokumentasi untuk layanan yang mendukung kunci kondisi sering kali memiliki informasi tambahan. Misalnya, untuk informasi tentang kunci yang dapat Anda gunakan dalam kebijakan untuk sumber daya Amazon S3, lihat Kunci Kebijakan Amazon S3 di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.

Kunci yang tersedia untuk IAM

Anda dapat menggunakan kunci kondisi berikut dalam kebijakan yang mengontrol akses ke IAM sumber daya:

saya: AssociatedResourceArn

Bekerja dengan ARNoperator.

Menentukan ARN sumber daya yang peran ini akan dikaitkan di layanan tujuan. Sumber daya biasanya dimiliki oleh layanan yang perannya diteruskan oleh prinsipal. Terkadang, sumber daya mungkin dimiliki oleh layanan ketiga. Misalnya, Anda dapat meneruskan peran ke Amazon EC2 Auto Scaling yang mereka gunakan pada instans AmazonEC2. Dalam hal ini, kondisinya akan cocok dengan EC2 instance Amazon. ARN

Kunci kondisi ini hanya berlaku untuk PassRoletindakan dalam kebijakan. Kondisi ini tidak dapat digunakan untuk membatasi tindakan lainnya.

penting

Ketika menggunakan iam:AssociatedResourceArn kondisi dalam kebijakan untuk membatasi PassRoletindakan, pertimbangan khusus berlaku jika kebijakan dimaksudkan untuk menentukan akses untuk tindakan tersebut AddRoleToInstanceProfile. Dalam hal ini, Anda tidak dapat menentukan Region atau ID instance dalam EC2 instanceARN. Nilai ARN haruslah arn:aws:ec2:*:CallerAccountId:instance/*. Menggunakan ARN nilai lain dapat menyebabkan hasil evaluasi yang tidak terduga.

Gunakan kunci kondisi ini dalam kebijakan berbasis identitas untuk mengizinkan entitas melewati peran, tetapi hanya jika peran tersebut dikaitkan dengan sumber daya yang ditentukan. Misalnya, Anda dapat mengizinkan IAM pengguna atau peran untuk meneruskan peran apa pun ke EC2 layanan Amazon untuk digunakan dengan instance di Akun AWS. IAMPengguna atau peran tidak akan diizinkan untuk meneruskan peran ke layanan lain.

{ "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "ec2.amazonaws.com" }, "ArnLike": { "iam:AssociatedResourceARN": [ "arn:aws:ec2:*:111122223333:instance/*" ] } } }
catatan

AWS layanan yang mendukung iam: PassedToService juga mendukung kunci kondisi ini.

saya: AWSServiceName

Bekerja dengan operator string.

Menentukan AWS layanan yang peran ini dilampirkan.

Dalam contoh ini, Anda mengizinkan entitas untuk membuat peran terkait layanan jika nama layanan adalah access-analyzer.amazonaws.com.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "access-analyzer.amazonaws.com" } } }] }
iam: FIDO -sertifikasi

Bekerja dengan operator string.

Memeriksa tingkat FIDO sertifikasi MFA perangkat pada saat pendaftaran kunci FIDO keamanan. Sertifikasi perangkat diambil dari FIDOAlliance Metadata Service (). MDS Jika status sertifikasi atau tingkat kunci FIDO keamanan Anda berubah, itu tidak akan diperbarui kecuali perangkat tidak terdaftar dan terdaftar lagi untuk mengambil informasi sertifikasi yang diperbarui.

Nilai yang mungkin dari L1, L1plus, L2, L2plus, L3, L3plus

Dalam contoh ini, Anda mendaftarkan kunci keamanan dan mengambil sertifikasi FIDO Level 1 plus untuk perangkat Anda.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Create" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Activate", "iam:FIDO-certification": "L1plus" } } } ] }
iam: FIDO - FIPS -140-2-sertifikasi

Bekerja dengan operator string.

Memeriksa MFA perangkat FIPS -140-2 tingkat sertifikasi validasi pada saat pendaftaran kunci keamanan. FIDO Sertifikasi perangkat diambil dari FIDOAlliance Metadata Service (). MDS Jika status sertifikasi atau tingkat kunci FIDO keamanan Anda berubah, itu tidak akan diperbarui kecuali perangkat tidak terdaftar dan terdaftar lagi untuk mengambil informasi sertifikasi yang diperbarui.

Nilai yang mungkin dari L1, L2, L3, L4

Dalam contoh ini, Anda mendaftarkan kunci keamanan dan mengambil sertifikasi FIPS -140-2 Level 2 untuk perangkat Anda.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Create" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Activate", "iam:FIDO-FIPS-140-2-certification": "L2" } } } ] }
iam: FIDO - FIPS -140-3-sertifikasi

Bekerja dengan operator string.

Memeriksa MFA perangkat FIPS -140-3 tingkat sertifikasi validasi pada saat pendaftaran kunci keamanan. FIDO Sertifikasi perangkat diambil dari FIDOAlliance Metadata Service (). MDS Jika status sertifikasi atau tingkat kunci FIDO keamanan Anda berubah, itu tidak akan diperbarui kecuali perangkat tidak terdaftar dan terdaftar lagi untuk mengambil informasi sertifikasi yang diperbarui.

Nilai yang mungkin dari L1, L2, L3, L4

Dalam contoh ini, Anda mendaftarkan kunci keamanan dan mengambil sertifikasi FIPS -140-3 Level 3 untuk perangkat Anda.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Create" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Activate", "iam:FIDO-FIPS-140-3-certification": "L3" } } } ] }
saya: RegisterSecurityKey

Bekerja dengan operator string.

Memeriksa status pemberdayaan MFA perangkat saat ini.

Nilai yang mungkin dari Create atauActivate.

Dalam contoh ini, Anda mendaftarkan kunci keamanan dan mengambil sertifikasi FIPS -140-3 Level 1 untuk perangkat Anda.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Create" } } }, { "Effect": "Allow", "Action": "iam:EnableMFADevice", "Resource": "*", "Condition": { "StringEquals": { "iam:RegisterSecurityKey" : "Activate", "iam:FIDO-FIPS-140-3-certification": "L1" } } } ] }
saya: OrganizationsPolicyId

Bekerja dengan operator string.

Memeriksa apakah kebijakan dengan AWS Organizations ID yang ditentukan cocok dengan kebijakan yang digunakan dalam permintaan. Untuk melihat contoh IAM kebijakan yang menggunakan kunci kondisi ini, lihatIAM: Melihat informasi layanan yang terakhir diakses untuk kebijakan Organizations.

saya: PassedToService

Bekerja dengan operator string.

Menentukan prinsipal layanan untuk peran yang dapat diteruskan. Kunci kondisi ini hanya berlaku untuk PassRoletindakan dalam kebijakan. Kondisi ini tidak dapat digunakan untuk membatasi tindakan lainnya.

Saat Anda menggunakan kunci kondisi ini dalam suatu kebijakan, tentukan layanan menggunakan prinsipal layanan. Prinsipal layanan adalah nama layanan yang dapat ditentukan dalam elemen Principal dari suatu kebijakan. Ini adalah format biasa: SERVICE_NAME_URL.amazonaws.com.

Anda dapat menggunakan iam:PassedToService untuk membatasi pengguna Anda sehingga mereka dapat meneruskan peran ke layanan tertentu. Misalnya, pengguna dapat membuat peran layanan yang dipercaya CloudWatch untuk menulis data log ke bucket Amazon S3 atas nama mereka. Kemudian pengguna harus memberlakukan kebijakan izin dan kebijakan kepercayaan pada peran layanan baru. Dalam hal ini, kebijakan kepercayaan harus menyebutkan cloudwatch.amazonaws.com dalam elemen Principal. Untuk melihat kebijakan yang memungkinkan pengguna meneruskan peran CloudWatch, lihatIAM: Lulus IAM peran ke AWS layanan tertentu.

Dengan menggunakan kunci kondisi ini, Anda dapat memastikan bahwa pengguna membuat peran layanan hanya untuk layanan yang Anda tentukan. Misalnya, jika pengguna dengan kebijakan sebelumnya mencoba membuat peran layanan untuk AmazonEC2, operasi akan gagal. Kegagalan terjadi karena pengguna tidak memiliki izin untuk meneruskan peran ke AmazonEC2.

Kadang-kadang Anda meneruskan peran ke layanan yang kemudian memberikan peran ke layanan lain. iam:PassedToService hanya mencakup layanan akhir yang mengasumsikan peran, bukan layanan perantara yang meneruskan peran.

catatan

Beberapa layanan tidak mendukung kunci kondisi ini.

saya: PermissionsBoundary

Bekerja dengan ARNoperator.

Memeriksa apakah kebijakan yang ditentukan dilampirkan sebagai batas izin pada sumber daya utama. IAM Untuk informasi selengkapnya, silakan lihat Batas izin untuk entitas IAM

IAM: Kebijakan ARN

Bekerja dengan ARNoperator.

Memeriksa Amazon Resource Name (ARN) dari kebijakan terkelola dalam permintaan yang melibatkan kebijakan terkelola. Untuk informasi selengkapnya, lihat Mengendalikan akses ke kebijakan.

saya:/ResourceTagkey-name

Bekerja dengan operator string.

Memeriksa apakah tanda yang dilampirkan ke sumber daya identitas (pengguna atau peran) cocok dengan nama dan nilai kunci yang ditentukan.

catatan

IAMdan AWS STS mendukung kunci iam:ResourceTag IAM kondisi dan kunci kondisi aws:ResourceTag global.

Anda dapat menambahkan atribut kustom ke IAM sumber daya dalam bentuk pasangan kunci-nilai. Untuk informasi selengkapnya tentang tag untuk IAM sumber daya, lihatTag untuk AWS Identity and Access Management sumber daya. Anda dapat menggunakan ResourceTag untuk mengontrol akses ke AWS sumber daya, termasuk IAM sumber daya. Namun, karena IAM tidak mendukung tag untuk grup, Anda tidak dapat menggunakan tag untuk mengontrol akses ke grup.

Contoh ini menunjukkan bagaimana Anda dapat membuat kebijakan berbasis identitas yang memungkinkan menghapus pengguna dengan tag. status=terminated Untuk menggunakan kebijakan ini, ganti italicized placeholder text dalam contoh kebijakan dengan informasi Anda sendiri. Lalu, ikuti petunjuk di buat kebijakan atau ubah kebijakan.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "iam:DeleteUser", "Resource": "*", "Condition": {"StringEquals": {"iam:ResourceTag/status": "terminated"}} }] }

Kunci yang tersedia untuk AWS OIDC federasi

Anda dapat menggunakan OIDC federasi untuk memberikan kredensi keamanan sementara kepada pengguna yang telah diautentikasi melalui penyedia identitas kompatibel OpenID Connect (IDP) ke penyedia identitas IAM OpenID Connect () di akun Anda. OIDC AWS Contoh penyedia tersebut termasuk GitHub, Amazon Cognito, Login with Amazon, dan Google. Token identitas dan token akses dari IDP Anda sendiri dapat digunakan, serta token akun layanan yang diberikan kepada beban kerja Amazon Elastic Kubernetes Service.

Anda dapat menggunakan kunci konteks AWS OIDC kondisi untuk menulis kebijakan yang membatasi akses pengguna federasi ke sumber daya yang terkait dengan penyedia, aplikasi, atau pengguna tertentu. Kunci ini biasanya digunakan dalam kebijakan kepercayaan untuk suatu peran. Tentukan kunci kondisi menggunakan nama OIDC penyedia (token.actions.githubusercontent.com) diikuti dengan klaim (:aud):token.actions.githubusercontent.com:aud.

Beberapa kunci kondisi OIDC federasi dapat digunakan dalam sesi peran untuk mengotorisasi akses sumber daya. Jika nilainya adalah Ya di kolom Tersedia dalam sesi, Anda dapat menggunakan kunci kondisi ini dalam kebijakan untuk menentukan pengguna yang diizinkan mengakses AWS layanan lain. Jika klaim tidak tersedia dalam sesi, kunci konteks OIDC kondisi hanya dapat digunakan dalam kebijakan kepercayaan peran untuk AssumeRoleWithWebIdentityotentikasi awal.

Pilih iDP Anda untuk melihat bagaimana klaim dari peta IDP Anda ke IAM mengkondisikan kunci konteks. AWS

Default

Default mencantumkan OIDC klaim standar dan cara mereka memetakan ke AWS STS mengkondisikan kunci konteks di AWS. Anda dapat menggunakan kunci ini untuk mengontrol akses ke sebuah peran. Untuk melakukan itu, bandingkan kunci AWS STS kondisi dengan nilai di kolom JWTklaim iDP. Gunakan pemetaan ini jika IDP Anda tidak tercantum dalam opsi tab.

GitHub Alur kerja tindakan dan Google adalah beberapa contoh IdPs yang menggunakan implementasi default dalam token OIDC JWT ID mereka.

AWS STS kunci kondisi Klaim JWT IDP Tersedia dalam sesi

amr

amr

Ya

aud

azp

Jika tidak ada nilai yang ditetapkanazp, kunci aud kondisi akan dipetakan ke aud klaim.

Ya

Email

Email

Tidak

oaud

aud

Tidak

sub

sub

Ya

Untuk informasi selengkapnya tentang menggunakan kunci konteks OIDC kondisi dengan GitHub, lihatMengkonfigurasi peran untuk penyedia GitHub OIDC identitas. Untuk informasi selengkapnya tentang kolom aud dan azp Google, lihat Panduan Google Identity Platform OpenID Connect.

amr

Bekerja dengan operator string. Kunci ini memiliki banyak nilai, artinya jika Anda mengujinya dalam suatu kebijakan yang menggunakan operator kumpulan kondisi.

Contoh: token.actions.githubusercontent.com:amr

Referensi Metode Otentikasi mencakup informasi login tentang pengguna. Kunci dapat berisi nilai-nilai berikut:

  • Jika pengguna tidak autentikasi, kunci hanya berisi unauthenticated.

  • Jika pengguna diautentikasi, kunci berisi nilai authenticated dan nama penyedia login yang digunakan dalam panggilan (accounts.google.com).

aud

Bekerja dengan operator string.

Contoh:

  • accounts.google.com:aud

  • token.actions.githubusercontent.com:aud

Gunakan tombol aud kondisi untuk memverifikasi bahwa audiens cocok dengan yang Anda tentukan dalam kebijakan. Anda dapat menggunakan kunci aud dengan sub kunci untuk penyedia identitas yang sama.

Kunci kondisi ini diatur dari bidang token berikut:

  • auduntuk OAuth 2.0 klien IDs Google aplikasi Anda, ketika azp bidang tidak disetel. Ketika azp bidang diatur, aud bidang cocok dengan kunci accounts.google.com:oaud kondisi.

  • azp jika kolom azp ditetapkan. Ini dapat terjadi untuk aplikasi hybrid di mana aplikasi web dan aplikasi Android memiliki ID klien Google OAuth 2.0 yang berbeda tetapi berbagi APIs proyek Google yang sama.

Ketika Anda menulis kebijakan menggunakan kunci kondisi accounts.google.com:aud, Anda harus mengetahui apakah aplikasi tersebut merupakan aplikasi hibrida yang menetapkan kolom azp tersebut atau bukan.

azpKolom Tidak Ditetapkan

Contoh kebijakan berikut bekerja untuk aplikasi non-hibrida yang tidak menetapkan kolom azp. Dalam hal ini, nilai kolom Token ID Google aud sesuai dengan nilai kunci kondisi accounts.google.com:aud dan accounts.google.com:oaud.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": {"Federated": "accounts.google.com"}, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "accounts.google.com:aud": "aud-value", "accounts.google.com:oaud": "aud-value", "accounts.google.com:sub": "sub-value" } } } ] }

Kumpulan Kolom azp

Contoh kebijakan berikut berfungsi untuk aplikasi non-hibrida yang tidak menetapkan kolom azp. Dalam hal ini, nilai kolom aud Token ID Google hanya sesuai dengan nilai kunci kondisi accounts.google.com:oaud. Nilai kolom azp sesuai dengan nilai kunci kondisi accounts.google.com:aud.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": {"Federated": "accounts.google.com"}, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "accounts.google.com:aud": "azp-value", "accounts.google.com:oaud": "aud-value", "accounts.google.com:sub": "sub-value" } } } ] }
email

Bekerja dengan operator string.

Contoh: accounts.google.com:email

Kunci kondisi ini memvalidasi alamat email pengguna. Nilai klaim ini mungkin tidak unik untuk akun ini dan dapat berubah seiring waktu, oleh karena itu Anda tidak boleh menggunakan nilai ini sebagai pengenal utama untuk memverifikasi catatan pengguna Anda.

oaud

Bekerja dengan operator string.

Contoh: accounts.google.com:oaud

Kunci ini menentukan audience (aud) lain yang dimaksudkan untuk token ID ini. Itu harus menjadi salah satu klien OAuth 2.0 IDs dari aplikasi Anda.

sub

Bekerja dengan operator string.

Contoh:

  • accounts.google.com:sub

  • token.actions.githubusercontent.com:sub

Gunakan kunci ini untuk memverifikasi bahwa subjek cocok dengan yang Anda tentukan dalam kebijakan. Anda dapat menggunakan kunci sub dengan kunci aud untuk penyedia identitas yang sama.

Dalam kebijakan kepercayaan peran berikut, kunci sub kondisi membatasi peran ke GitHib cabang bernamademo.

{ "Version": "2012-10-17", "Statement": [ "Condition": { "StringEquals": { "token.actions.githubusercontent.com:aud": "sts.amazonaws.com", "token.actions.githubusercontent.com:sub": "repo:octo-org/octo-repo:ref:refs/heads/demo" } } ] }
Amazon Cognito

Tab ini menjelaskan bagaimana Amazon Cognito memetakan OIDC klaim untuk AWS STS mengkondisikan kunci konteks di. AWS Anda dapat menggunakan kunci ini untuk mengontrol akses ke sebuah peran. Untuk melakukan itu, bandingkan kunci AWS STS kondisi dengan nilai di kolom JWTklaim iDP.

Untuk peran yang digunakan oleh Amazon Cognito, kunci ditentukan menggunakan cognito-identity.amazonaws.com diikuti oleh klaim.

Untuk informasi selengkapnya tentang pemetaan klaim kumpulan identitas, lihat Pemetaan penyedia default di Panduan Pengembang Amazon Cognito. Untuk informasi selengkapnya tentang pemetaan klaim kumpulan pengguna, lihat Menggunakan token ID di Panduan Pengembang Amazon Cognito.

AWS STS kunci kondisi Klaim JWT IDP Tersedia dalam sesi

amr

amr

Ya

aud

aud

Ya

oaud

aud

Tidak

sub

sub

Ya

amr

Bekerja dengan operator string. Kunci ini memiliki banyak nilai, artinya jika Anda mengujinya dalam suatu kebijakan yang menggunakan operator kumpulan kondisi.

Contoh - cognito-identity.amazonaws.com:amr

Referensi Metode Otentikasi mencakup informasi login tentang pengguna. Kunci dapat berisi nilai-nilai berikut:

  • Jika pengguna tidak autentikasi, kunci hanya berisi unauthenticated.

  • Jika pengguna diautentikasi, kunci berisi nilai authenticated dan nama penyedia login yang digunakan dalam panggilan (cognito-identity.amazonaws.com).

Sebagai contoh, kondisi berikut dalam kebijakan kepercayaan untuk peran Amazon Cognito menguji apakah pengguna tidak diautentikasi.

"Condition": { "StringEquals": { "cognito-identity.amazonaws.com:aud": "us-east-2:identity-pool-id" }, "ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "unauthenticated" } }
aud

Bekerja dengan operator string.

Contoh - cognito-identity.amazonaws.com:aud

Klien aplikasi kumpulan pengguna yang mengautentikasi pengguna Anda. Amazon Cognito memberikan nilai yang sama dalam klaim token akses. client_id

oaud

Bekerja dengan operator string.

Contoh - cognito-identity.amazonaws.com:oaud

Klien aplikasi kumpulan pengguna yang mengautentikasi pengguna Anda. Amazon Cognito memberikan nilai yang sama dalam klaim token akses. client_id

sub

Bekerja dengan operator string.

Contoh - cognito-identity.amazonaws.com: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. Anda dapat menggunakan kunci sub dengan kunci aud untuk penyedia identitas yang sama.

{ "Version": "2012-10-17", "Statement": [ "Condition": { "StringEquals": { "cognito-identity.amazonaws.com:aud": "us-east-1:12345678-abcd-abcd-abcd-123456790ab", "cognito-identity.amazonaws.com:sub": [ "us-east-1:12345678-1234-1234-1234-123456790ab", "us-east-1:98765432-1234-1234-1243-123456790ab" ] } } ] }
Login with Amazon

Tab ini menjelaskan bagaimana Login with Amazon maps OIDC mengklaim AWS STS mengkondisikan kunci konteks di AWS. Anda dapat menggunakan kunci ini untuk mengontrol akses ke sebuah peran. Untuk melakukan itu, bandingkan kunci AWS STS kondisi dengan nilai di kolom JWTklaim iDP.

AWS STS kunci kondisi Klaim JWT IDP Tersedia dalam sesi

app_id

ID Aplikasi

Ya

sub

ID Pengguna

Ya

user_id

ID Pengguna

Ya

app_id

Bekerja dengan operator string.

Contoh - www.amazon.com:app_id

Kunci ini menentukan konteks audiens yang cocok dengan aud bidang yang digunakan oleh penyedia identitas lainnya.

sub

Bekerja dengan operator string.

Contoh - www.amazon.com:sub

Kunci ini memverifikasi bahwa ID pengguna cocok dengan yang Anda tentukan dalam kebijakan. Anda dapat menggunakan kunci sub dengan kunci aud untuk penyedia identitas yang sama.

user_id

Bekerja dengan operator string.

Contoh - www.amazon.com:user_id

Kunci ini menentukan konteks audiens yang cocok dengan aud bidang yang digunakan oleh penyedia identitas lain.Anda dapat menggunakan user_id kunci dengan id kunci untuk penyedia identitas yang sama.

Facebook

Tab ini menjelaskan bagaimana Facebook memetakan OIDC klaim untuk AWS STS mengkondisikan kunci konteks di AWS. Anda dapat menggunakan kunci ini untuk mengontrol akses ke sebuah peran. Untuk melakukan itu, bandingkan kunci AWS STS kondisi dengan nilai di kolom JWTklaim iDP.

AWS STS kunci kondisi Klaim JWT IDP Tersedia dalam sesi

app_id

ID Aplikasi

Ya

id

id

Ya

app_id

Bekerja dengan operator string.

Contoh - graph.facebook.com:app_id

Kunci ini memverifikasi bahwa konteks audiens cocok dengan aud bidang yang digunakan oleh penyedia identitas lain.

id

Bekerja dengan operator string.

Contoh - graph.facebook.com:id

Kunci ini memverifikasi bahwa ID aplikasi (atau situs) cocok dengan ID yang Anda tentukan dalam kebijakan.

Informasi lebih lanjut tentang OIDC federasi

Kunci yang tersedia untuk AWS STS federasi SAML berbasis

Jika Anda bekerja dengan federasi SAML berbasis menggunakan AWS Security Token Service (AWS STS), Anda dapat menyertakan kunci kondisi tambahan dalam kebijakan.

SAMLkebijakan kepercayaan peran

Dalam kebijakan kepercayaan dari suatu peran, Anda dapat menyertakan kunci-kunci berikut yang membantu Anda menentukan apakah pemanggil diperbolehkan untuk memegang peran tersebut. Kecualisaml:doc, semua nilai berasal dari SAML pernyataan. Semua item dalam daftar tersedia di editor visual IAM konsol saat Anda membuat atau mengedit kebijakan dengan kondisi. Item yang ditandai dengan [] dapat memiliki nilai yang merupakan daftar tipe yang ditentukan.

sml:aud

Bekerja dengan operator string.

Titik akhir URL di mana SAML pernyataan disajikan. Nilai untuk kunci ini berasal dari kolom SAML Recipient dalam pernyataan, bukan kolom Audience.

sama: commonName []

Bekerja dengan operator string.

Ini adalah atribut commonName.

saml:cn[]

Bekerja dengan operator string.

Ini adalah atribut eduOrg.

saml:doc

Bekerja dengan operator string.

Ini mewakili prinsipal yang digunakan untuk menerima peran tersebut. Formatnya adalah account-ID/provider-friendly-name, seperti123456789012/SAMLProviderName. Nilai Account-ID mengacu pada akun yang memiliki penyedia. SAML

saml:edupersonaffiliation[]

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonassurance[]

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonentitlement[]

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonnickname[]

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonorgdn

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonorgunitdn[]

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonprimaryaffiliation

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonprimaryorgunitdn

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonprincipalname

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersonscopedaffiliation[]

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:edupersontargetedid[]

Bekerja dengan operator string.

Ini adalah atribut eduPerson.

saml:eduorghomepageuri[]

Bekerja dengan operator string.

Ini adalah atribut eduOrg.

saml:eduorgidentityauthnpolicyuri[]

Bekerja dengan operator string.

Ini adalah atribut eduOrg.

saml:eduorglegalname[]

Bekerja dengan operator string.

Ini adalah atribut eduOrg.

saml:eduorgsuperioruri[]

Bekerja dengan operator string.

Ini adalah atribut eduOrg.

saml:eduorgwhitepagesuri[]

Bekerja dengan operator string.

Ini adalah atribut eduOrg.

sama: givenName []

Bekerja dengan operator string.

Ini adalah atribut givenName.

sml:iss

Bekerja dengan operator string.

Penerbit, yang diwakili oleh aURN.

saml:mail[]

Bekerja dengan operator string.

Ini adalah atribut mail.

saml:name[]

Bekerja dengan operator string.

Ini adalah atribut name.

saml:namequalifier

Bekerja dengan operator string.

Nilai hash berdasarkan nama ramah SAML penyedia. Nilai adalah rangkaian dari nilai-nilai berikut, diurutkan dan dipisahkan oleh karakter '/':

  1. Nilai tanggapan Issuer (saml:iss)

  2. ID akun AWS

  3. Nama ramah (bagian terakhir dariARN) SAML penyedia di IAM

Gabungan ID akun dan nama ramah SAML penyedia tersedia untuk IAM kebijakan sebagai kuncinya. saml:doc Untuk informasi selengkapnya, lihat Mengidentifikasi pengguna secara unik di SAML federasi berbasis.

sama: organizationStatus []

Bekerja dengan operator string.

Ini adalah atribut organizationStatus.

sama: primaryGroup SID []

Bekerja dengan operator string.

Ini adalah atribut primaryGroupSID.

saml:sub

Bekerja dengan operator string.

Ini adalah subjek klaim, yang mencakup nilai yang secara unik mengidentifikasi pengguna individu dalam suatu organisasi (misalnya, _cbb88bf52c2510eabe00c1642d4643f41430fe25e3).

saml:sub_type

Bekerja dengan operator string.

Kunci ini dapat memiliki nilaipersistent,transient, atau terdiri dari penuh Format URI dari NameID elemen Subject dan yang digunakan dalam SAML pernyataan Anda. Nilai dari persistent menunjukkan bahwa nilai dalam saml:sub sama untuk pengguna di antara sesi. Jika nilainya transient, pengguna memiliki nilai saml:sub untuk setiap sesi. Untuk informasi tentang elemen NameID Format atribut, lihat Konfigurasikan SAML pernyataan untuk respons otentikasi.

saml:surname[]

Bekerja dengan operator string.

Ini adalah atribut surnameuid.

saml:uid[]

Bekerja dengan operator string.

Ini adalah atribut uid.

saml:x500 [] UniqueIdentifier

Bekerja dengan operator string.

Ini adalah atribut x500UniqueIdentifier.

Untuk informasi umum tentang eduPerson dan eduOrg atribut, lihat situs web REFEDS Wiki. Untuk daftar eduPerson atribut, lihat Spesifikasi Kelas eduPerson Objek (201602).

Kunci kondisi dengan tipe berupa daftar dapat mencakup beberapa nilai. Untuk membuat kondisi dalam kebijakan untuk nilai-nilai daftar, Anda dapat menggunakan operator kumpulan (ForAllValues, ForAnyValue). Misalnya, untuk mengizinkan pengguna yang berafiliasi dengan "fakultas" atau "staf" (tetapi bukan "mahasiswa"), Anda dapat menggunakan ketentuan seperti berikut:

"Condition": { "ForAllValues:StringLike": { "saml:edupersonaffiliation":[ "faculty", "staff"] } }

Kunci konteks AWS STS federasi SAML berbasis lintas layanan

Beberapa kunci kondisi federasi SAML berbasis dapat digunakan dalam permintaan berikutnya untuk mengotorisasi AWS operasi di layanan dan AssumeRole panggilan lain. Ini adalah kunci kondisi berikut yang dapat digunakan dalam kebijakan kepercayaan peran ketika kepala sekolah federasi mengambil peran lain, dan dalam kebijakan sumber daya dari AWS layanan lain untuk mengotorisasi akses sumber daya oleh prinsipal federasi. Untuk informasi selengkapnya tentang penggunaan kunci ini, lihat Tentang federasi SAML berbasis 2.0.

Pilih tombol kondisi untuk melihat deskripsi.

catatan

Tidak ada kunci kondisi federasi SAML berbasis lain yang tersedia untuk digunakan setelah respons otentikasi penyedia identitas eksternal (iDP) awal.

Kunci yang tersedia untuk AWS STS

Anda dapat menggunakan kunci kondisi berikut dalam kebijakan kepercayaan IAM peran untuk peran yang diasumsikan menggunakan operasi AWS Security Token Service (AWS STS).

saml:sub

Bekerja dengan operator string.

Ini adalah subjek klaim, yang mencakup nilai yang secara unik mengidentifikasi pengguna individu dalam suatu organisasi (misalnya, _cbb88bf52c2510eabe00c1642d4643f41430fe25e3).

sts: AWSServiceName

Bekerja dengan operator string.

Gunakan kunci ini untuk menentukan layanan di mana token pembawa dapat digunakan. Saat Anda menggunakan kunci kondisi ini dalam suatu kebijakan, tentukan layanan menggunakan prinsipal layanan. Prinsipal layanan adalah nama layanan yang dapat ditentukan dalam elemen Principal dari suatu kebijakan. Misalnya, codeartifact.amazonaws.com adalah kepala AWS CodeArtifact layanan.

Ketersediaan – Kunci ini tersedia dalam permintaan yang mendapatkan token pembawa. Anda tidak dapat melakukan panggilan langsung AWS STS untuk mendapatkan token pembawa. Saat Anda melakukan beberapa operasi dalam layanan lain, layanan meminta token pembawa atas nama Anda.

Beberapa AWS layanan mengharuskan Anda memiliki izin untuk mendapatkan token pembawa AWS STS layanan sebelum Anda dapat mengakses sumber daya mereka secara terprogram. Misalnya, AWS CodeArtifact mengharuskan prinsipal untuk menggunakan token pembawa untuk melakukan beberapa operasi. Perintah aws codeartifact get-authorization-token mengembalikan token pembawa. Anda kemudian dapat menggunakan token pembawa untuk melakukan AWS CodeArtifact operasi. Untuk informasi selengkapnya tentang token pembawa, lihat Token pembawa layanan.

Anda dapat menggunakan kunci kondisi ini untuk mengizinkan prinsipal mendapatkan token pembawa untuk digunakan dengan layanan tertentu.

sts: DurationSeconds

Bekerja dengan operator numerik.

Gunakan kunci ini untuk menentukan durasi (dalam detik) yang dapat digunakan prinsipal saat mendapatkan token AWS STS pembawa.

Ketersediaan – Kunci ini tersedia dalam permintaan yang mendapatkan token pembawa. Anda tidak dapat melakukan panggilan langsung AWS STS untuk mendapatkan token pembawa. Saat Anda melakukan beberapa operasi dalam layanan lain, layanan meminta token pembawa atas nama Anda. Kuncinya tidak tersedia untuk operasi assume-role AWS STS .

Beberapa AWS layanan mengharuskan Anda memiliki izin untuk mendapatkan token pembawa AWS STS layanan sebelum Anda dapat mengakses sumber daya mereka secara terprogram. Misalnya, AWS CodeArtifact mengharuskan prinsipal untuk menggunakan token pembawa untuk melakukan beberapa operasi. Perintah aws codeartifact get-authorization-token mengembalikan token pembawa. Anda kemudian dapat menggunakan token pembawa untuk melakukan AWS CodeArtifact operasi. Untuk informasi selengkapnya tentang token pembawa, lihat Token pembawa layanan.

sts: ExternalId

Bekerja dengan operator string.

Gunakan kunci ini untuk mengharuskan prinsipal memberikan pengenal tertentu saat mengambil peranIAM.

Ketersediaan — Kunci ini hadir dalam permintaan ketika prinsipal memberikan ID eksternal sambil mengambil peran menggunakan AWS CLI or AWS API.

Pengidentifikasi unik yang mungkin diperlukan saat Anda menerima peran dalam akun lain. Jika administrator akun yang memiliki peran tersebut memberi Anda ID eksternal, berikan nilai tersebut di parameter ExternalId. Nilai ini dapat berupa string, seperti frasa sandi atau nomor akun. Fungsi utama dari ID eksternal adalah mengatasi dan mencegah masalah deputi yang membingungkan. Untuk informasi selengkapnya tentang ID eksternal dan masalah deputi yang membingungkan, lihat Akses ke Akun AWS yang dimiliki oleh pihak ketiga.

Nilai ExternalId harus memiliki minimal 2 karakter dan maksimal 1.224 karakter. Nilai harus berupa alfanumerik tanpa spasi. Alfanumerik dapat mencakup simbol berikut: plus (+), sama (=), koma (,), titik (.), di (@), titik dua (:), garis miring (/), dan tanda hubung (-).

sts:RequestContext/kunci-konteks

Bekerja dengan operator string.

Gunakan kunci ini untuk membandingkan pasangan nilai kunci konteks sesi yang disematkan dalam pernyataan konteks yang ditandatangani penerbit token tepercaya yang diteruskan dalam permintaan dengan nilai kunci konteks yang ditentukan dalam kebijakan kepercayaan peran.

Ketersediaan — Kunci ini hadir dalam permintaan ketika pernyataan konteks disediakan dalam parameter ProvidedContexts permintaan sambil mengasumsikan peran menggunakan operasi. AWS STS AssumeRoleAPI

Kunci konteks ini diformat sebagai "sts:RequestContext/context-key":"context-value" where context-key dan context-value merupakan pasangan kunci-nilai konteks. Ketika beberapa kunci konteks disematkan dalam pernyataan konteks yang ditandatangani yang diteruskan dalam permintaan, ada satu kunci konteks untuk setiap pasangan kunci-nilai. Anda harus memberikan izin untuk sts:SetContext tindakan dalam kebijakan kepercayaan peran untuk mengizinkan prinsipal menyetel kunci konteks dalam token sesi yang dihasilkan. Untuk mempelajari selengkapnya tentang kunci konteks Pusat IAM Identitas yang didukung yang dapat digunakan dengan kunci ini, lihat tombol AWS STS kondisi untuk Pusat IAM Identitas di Panduan AWS IAM Identity Center Pengguna.

Anda dapat menggunakan kunci ini dalam kebijakan kepercayaan peran untuk menerapkan kontrol akses berbutir halus berdasarkan pengguna atau atributnya saat mereka mengambil peran. Setelah peran diasumsikan, aktivitas akan muncul di AWS CloudTrail log dalam AdditionalEventData atribut, yang berisi pasangan nilai kunci konteks sesi yang ditetapkan oleh penyedia konteks dalam permintaan peran asumsikan. Ini memudahkan administrator membedakan di antara sesi peran saat peran digunakan oleh prinsipal yang berbeda. Pasangan kunci-nilai ditetapkan oleh penyedia konteks yang ditentukan, bukan oleh AWS CloudTrail atau. AWS STS Ini memberi penyedia konteks kontrol atas konteks apa yang disertakan dalam CloudTrail log dan informasi sesi.

sts: RequestContextProviders

Bekerja dengan ARNoperator.

Gunakan kunci ini untuk membandingkan penyedia konteks ARN dalam permintaan dengan penyedia konteks ARN yang ditentukan dalam kebijakan kepercayaan peran.

Ketersediaan — Kunci ini hadir dalam permintaan ketika pernyataan konteks disediakan dalam parameter ProvidedContexts permintaan sambil mengasumsikan peran menggunakan operasi. AWS STS AssumeRoleAPI

Contoh kondisi berikut memeriksa apakah penyedia konteks yang ARN diteruskan dalam permintaan cocok dengan yang ARN ditentukan dalam kondisi kebijakan kepercayaan peran.

"Condition": { "ForAllValues:ArnEquals": { "sts:RequestContextProviders": [ "arn:aws:iam::aws:contextProvider/IdentityCenter" ] } }
sts: RoleSessionName

Bekerja dengan operator string.

Gunakan kunci ini untuk membandingkan nama sesi yang ditentukan oleh prinsipal saat mengambil peran dengan nilai yang ditentukan dalam kebijakan.

Ketersediaan — Kunci ini hadir dalam permintaan ketika prinsipal mengasumsikan peran menggunakan, CLI perintah peran asumsi apa pun AWS Management Console, atau operasi apa pun. AWS STS AssumeRole API

Anda dapat menggunakan kunci ini dalam kebijakan kepercayaan peran untuk mewajibkan pengguna Anda memberikan nama sesi tertentu saat mereka mengambil peran. Misalnya, Anda dapat meminta IAM pengguna menentukan nama pengguna mereka sendiri sebagai nama sesi mereka. Setelah IAM pengguna mengambil peran, aktivitas muncul di AWS CloudTrail log dengan nama sesi yang cocok dengan nama pengguna mereka. Ini memudahkan administrator membedakan di antara sesi peran saat peran digunakan oleh prinsipal yang berbeda.

Kebijakan kepercayaan peran berikut mengharuskan IAM pengguna di akun 111122223333 memberikan nama IAM pengguna mereka sebagai nama sesi saat mereka mengambil peran. Persyaratan ini diberlakukan menggunakan aws:username variabel kondisi di dalam kunci kondisi. Kebijakan ini memungkinkan IAM pengguna untuk mengambil peran yang melekat pada kebijakan tersebut. Kebijakan ini tidak mengizinkan siapa pun yang menggunakan kredensyal sementara untuk mengambil peran karena username variabel hanya IAM ada untuk pengguna.

penting

Anda dapat menggunakan kunci kondisi bernilai tunggal apa pun sebagai variabel. Anda tidak dapat menggunakan kunci kondisi multivalued sebagai variabel.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RoleTrustPolicyRequireUsernameForSessionName", "Effect": "Allow", "Action": "sts:AssumeRole", "Principal": {"AWS": "arn:aws:iam::111122223333:root"}, "Condition": { "StringLike": {"sts:RoleSessionName": "${aws:username}"} } } ] }

Saat administrator melihat AWS CloudTrail log untuk tindakan, mereka dapat membandingkan nama sesi dengan nama pengguna di akun mereka. Dalam contoh berikut, pengguna bernama matjac melakukan operasi menggunakan peran bernama MateoRole. Administrator selanjutnya dapat menghubungi Mateo Jackson, yang memiliki pengguna bernama matjac.

"assumedRoleUser": { "assumedRoleId": "AROACQRSTUVWRAOEXAMPLE:matjac", "arn": "arn:aws:sts::111122223333:assumed-role/MateoRole/matjac" }

Jika Anda mengizinkan akses lintas akun menggunakan peran, maka pengguna di satu akun dapat mengambil peran di akun lain. Pengguna ARN peran yang diasumsikan terdaftar CloudTrail termasuk akun tempat peran itu ada. Ini tidak termasuk akun pengguna yang mengambil peran tersebut. Pengguna hanya bersifat unik di dalam suatu akun. Oleh karena itu, kami menyarankan Anda menggunakan metode ini untuk memeriksa CloudTrail log hanya untuk peran yang diasumsikan oleh pengguna di akun yang Anda kelola. Pengguna Anda mungkin menggunakan nama pengguna yang sama dalam beberapa akun.

sts: SourceIdentity

Bekerja dengan operator string.

Gunakan kunci ini untuk membandingkan identitas sumber yang ditentukan oleh prinsipal saat mengambil peran dengan nilai yang ditentukan dalam kebijakan.

Ketersediaan — Kunci ini hadir dalam permintaan ketika prinsipal memberikan identitas sumber sambil mengasumsikan peran menggunakan perintah, atau AWS STS operasi peran CLI apa pun. AWS STS AssumeRole API

Anda dapat menggunakan kunci ini dalam kebijakan kepercayaan peran untuk mewajibkan pengguna Anda menetapkan identitas sumber tertentu saat mereka mengambil peran. Misalnya, Anda dapat meminta tenaga kerja Anda atau identitas gabungan untuk menentukan nilai identitas sumber. Anda dapat mengonfigurasi penyedia identitas Anda (IdP) untuk menggunakan salah satu atribut yang terkait dengan pengguna Anda, seperti nama pengguna atau email sebagai identitas sumber. IdP kemudian meneruskan identitas sumber sebagai atribut dalam pernyataan atau klaim yang dikirimkan ke. AWS Nilai atribut identitas sumber mengidentifikasi pengguna atau aplikasi yang mengambil peran.

Setelah pengguna mengambil peran, aktivitas muncul di log AWS CloudTrail dengan nilai identitas sumber yang ditetapkan. Ini memudahkan administrator untuk menentukan siapa atau apa yang melakukan tindakan dengan peran AWS. Anda harus memberikan izin untuk tindakan sts:SetSourceIdentity untuk mengizinkan identitas menetapkan identitas sumber.

Tidak seperti sts:RoleSessionName, setelah identitas sumber diatur, nilai tidak dapat diubah. Ini terdapat dalam konteks permintaan untuk semua tindakan yang diambil dengan peran menggunakan identitas sumber daya. Nilai tetap ada dalam sesi peran berikutnya saat Anda menggunakan kredensial sesi untuk mengambil peran lain. Mengasumsikan satu peran dari peran lain disebut rantai peran.

Anda dapat menggunakan kunci kondisi aws:SourceIdentityglobal untuk mengontrol akses lebih lanjut ke AWS sumber daya berdasarkan nilai identitas sumber dalam permintaan berikutnya.

Kebijakan kepercayaan peran berikut memungkinkan IAM pengguna AdminUser untuk mengambil peran dalam akun111122223333. Ini juga memberikan izin ke AdminUser untuk mengatur identitas sumber, selama identitas sumber yang ditetapkan adalah DiegoRamirez.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAdminUserAssumeRole", "Effect": "Allow", "Principal": {"AWS": " arn:aws:iam::111122223333:user/AdminUser"}, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity" ], "Condition": { "StringEquals": {"sts:SourceIdentity": "DiegoRamirez"} } } ] }

Untuk informasi selengkapnya tentang menggunakan informasi identitas sumber, lihat Memantau dan mengontrol tindakan yang diambil dengan peran yang diasumsikan.

sts: TaskPolicyArn

Bekerja dengan ARNoperator.

Gunakan kunci ini untuk membandingkan kebijakan ARN dalam AssumeRoot permintaan sts: dengan kebijakan yang ARN ditentukan dalam kebijakan.

Ketersediaan — Kunci ini ada dalam permintaan saat Anda membuat permintaan menggunakan sts: AssumeRoot.

Anda dapat menggunakan kunci kondisi ini dalam kebijakan untuk membatasi tindakan yang dapat dilakukan oleh akun manajemen atau administrator yang didelegasikan selama sesi pengguna root yang memiliki hak istimewa. Untuk informasi selengkapnya, lihat Lakukan tugas istimewa di akun AWS Organizations anggota.

sts: TransitiveTagKeys

Bekerja dengan operator string.

Gunakan kunci ini untuk membandingkan kunci tag sesi transitif dalam permintaan dengan yang ditentukan dalam kebijakan.

Ketersediaan – Kunci ini tersedia dalam permintaan saat Anda mengajukan permintaan menggunakan kredensial keamanan sementara. Ini termasuk kredensial yang dibuat menggunakan operasi asumsi peran, atau operasi GetFederationToken.

Saat Anda menggunakan kredensial sesi untuk membuat permintaan berikutnya, konteks permintaan mencakup kunci konteks aws:PrincipalTag. Kunci ini mencakup daftar tanda sesi, tanda sesi transitif, dan tanda peran. Tanda sesi transitif adalah tanda yang tetap ada di semua sesi berikutnya saat Anda menggunakan kredensial sesi untuk menjalankan peran lain. Mengasumsikan satu peran dari peran lain disebut rantai peran.

Anda dapat menggunakan kunci kondisi ini dalam kebijakan untuk mewajibkan pengaturan tanda sesi tertentu sebagai transitif saat mengambil peran atau menggabungkan pengguna.