

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

# Connect ke server jauh DevOps Agen
<a name="accessing-devops-agent-connect-to-devops-agent-remote-servers"></a>

AWS DevOps Agen menyediakan server jarak jauh khusus untuk protokol Model Context Protocol (MCP) dan Agent-to-Agent (A2A). Gunakan server ini untuk menghubungkan IDE, CLI, atau integrasi agen kustom Anda ke Ruang Agen.

## Protokol yang didukung
<a name="supported-protocols"></a>
+ **MCP (Model Context Protocol)** — Hubungkan klien IDE dan CLI seperti Kiro, Claude Code, Cursor, dan alat lainnya. MCP-compatible 
+ **A2A (Agent-to-Agent) v1.0 —** Hubungkan agen otonom untuk komunikasi agen-ke-agen.

## Titik akhir
<a name="endpoints"></a>

Server jarak jauh tersedia di URL regional:

```
https://connect.aidevops.{region}.api.aws
```


| Protokol | Jalan | Metode | 
| --- | --- | --- | 
| MCP | /mcp | POST | 
| A2A | /a2a/\* | POST | 
| Kartu agen A2A | /.well-known/agent-card.json | GET | 

Untuk daftar Wilayah yang tersedia, lihat[Wilayah yang Didukung](about-aws-devops-agent-supported-regions.md).

## Autentikasi
<a name="authentication"></a>

