View a markdown version of this page

Konfigurasikan akses OAuth ke AWS Server MCP - AWS Sign-In

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

Konfigurasikan akses OAuth ke AWS Server MCP

Gambaran umum

AWS Server MCP mendukung otorisasi OAuth melalui. AWS Sign-In Dengan otorisasi OAuth, agen dapat mengakses AWS menggunakan identitas, izin, dan model tata kelola yang sama yang sudah Anda gunakan dengan dan. Konsol Manajemen AWS AWS CLI Ketika Anda mengotorisasi agen, ia dapat mengakses Server AWS MCP atas nama Anda. Otorisasi tidak memberikan AWS izin tambahan kepada agen.

Gunakan panduan ini untuk mengkonfigurasi akses OAuth ke Server AWS MCP. Ini mencakup model otorisasi yang didukung, izin IAM yang diperlukan, dan cara mengatur dan memantau akses OAuth.

Untuk informasi selengkapnya tentang dukungan OAuth di AWS Sign-In, lihat. Sign-In dengan OAuth 2.0

Prasyarat

Sebelum menghubungkan agen ke Server AWS MCP, pastikan bahwa:

  • Identitas IAM Anda memiliki izin yang diperlukan untuk otorisasi OAuth.

  • Agen Anda mendukung Model Context Protocol (MCP).

  • Agen Anda mendukung otorisasi OAuth 2.1.

Berikan izin yang diperlukan dengan melampirkan kebijakan AWS terkelola:

aws iam attach-role-policy \ --role-name MyRole \ --policy-arn arn:aws:iam::aws:policy/AWSMCPSignInOAuthAccessPolicy

Kebijakan yang dikelola ini memberikan:

  • signin:AuthorizeOAuth2Access

  • signin:CreateOAuth2Token

Jika Anda mengotentikasi sebagai pengguna Akun AWS root, tidak diperlukan izin IAM tambahan.

URI Pengalihan yang Didukung untuk DCR

Agen dapat mendaftar dengan AWS Sign-In dan menggunakan satu atau lebih URI pengalihan yang disetujui selama proses otorisasi OAuth.

Klien OAuth Arahkan URI
Lokalhost localhost, 127.0.0.1
Claude https://claude.ai/*
Kursor Desktop cursor://anysphere.cursor-mcp/oauth/callback
Web kursor https://www.cursor.com/agents/mcp/oauth/callback
Kode Studio Visual vscode://*
Kode Visual Studio (Web) https://vscode.dev/*
ChatGPT https://chatgpt.com/*
Konektor ChatGPT https://chatgpt.com/connector_platform_oauth_redirect
Memulihkan ulang https://replit.com/
Menyenangkan https://lovable.app/*
Pengembang yang Menyenangkan https://lovable.dev/*
Vercel v0 https://api.v0.dev/v1/mcp-servers/oauth/callback

Hubungkan agen ke AWS Server MCP

Langkah-langkah untuk mengkonfigurasi OAuth-compatible agen bervariasi tergantung pada aplikasi. Untuk petunjuk untuk agen yang didukung, lihat Panduan Server AWS MCP.

Alur kerja umum adalah:

  1. Konfigurasikan titik akhir Server AWS MCP.

  2. Otentikasi melalui AWS Sign-In atau dapatkan token akses OAuth secara terprogram.

  3. Menyetujui permintaan otorisasi (hanya aliran interaktif).

  4. Mulai memanggil alat yang disediakan oleh Server AWS MCP.

Model otorisasi

AWS MCP Server mendukung model otorisasi yang disediakan oleh AWS Sign-In.

Otorisasi interaktif

Otorisasi interaktif ditujukan untuk pengembang yang menggunakan agen di workstation lokal.

Ketika agen membutuhkan otorisasi:

  1. Agen mengalihkan pengguna ke AWS Sign-In.

  2. Pengguna mengotentikasi menggunakan AWS identitas mereka.

  3. Pengguna meninjau dan menyetujui permintaan otorisasi.

  4. AWS Sign-In mengeluarkan akses OAuth dan token penyegaran.

  5. Agen mengakses Server AWS MCP atas nama pengguna.

Izin IAM yang diperlukan:

  • signin:AuthorizeOAuth2Access

  • signin:CreateOAuth2Token

Non-interactive otorisasi

Non-interactive otorisasi menggunakan pemberian kredenSIAL klien OAuth 2.0. Ini ditujukan untuk agen dan aplikasi yang sudah memiliki AWS kredenSIAL dan tidak dapat melakukan otentikasi berbasis browser.

