全部产品
Search
文档中心

Resource Access Management:AssumeRoleWithSAML

更新时间:Jan 29, 2026

Untuk single sign-on (SSO) berbasis role yang menggunakan Security Assertion Markup Language (SAML), panggil operasi AssumeRoleWithSAML guna memperoleh kredensial identitas sementara (token Security Token Service (STS)) untuk sebuah RAM role.

Deskripsi operasi

Prasyarat

Coba sekarang

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tidak ada otorisasi untuk operasi ini. Jika Anda mengalami masalah saat menjalankan operasi ini, hubungi dukungan teknis.

Parameter permintaan

Parameter

Type

Required

Description

Example

SAMLProviderArn

string

No

Nama Sumber Daya Alibaba Cloud (ARN) dari SAML IdP yang dibuat di RAM.

Format: acs:ram::<account_id>:saml-provider/<saml_provider_name>.

Anda dapat melihat ARN IdP di Konsol RAM atau dengan memanggil operasi API:

acs:ram::123456789012****:saml-provider/company1

RoleArn

string

No

ARN dari RAM role yang akan diasumsikan.

Entitas tepercaya dari RAM role tersebut adalah SAML IdP. Untuk informasi selengkapnya, lihat Create a RAM role for an identity provider atau CreateRole.

Format: acs:ram::<account_id>:role/<role_name>.

Anda dapat melihat ARN role tersebut di Konsol RAM atau dengan memanggil operasi API:

acs:ram::123456789012****:role/adminrole

SAMLAssertion

string

No

Pernyataan SAML yang telah dienkripsi Base64.

Panjang nilai harus antara 4 hingga 100.000 karakter.

Catatan

Ambil respons SAML lengkap dari IdP. Jangan hanya menggunakan bidang pernyataan SAML saja.

base64_encoded_saml_assertion

Policy

string

No

Kebijakan akses untuk lebih membatasi izin token STS. Parameter ini bekerja sebagai berikut:

  • Jika Anda menentukan kebijakan ini, izin token STS merupakan irisan antara izin yang diberikan kepada RAM role dan izin yang ditentukan dalam kebijakan ini.

  • Jika Anda tidak menentukan kebijakan ini, token STS memiliki semua izin yang diberikan kepada RAM role.

Panjang nilai harus antara 1 hingga 2.048 karakter.

url_encoded_policy

DurationSeconds

integer

No

Durasi masa berlaku token. Satuan: detik.

Nilai minimum adalah 900 detik. Nilai maksimum adalah nilai parameter MaxSessionDuration. Nilai default adalah 3600 detik.

Anda dapat mengatur parameter MaxSessionDuration saat memanggil operasi CreateRole atau UpdateRole. Untuk informasi selengkapnya, lihat CreateRole atau UpdateRole.

3600

Catatan

Karena operasi AssumeRoleWithSAML menggunakan pernyataan SAML untuk otentikasi identitas dan mengizinkan akses anonim, Anda tidak perlu menentukan parameter permintaan umum Signature, SignatureMethod, SignatureVersion, atau AccessKeyId. Untuk informasi selengkapnya tentang parameter permintaan umum, lihat Common request parameters.

Elemen respons

Element

Type

Description

Example

object

Parameter respons.

RequestId

string

ID permintaan.

6894B13B-6D71-4EF5-88FA-F32781734A7F

SAMLAssertionInfo

object

Informasi mengenai pernyataan SAML.

SubjectType

string

Format elemen NameID dalam pernyataan SAML. Jika awalannya adalah urn:oasis:names:tc:SAML:2.0:nameid-format:, awalan tersebut dihapus. Contoh: persistent dan transient.

persistent

Subject

string

Nilai bidang Subject - NameID dalam pernyataan SAML.

alice@example.com

Issuer

string

Nilai bidang Issuer dalam pernyataan SAML.

http://example.com/adfs/services/trust

Recipient

string

Nilai atribut Recipient dalam bidang Subject - SubjectConfirmation - SubjectConfirmationData pada pernyataan SAML.

https://signin.aliyun.com/saml-role/SSO

AssumedRoleUser

object

Identitas temporary dari role yang diasumsikan.

AssumedRoleId

string

ID identitas temporary.

34458433936495****:alice

Arn

string

ARN identitas temporary.

acs:sts::123456789012****:assumed-role/AdminRole/alice

Credentials

object

Kredensial akses.

SecurityToken

string

Token keamanan.

Catatan

Panjang token keamanan bersifat variabel. Jangan menerapkan batas panjang maksimum pada token keamanan.

********

Expiration

string

Waktu kedaluwarsa token. Waktu dalam UTC.

2015-04-09T11:52:19Z

AccessKeySecret

string

Rahasia AccessKey.

wyLTSmsyPGP1ohvvw8xYgB29dlGI8KMiH2pK****

AccessKeyId

string

ID AccessKey.

STS.L4aBSCSJVMuKg5U1****

SourceIdentity

string

Identitas sumber.

Saat Anda mengasumsikan sebuah role, Anda dapat menentukan identitas sumber untuk pengguna role tersebut. Identitas sumber digunakan sebagai identitas awal sesi. Nilai identitas sumber tetap dipertahankan sepanjang sesi pengasumsian role berantai dan tidak dapat diubah. Hal ini menjamin ketertelusuran dan keamanan operasi.

Parameter ini tidak dikembalikan jika Anda tidak menetapkan identitas sumber.

Alice

Contoh

Respons sukses

JSONformat

{
  "RequestId": "6894B13B-6D71-4EF5-88FA-F32781734A7F",
  "SAMLAssertionInfo": {
    "SubjectType": "persistent",
    "Subject": "alice@example.com",
    "Issuer": "http://example.com/adfs/services/trust",
    "Recipient": "https://signin.aliyun.com/saml-role/SSO"
  },
  "AssumedRoleUser": {
    "AssumedRoleId": "34458433936495****:alice",
    "Arn": "acs:sts::123456789012****:assumed-role/AdminRole/alice"
  },
  "Credentials": {
    "SecurityToken": "********",
    "Expiration": "2015-04-09T11:52:19Z",
    "AccessKeySecret": "wyLTSmsyPGP1ohvvw8xYgB29dlGI8KMiH2pK****",
    "AccessKeyId": "STS.L4aBSCSJVMuKg5U1****"
  },
  "SourceIdentity": "Alice"
}

Kode kesalahan

HTTP status code

Error code

Error message

Description

500 InternalError STS Server Internal Error happened, please send the RequestId to us.

Lihat Error Codes untuk daftar lengkap.

Catatan rilis

Lihat Release Notes untuk daftar lengkap.