Dua metode otentikasi tersedia untuk titik akhir MCP dan A2A:
+ **Access token (Bearer)** — Satu token yang dicakup ke satu Ruang Agen. Pengaturan paling sederhana untuk penggunaan individu.
+ **AWS SiGv4** — otentikasi berbasis AWS kredensyal. Mendukung beberapa Ruang Agen dan terintegrasi dengan tata kelola AWS identitas yang ada. Ditangani secara otomatis oleh [mcp-proxy-for-aws](https://github.com/aws/mcp-proxy-for-aws), proxy lokal yang menandatangani permintaan menggunakan kredensyal Anda. AWS 

## Buat token akses
<a name="create-an-access-token"></a>

### Prasyarat
<a name="prerequisites"></a>
+ Fitur token akses harus diaktifkan di Ruang Agen Anda.
+ Anda harus memiliki izin IAM untuk mengelola token akses (`aidevops:CreateAccessToken`,`aidevops:RevokeAccessToken`,`aidevops:RotateAccessToken`). Untuk daftar lengkapnya, lihat [DevOps Izin Agen IAM](aws-devops-agent-security-devops-agent-iam-permissions.md).

### Aktifkan token akses
<a name="enable-access-tokens"></a>

1. Masuk ke Konsol AWS Manajemen dan buka konsol AWS DevOps Agen.

1. Pilih Ruang Agen Anda.

1. Pilih tab **Konfigurasi**.

1. Di bagian **Access token**, pilih **Enable**.

1. Konfirmasikan tindakan.

### Buat token
<a name="create-a-token"></a>

1. Buka aplikasi web DevOps Agen untuk Ruang Agen Anda, lalu dari menu navigasi, pilih **Pengaturan**, lalu pilih **Token Akses**.

1. Pilih **Hasilkan token**.

1. Masukkan nama untuk token.

1. Pilih ruang lingkup:
   + `read`— Lihat investigasi, rekomendasi, obrolan, dan sumber daya Agen Ruang.
   + `operate`— Akses penuh. Termasuk semua yang ada di dalamnya`read`, ditambah mengirim pesan, membuat obrolan, dan mengelola tugas dan rekomendasi backlog.

1. Pilih jenis klien:
   + `human`— Untuk penggunaan IDE dan CLI (Kiro, Kode Claude, Kursor, dan alat interaktif lainnya).
   + `agent`— Untuk integrasi A2A otonom dan agen terprogram.

1. Tetapkan kedaluwarsa (1 hingga 60 hari).

1. Salin nilai token dan simpan di lokasi yang aman dan aman, seperti [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html). Anda tidak dapat mengambilnya lagi.

Setelah membuat token, aplikasi web menampilkan contoh konfigurasi yang dapat Anda salin langsung ke klien Anda.

## Connect dengan Kiro
<a name="connect-with-kiro"></a>

Untuk pengguna [Kiro](https://kiro.dev/), kekuatan **AWS DevOps Agen** khusus tersedia dari IDE atau dari pasar [Kiro Powers](https://kiro.dev/powers/#aws-devops-agent).

**Langkah 1: Pasang daya**

Instal kekuatan **aws-devops-agent** dari pasar Powers.

**Langkah 2: Mengatur variabel lingkungan**

Mengatur variabel lingkungan berikut untuk mengkonfigurasi koneksi:

```
DEVOPS_AGENT_TOKEN=<your-access-token>
DEVOPS_AGENT_REGION=<your-agent-space-region>
```

**Langkah 3: Menyetujui variabel di Kiro**

Buka **Pengaturan>** **MCP Disetujui Env Vars** dan setujui dan. `DEVOPS_AGENT_TOKEN` `DEVOPS_AGENT_REGION` Kiro tidak meneruskan variabel lingkungan ke server MCP sampai mereka disetujui.

**Langkah 4: Mulai ulang Kiro**

Mulai ulang Kiro untuk menerapkan perubahan.

Daya Kiro termasuk `aws-mcp` sebagai fallback, yang menyediakan akses AWS API langsung ketika titik akhir server jarak jauh tidak tersedia.

## Connect dengan Claude Code
<a name="connect-with-claude-code"></a>

Untuk pengguna [Claude Code](https://code.claude.com/docs/en/overview), AWS DevOps Agen tersedia dari plugin Claude **aws-agents-for-devsecops**, yang membawa kemampuan Agen dan Agen Keamanan ke Claude. AWS DevOps AWS [Instal dari [plugin Claude](https://claude.com/plugins/aws-agents-for-devsecops) atau repositori sumber.](https://github.com/aws/agent-toolkit-for-aws/tree/main/plugins/aws-agents-for-devsecops)

1. Instal plugin **aws-agents-for-devsecops**.

1. Jalankan `/aws-agents-for-devsecops:setup-devops-agent` perintah untuk mengkonfigurasi koneksi Anda.

## Connect dengan klien MCP lainnya
<a name="connect-with-other-mcp-clients"></a>

Untuk MCP-compatible klien apa pun, konfigurasikan server dengan:
+ **URL** — `https://connect.aidevops.{region}.api.aws/mcp`
+ **Header otorisasi** - `Bearer <your-token>`
+ **Timeout** - 120 detik minimum (tanggapan awal dapat memakan waktu 5-30 detik; sesi obrolan yang sedang berlangsung mungkin memakan waktu lebih lama)

Konfigurasi ini juga berfungsi dengan Kiro dan Claude Code jika Anda lebih suka mengonfigurasi koneksi secara manual daripada menggunakan daya atau plugin khusus.

Contoh konfigurasi MCP:

```
{
  "mcpServers": {
    "aws-devops-agent": {
      "url": "https://connect.aidevops.{region}.api.aws/mcp",
      "headers": {
        "Authorization": "Bearer <your-access-token>"
      }
    }
  }
}
```

Ganti `{region}` dengan Wilayah Ruang Agen Anda (misalnya,`us-east-1`) dan `<your-access-token>` dengan nilai token.

## Gunakan otentikasi SiGv4
<a name="use-sigv4-authentication"></a>

Otentikasi SiGv4 menggunakan AWS kredensyal Anda alih-alih token akses. Plugin Kiro power dan Claude Code menyertakan dukungan SigV4 bawaan`mcp-proxy-for-aws`, yang menandatangani permintaan menggunakan kredensyal lokal Anda. AWS 

### Ketika SiGv4 digunakan
<a name="when-sigv4-is-used"></a>
+ Sebagai **fallback** ketika token akses tidak dikonfigurasi atau gagal (kedaluwarsa, tidak valid).
+ Sebagai autentikasi **utama** ketika Anda memiliki beberapa Ruang Agen dan perlu merutekan `agent_space_id` per panggilan alat.
+ Sebagai **pilihan pengguna** — di Claude Code, jalankan skill setup untuk beralih dari token Bearer ke sigV4 auth.

### Prasyarat
<a name="prerequisites"></a>
+ AWS kredensyal yang tersedia di lingkungan (melalui SSO, variabel lingkungan, atau file kredensyal).
+ Kredensyal Anda harus memiliki izin untuk memanggil tindakan Agen AWS DevOps . Untuk izin yang diperlukan, lihat [DevOps Izin Agen IAM](aws-devops-agent-security-devops-agent-iam-permissions.md).
+ `uvx`diinstal (proxy berjalan melalui`uvx mcp-proxy-for-aws@latest`).

### Contoh konfigurasi
<a name="example-configuration"></a>

Untuk mengonfigurasi klien MCP agar menggunakan SiGv4 alih-alih token akses, jalankan server melalui. `mcp-proxy-for-aws` Ganti `{region}` dengan Wilayah Ruang Agen Anda (misalnya,`us-east-1`):

```
{
  "mcpServers": {
    "aws-devops-agent": {
      "command": "uvx",
      "timeout": 120000,
      "args": [
        "mcp-proxy-for-aws@latest",
        "https://connect.aidevops.{region}.api.aws/mcp",
        "--service", "aidevops",
        "--region", "{region}"
      ]
    }
  }
}
```

Proxy menandatangani setiap permintaan dengan AWS kredensyal lokal Anda, jadi tidak diperlukan token akses.

### Multi-Agent-Space perutean
<a name="multi-agent-space-routing"></a>

Dalam mode SiGv4, `agent_space_id` teruskan setiap panggilan alat untuk menentukan Ruang Agen mana yang akan digunakan. Ini memungkinkan untuk merutekan beberapa Ruang Agen dari satu klien.

## Integrasi A2A
<a name="a2a-integration"></a>

Titik akhir A2A mengimplementasikan spesifikasi [A2A v1.0 menggunakan pengikatan HTTP\+JSON](https://a2a-protocol.org/latest/specification/).

### Penemuan kartu agen
<a name="agent-card-discovery"></a>

Ambil kartu agen di:

```
GET https://connect.aidevops.{region}.api.aws/.well-known/agent-card.json
```

### Operasi yang didukung
<a name="supported-operations"></a>
+ `SendMessage`— Kirim pesan dan terima tanggapan.
+ `SendStreamingMessage`— Streaming tanggapan saat dihasilkan.
+ `GetTask`— Periksa status tugas asinkron.
+ `ListTasks`— Daftar tugas untuk Ruang Agen.
+ `CancelTask`— Batalkan tugas yang sedang berjalan.
+ `SubscribeToTask`— Berlangganan pembaruan tugas melalui acara yang dikirim server.

### Keterampilan
<a name="skills"></a>
+ **menyelidiki** — Analisis asinkron mendalam dari masalah operasional (5-8 menit).
+ **obrolan** — Jawaban instan untuk pertanyaan operasional.

## Pertimbangan keamanan
<a name="security-considerations"></a>

### Pelingkupan token
<a name="token-scoping"></a>
+ Gunakan hak istimewa paling sedikit: pilih `read` untuk integrasi hanya-baca, `operate` hanya ketika klien perlu mengirim pesan atau mengelola tugas.
+ Putar token secara berkala. Token kedaluwarsa setelah durasi yang dikonfigurasi (maksimum 60 hari).
+ Simpan token dalam variabel lingkungan atau manajer rahasia. Jangan hardcode token dalam kode sumber.
+ Jangan mengeksekusi respons agen secara otomatis tanpa tinjauan manusia.

### Daftar Izin IP
<a name="ip-allowlist"></a>

Saat membuat token akses, Anda dapat secara opsional menentukan daftar izin IP. Saat dikonfigurasi, token hanya dapat digunakan dari alamat IP atau rentang CIDR yang ditentukan. Permintaan dari IP lain ditolak dengan kesalahan akses ditolak.

### Rotasi dan pencabutan token
<a name="token-rotation-and-revocation"></a>
+ **Rotasi** — Putar token untuk menghasilkan nilai token baru sambil mempertahankan nama token, cakupan, dan daftar izin IP. Token lama segera dibatalkan. Perbarui konfigurasi klien Anda dengan nilai token baru.
+ **Pencabutan** — Jika token dikompromikan, segera cabut. Token yang dicabut tidak dapat digunakan dan tidak dapat dipulihkan.

#### Menanggapi token yang dikompromikan
<a name="responding-to-a-compromised-token"></a>

Jika Anda mencurigai token telah disusupi, ikuti langkah-langkah berikut:

1. **Blokir semua akses token** — Di konsol AWS DevOps Agen, buka Ruang Agen Anda, pilih tab **Konfigurasi**, dan pilih **Nonaktifkan** di bagian Token akses. Ini segera memblokir semua akses berbasis token ke Ruang Agen.

1. **Cabut token yang dikompromikan** **— Di aplikasi web, buka **Pengaturan>** **Token Akses, pilih token** yang disusupi, dan pilih Cabut.** Anda dapat mencabut token bahkan saat token akses dinonaktifkan.

1. **Re-enable token akses** — Setelah mencabut token yang disusupi, aktifkan kembali token akses dari tab **Konfigurasi** jika Anda masih memerlukan akses berbasis token.

#### Pencabutan token secara terprogram
<a name="revoking-tokens-programmatically"></a>

Anda juga dapat mencabut token secara terprogram menggunakan. `awscurl` Perintah berikut menggunakan otentikasi SiGv4. Ganti Region (`us-east-1`) dengan Region tempat Agen Space Anda dibuat.

**Catatan:** Langkah 1 menggunakan AWS CLI. Langkah 2 dan 3 menggunakan [awscurl](https://github.com/okigan/awscurl), alat baris perintah yang menandatangani permintaan HTTP dengan SigV4, karena operasi token akses belum memiliki perintah CLI khusus. AWS 

**Langkah 1: Daftar Ruang Agen Anda**

```
aws aidevops list-agent-spaces --region us-east-1
```

**Langkah 2: Daftar token akses untuk Ruang Agen**

```
awscurl --service aidevops --region us-east-1 \
  -H "Accept: application/json" \
  "https://cp.aidevops.us-east-1.api.aws/v1/agentspaces/{agentSpaceId}/access-tokens"
```

**Langkah 3: Cabut token**

```
awscurl --service aidevops --region us-east-1 -X POST \
  -H "Accept: application/json" \
  "https://cp.aidevops.us-east-1.api.aws/v1/agentspaces/{agentSpaceId}/access-tokens/{accessTokenId}/revoke"
```

Ganti `{agentSpaceId}` dan `{accessTokenId}` dengan nilai dari tanggapan sebelumnya.

### Ketertelusuran
<a name="traceability"></a>

Ketika token akses digunakan, AWS DevOps Agen mengambil peran atas nama Anda untuk melakukan tindakan. `AssumeRole`Panggilan ini masuk AWS CloudTrail dengan tag sesi yang mengidentifikasi token dan pemanggil:
+ `AgentSpaceId`— Pengidentifikasi Ruang Agen.
+ `UserId`— Identitas pembuat token.
+ `AccessTokenId`— Pengidentifikasi unik token.
+ `TokenName`— Nama token akses yang digunakan.
+ `ClientType`— Protokol yang digunakan (MCP, A2A).
+ `SourceIp`— Alamat IP klien.
+ `UserAgent`— User-Agent String klien (bila tersedia).

Pemanggilan titik akhir MCP dan A2A langsung tidak masuk untuk kedua metode otentikasi. CloudTrail Setiap pemanggilan memiliki panggilan AWS API hilir terkait yang masuk CloudTrail, dengan nama sesi peran yang dapat diidentifikasi dalam format. `token_{spaceId}_{timestamp}_{tokenName}`

### Batasan kebijakan titik akhir VPC
<a name="vpc-endpoint-policy-limitation"></a>

Titik akhir server jarak jauh tidak mendukung kebijakan titik akhir VPC. Panggilan yang menggunakan token akses atau otentikasi SigV4 tidak dapat dibatasi oleh kebijakan titik akhir VPC.

### Menonaktifkan token akses
<a name="disabling-access-tokens"></a>

Fitur token akses dinonaktifkan secara default. Untuk menonaktifkannya setelah mengaktifkan:

1. Buka tab **Konfigurasi** Ruang Agen Anda.

1. Di bagian **Access token**, pilih **Nonaktifkan**.

Menonaktifkan segera memblokir semua akses berbasis token. Token yang ada tidak dihapus tetapi tidak dapat digunakan sampai fitur diaktifkan kembali.

Untuk mencegah pengguna di organisasi Anda mengaktifkan token akses, buat Kebijakan Kontrol Layanan (SCP) yang menolak tindakan API token akses dan `UpdateAgentSpace` tindakan (yang mengontrol sakelar token akses):

**Catatan:** Menyangkal `aidevops:UpdateAgentSpace` juga mencegah pembaruan Ruang Agen lainnya (nama, deskripsi, lokal). Jika ini terlalu luas, hilangkan dari SCP — penyangkalan yang tersisa masih mencegah pembuatan dan penggunaan token, bahkan jika seseorang mengaktifkan fitur tersebut.

```
{
  "Version": "2012-10-17",		 	 	 		 	 	 
  "Statement": [
    {
      "Sid": "DenyAccessTokenOperations",
      "Effect": "Deny",
      "Action": [
        "aidevops:UpdateAgentSpace",
        "aidevops:CreateAccessToken",
        "aidevops:GetAccessToken",
        "aidevops:ListAccessTokens",
        "aidevops:RotateAccessToken",
        "aidevops:RevokeAccessToken"
      ],
      "Resource": "*"
    }
  ]
}
```

## Pemecahan masalah
<a name="troubleshooting"></a>


| Gejala | Penyebab | Resolusi | 
| --- | --- | --- | 
| HTTP 401 Tidak Sah | Token tidak valid atau kedaluwarsa. | Buat token baru atau putar token yang ada di aplikasi web. | 
| HTTP 400 "A2A-Version header diperlukan” | Header versi protokol tidak ada. Hanya A2A v1.0 yang didukung. | Tambahkan A2A-Version: 1.0 header ke permintaan A2A. | 
| Batas waktu permintaan | Respons awal membutuhkan waktu 5-30 detik. Investigasi memakan waktu 5-8 menit. | Atur batas waktu klien setidaknya 120 detik. | 
| Koneksi ditolak | URL atau Wilayah titik akhir salah. | Verifikasi format URL: https://connect.aidevops.{region}.api.aws | 