Aplikasi mengautentikasi menggunakan kredentif Sig AWS nature Version 4 (SigV4) yang ada dan mendapatkan token akses OAuth melalui API. CreateOAuth2TokenWithIAM

Berbeda dengan aliran interaktif, hanya token akses yang dikeluarkan. Aplikasi meminta token akses baru saat token saat ini kedaluwarsa.

Izin IAM yang diperlukan:

  • signin:CreateOAuth2Token

Contoh berikut menunjukkan cara mendapatkan token akses menggunakan AWS CLI:

aws signin create-oauth2-token-with-iam \ --grant-type client_credentials \ --resource aws-mcp.amazonaws.com \ --region us-east-1

Jenis sumber daya OAuth

AWS Sign-In mewakili target otorisasi OAuth dan klien OAuth publik sebagai sumber daya IAM. Anda mereferensikan sumber daya ini dalam kebijakan IAM untuk memberikan atau mengontrol otorisasi OAuth.

Jenis sumber daya berikut saat ini didukung.

Tipe sumber daya Format ARN Deskripsi
AWS Server MCP arn:aws:signin:region:account-id:service-principal/aws-mcp.amazonaws.com Merupakan Server AWS MCP. Gunakan sumber daya ini untuk memberikan atau mengontrol otorisasi OAuth untuk aplikasi yang mengakses Server AWS MCP.
Klien publik OAuth (perangkat yang sama) arn:aws:signin:region:account-id:oauth2/public-client/localhost Merupakan klien OAuth AWS CLI publik untuk otorisasi perangkat yang sama. Gunakan sumber daya ini denganaws login, di mana browser dan AWS CLI jalankan pada perangkat yang sama.
Klien publik OAuth (lintas-perangkat) arn:aws:signin:region:account-id:oauth2/public-client/remote Merupakan klien OAuth AWS CLI publik untuk otorisasi lintas perangkat. Gunakan sumber daya ini denganaws login --remote, di mana otentikasi diselesaikan pada perangkat terpisah.

Siklus hidup token

AWS Sign-In mengelola siklus hidup token OAuth yang dikeluarkan untuk Server AWS MCP.

Token Deskripsi
Token akses interaktif Berlaku hingga satu jam. Disegarkan secara otomatis sementara token penyegaran tetap valid.
Non-interactive token akses Berlaku untuk durasi sesi yang lebih pendek dari satu jam atau sisa durasi AWS sesi. Aplikasi meminta token baru setelah kedaluwarsa.
Token refresh Dikeluarkan hanya untuk otorisasi interaktif. Memungkinkan aplikasi untuk mendapatkan token akses baru tanpa mengharuskan pengguna untuk masuk lagi. Token penyegaran diputar dan digunakan sekali pakai.

Mengelola token OAuth

AWS Sign-In menyediakan API untuk memvalidasi dan mengelola otorisasi OAuth.

API Tujuan
IntrospectOAuth2Token Mengembalikan metadata yang menggambarkan token OAuth.
RevokeOAuth2Token Mencabut token penyegaran.

Memantau aktivitas OAuth

OAuth-related kegiatan dicatat di AWS CloudTrail.

CloudTrail merekam acara termasuk:

  • Permintaan otorisasi OAuth

  • Penerbitan token OAuth

  • Introspeksi token

  • Pencabutan token

CloudTrail juga merekam klien OAuth, pengalihan URI, aliran otorisasi, sumber daya Server AWS MCP, dan AWS Sign-In sesi terkait, memungkinkan administrator untuk mengkorelasikan aktivitas AWS API dengan otorisasi OAuth yang berasal.

Contoh CloudTrail acara tersedia untuk:

  • AuthorizeOAuth2Access

  • CreateOAuth2Token

Contoh - AuthorizeOAuth2Access acara:

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:testuser", "arn": "arn:aws:sts::111111111111:assumed-role/Admin/testuser", "accountId": "111111111111", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111111111111:role/Admin", "accountId": "111111111111", "userName": "Admin" }, "attributes": { "creationDate": "2026-06-09T05:06:39Z", "mfaAuthenticated": "false" } } }, "eventTime": "2026-06-09T05:09:00Z", "eventSource": "signin.amazonaws.com", "eventName": "AuthorizeOAuth2Access", "awsRegion": "us-west-2", "sourceIPAddress": "192.0.2.1", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) ...", "requestParameters": { "resource": "https://aws-mcp.us-west-2.api.aws/mcp", "redirect_uri": "http://127.0.0.1:60432/oauth/callback", "code_challenge_method": "S256", "client_id": "arn:aws:signin:us-west-2::external-client/dcr/b3f2c8a1-9d4e-4f7a-8c6b-2e1f5a3d9b7c" }, "responseElements": null, "additionalEventData": { "success": "true" }, "requestID": "4fb4ff7b-6yu7-9090-78i9-9c0088a65134", "eventID": "bb05b222-31ec-4237-b8e7-8eb26d4fd48b", "readOnly": true, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111111111111", "eventCategory": "Management", "tlsDetails": { "tlsVersion": "TLSv1.3", "cipherSuite": "TLS_AES_128_GCM_SHA256", "clientProvidedHostHeader": "us-west-2.oauth.signin.aws" } }

Contoh - CreateOAuth2Token acara:

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:testuser", "arn": "arn:aws:sts::111111111111:assumed-role/Admin/testuser", "accountId": "111111111111", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111111111111:role/Admin", "accountId": "111111111111", "userName": "Admin" }, "attributes": { "creationDate": "2026-06-09T05:06:39Z", "mfaAuthenticated": "false" }, "signInSessionArn": "arn:aws:signin:us-west-2:111111111111:session/daff060f-7871-4ab6-92cd-a07bbdabe61a" } }, "eventTime": "2026-06-09T05:10:04Z", "eventSource": "signin.amazonaws.com", "eventName": "CreateOAuth2Token", "awsRegion": "us-west-2", "sourceIPAddress": "192.0.2.1", "userAgent": "curl/8.7.1", "requestParameters": { "resource": "https://aws-mcp.us-west-2.api.aws/mcp", "client_id": "arn:aws:signin:us-west-2::external-client/dcr/b3f2c8a1-9d4e-4f7a-8c6b-2e1f5a3d9b7c" }, "responseElements": null, "additionalEventData": { "signInSessionArn": "arn:aws:signin:us-west-2:111111111111:session/daff060f-7871-4ab6-92cd-a07bbdabe61a", "grant_type": "refresh_token", "success": "true" }, "requestID": "44d6d7ce-e4r5-4cbf-0909-bfb8a8295a76", "eventID": "f79cc63f-b383-4e3c-a1e5-97c7db1ab833", "readOnly": true, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111111111111", "eventCategory": "Management", "tlsDetails": { "tlsVersion": "TLSv1.3", "cipherSuite": "TLS_AES_128_GCM_SHA256", "clientProvidedHostHeader": "us-west-2.oauth.signin.aws" } }

Peristiwa audit tambahan dan detail logging untuk panggilan yang dilakukan menggunakan token akses OAuth ke Server AWS MCP dapat ditemukan di panduan logging Server AWS MCP. CloudTrail

Pemecahan masalah

Izin ditolak saat menghubungkan ke AWS Server MCP

Verifikasi bahwa identitas IAM Anda memiliki signin:CreateOAuth2Token izin signin:AuthorizeOAuth2Access dan untuk sumber daya hibah otorisasi Server AWS MCP.

Token akses kedaluwarsa

Otorisasi interaktif secara otomatis menyegarkan token akses sementara token penyegaran terkait tetap valid. Jika token penyegaran telah kedaluwarsa atau dicabut, autentikasi lagi melalui agen Anda.

Untuk otorisasi non-interaktif, Anda dapat meminta token akses baru dari titik akhir token.

Sumber daya target tidak valid

Saat memanggilCreateOAuth2TokenWithIAM, verifikasi bahwa resource parameter mengidentifikasi layanan target yang didukung. Untuk Server AWS MCP, gunakan prinsip layanan Server AWS MCP.

Agen tidak dapat mendaftar sebagai klien OAuth

Hanya agen yang disetujui yang dapat mendaftar melalui Dynamic Client Registration (DCR). Jika Anda mengembangkan MCP-compatible agen, hubungi AWS dukungan.

Kebijakan kunci kondisi OAuth tidak berlaku

Verifikasi bahwa kunci kondisi berlaku untuk tindakan IAM yang sedang dievaluasi. Beberapa kunci kondisi hanya didukung oleh tindakan OAuth tertentu. Untuk informasi selengkapnya, lihat Sign-In dengan OAuth 2.0.

Sesi dicabut tetapi agen masih memiliki akses

Mencabut token penyegaran segera mencegah token akses baru dikeluarkan. Token akses yang ada tetap valid hingga kedaluwarsa (hingga satu jam).

Untuk penahanan segera, terapkan kebijakan IAM menggunakan kunci kondisi aws:SignInSessionArn global untuk menolak permintaan yang terkait dengan sesi masuk yang terpengaruh.