

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

# Mengkonfigurasi konektivitas VPC untuk sumber data
<a name="kb-managed-vpc-configuration"></a>

Beberapa sumber data berjalan pada sumber daya pribadi yang tidak dapat dijangkau melalui internet publik, seperti instance Confluence Data Center lokal yang Anda tampilkan dengan penyeimbang beban internal di VPC Anda. Untuk merayapi sumber data ini, Anda membuat konfigurasi VPC. Amazon Bedrock menggunakan konfigurasi untuk menyediakan jalur jaringan pribadi ke VPC Anda dan menjangkau sumber daya.

Konfigurasi VPC adalah sumber daya yang dapat digunakan kembali pada basis pengetahuan Anda. Anda membuatnya sekali, lalu mereferensikannya dengan ID dari satu atau lebih sumber data. Saat Anda membuat sumber data yang membutuhkan konektivitas pribadi, Anda memilih konfigurasi VPC yang ada atau membuat yang baru.

**catatan**  
Saat Amazon Bedrock menyediakan konfigurasi VPC, ia mengasumsikan peran AWS Identity and Access Management (IAM) yang terkait dengan basis pengetahuan Anda untuk membuat sekumpulan kecil sumber daya jaringan di akun Anda. Setiap sumber daya yang dibuat Amazon Bedrock diberi tag`ManagedBy=VPCProxyService`, dan peran tersebut hanya dapat bertindak pada sumber daya yang membawa tag tersebut. Lihat [Izin peran IAM basis pengetahuan](#kb-managed-vpc-configuration-role).

## Apa yang Anda berikan
<a name="kb-managed-vpc-configuration-provide"></a>

Untuk membuat konfigurasi VPC, Anda menyediakan yang berikut:


**Input konfigurasi VPC**  

| Input | Mengapa dibutuhkan | 
| --- | --- | 
| VPC dan satu atau lebih subnet | Di mana Amazon Bedrock menempatkan titik masuk jaringan (gateway pribadi) ke VPC Anda. Anda menyediakan 1—6 subnet dari VPC yang dipilih. | 
| Target sumber daya dan port | Alamat IP pribadi atau nama DNS (dan port) sumber daya yang ingin Anda jangkau. | 
| Peran IAM basis pengetahuan | Amazon Bedrock mengambil peran ini untuk menyediakan sumber daya jaringan di akun Anda. Lihat [Izin peran IAM basis pengetahuan](#kb-managed-vpc-configuration-role). | 

Anda tidak menyediakan grup keamanan. Amazon Bedrock menggunakan grup keamanan default VPC Anda untuk gateway. Pastikan aturan outbound (egress) grup keamanan default memungkinkan mencapai target Anda pada port yang diminta. Lihat [Keluar dari grup keamanan default](#kb-managed-vpc-configuration-egress).

## Persyaratan jaringan
<a name="kb-managed-vpc-configuration-network"></a>

Amazon Bedrock menjangkau sumber daya Anda melalui gateway pribadi yang dibuat dengan antarmuka jaringan pribadi saja (tidak ada alamat IP publik). Gateway mencapai target Anda melalui jaringan pribadi (lokal) VPC Anda dan tidak dapat mencapai alamat IP publik. Target sumber daya Anda harus dapat dijangkau secara pribadi dari dalam VPC Anda:
+ Penyeimbang beban internal (`scheme: internal`) yang nama DNS-nya diselesaikan ke alamat pribadi (misalnya,, `10.{{x}}``172.{{x}}`, atau`192.168.{{x}}`).
+ Alamat IP pribadi, atau nama DNS pribadi yang diselesaikan ke alamat pribadi dalam VPC.

Penyeimbang beban yang menghadap ke internet tidak didukung. Penyeimbang beban yang menghadap ke internet mengembalikan alamat IP publiknya bahkan ke kueri DNS in-VPC, dan gateway pribadi tidak dapat mencapai alamat tersebut. Jika sumber daya Anda saat ini hanya diekspos melalui penyeimbang beban yang menghadap ke internet, buat (atau arahkan pada) penyeimbang beban internal di VPC yang sama dan gunakan nama DNS-nya sebagai target sumber daya.

## Buat konfigurasi VPC
<a name="kb-managed-vpc-configuration-create"></a>

------
#### [ Console ]

**Untuk menambahkan konfigurasi VPC**

1. Di konfigurasi sumber data, di bawah konfigurasi ** VPC**, pilih ** Tambahkan konfigurasi VPC. ** Jika konfigurasi yang sesuai sudah ada, pilih sebagai gantinya untuk menggunakannya kembali di seluruh sumber data.

1. (Opsional) Masukkan ** Nama ** dan ** Deskripsi ** untuk konfigurasi.

1. Untuk ID ** VPC**, pilih VPC yang akan digunakan untuk konektivitas.

1. Untuk ID ** Subnet**, pilih satu atau lebih subnet dari VPC yang dipilih.

1. Untuk target ** sumber daya**, masukkan nama host atau alamat IP sumber daya Anda (misalnya, `10.0.1.50` atau`confluence.internal.example.com`).

1. Untuk ** Port**, masukkan nomor port untuk terhubung (misalnya, `443` atau`8090`).

1. Untuk ** Protokol**, pilih ** HTTPS ** atau ** HTTP**.

1. Untuk mode ** Resolusi**, pilih cara alamat target sumber daya diselesaikan:
   + **Publik ** — Target sumber daya adalah nama host atau alamat IP yang dapat diselesaikan secara publik.
   + **Di VPC ** — Target sumber daya hanya dapat diselesaikan dalam VPC Anda. Ini adalah kasus umum untuk sumber daya internal.

1. (Opsional) Untuk header ** Host**, masukkan nilai `Host` header untuk dikirim dengan permintaan. Setel ini hanya jika sumber daya Anda (atau router hulu) merutekan dengan `Host` header HTTP.

1. (Diperlukan untuk HTTPS) Untuk nama server ** TLS**, masukkan identitas sertifikat TLS yang diharapkan (Nama Alternatif Subjek) untuk sumber daya. Satu wildcard paling kiri diperbolehkan (misalnya,). `*.example.com`

1. Pilih **Buat**.

------
#### [ API ]

Untuk membuat konfigurasi VPC, kirim `CreateVpcConfiguration` permintaan. Semua operasi dicakup ke basis pengetahuan melalui parameter `knowledgeBaseId` jalur; badan permintaan tidak menyertakan ID akun atau ARN peran, karena Amazon Bedrock menyelesaikannya dari basis pengetahuan.

```
POST /knowledgebases/{{knowledgeBaseId}}/vpcconfigurations/
```

Badan permintaan menggunakan bidang berikut.


**CreateVpcConfiguration bidang**  

| Bidang | Diperlukan | Deskripsi | 
| --- | --- | --- | 
| vpcId | Ya | ID VPC. Co ^vpc-[a-zA-Z0-9]\+$ cokkan, hingga 64 karakter. | 
| subnetIds | Ya | 1—6 ID subnet dari VPC yang ditentukan. Setiap pertandingan^subnet-[a-zA-Z0-9]\+$. | 
| resourceTarget | Ya | Alamat IPv4 atau nama DNS sumber daya (1—255 karakter). Lihat [Pembatasan target sumber daya](#kb-managed-vpc-configuration-target). | 
| port | Ya | Port untuk terhubung (1—65535). | 
| protocol | Ya | HTTP atau HTTPS. | 
| resolutionMode | Ya | PUBLIC atau IN\_VPC. Gunakan IN\_VPC saat target diselesaikan hanya di dalam VPC Anda. | 
| tlsServerName | Bersyarat | Diper protocol lukan kapanHTTPS. Nama host cocok dengan sertifikat TLS sumber daya (hingga 253 karakter). Satu wildcard paling kiri diperbolehkan. Tidak harus menyertakan port. | 
| hostHeader | Tidak | Nilai Host header HTTP untuk dikirim (hingga 255 karakter). Tetapkan hanya jika rute sumber daya Anda dengan Host header. | 
| name | Tidak | Nama yang dapat dibaca manusia (1-128 karakter). | 
| description | Tidak | Deskripsi (hingga 512 karakter). | 
| clientToken | Tidak | Token idempotensi. | 

Penciptaan tidak sinkron. `CreateVpcConfiguration`mengembalikan `202` respons dengan `vpcConfigurationId` a dan status`CREATING`. Jajak pendapat `GetVpcConfiguration` sampai stat `CREATED` usnya (atau`CREATE_FAILED`, dalam hal `statusMessage` ini menyebutkan penyebabnya). Gunakan `ListVpcConfigurations` untuk membuat daftar konfigurasi dan `DeleteVpcConfiguration` untuk menghapusnya.

**catatan**  
Jika Anda membuat beberapa konfigurasi di VPC yang sama dengan kumpulan subnet yang sama, mereka berbagi satu gateway. Satu set subnet yang berbeda menyediakan gateway terpisah.

------

## Protokol, nama server TLS, dan header host
<a name="kb-managed-vpc-configuration-fields"></a>

Ketiga pengaturan ini adalah yang paling sering salah konfigurasi. Gunakan panduan berikut untuk memilih nilai yang tepat.

`protocol`  
Pilih `HTTP` untuk memanggil sumber daya melalui HTTP plaintext, atau `HTTPS` untuk memanggilnya melalui TLS.

`tlsServerName`  
Diper `protocol` lukan kapan`HTTPS`. Ini adalah nama server yang cocok dengan Nama Alternatif Subjek sertifikat TLS sumber daya Anda selama pemanggilan. Setel ke nama host tempat sertifikat Anda dikeluarkan (misalnya,`app.internal.example.com`). Satu wildcard paling kiri diperbolehkan (misalnya,). `*.example.com` Jika sumber daya dicapai oleh alamat IP tetapi menyajikan sertifikat untuk nama, setel `tlsServerName` ke nama itu. Jika sertifikat tidak cocok, pemanggilan gagal dalam pemeriksaan identitas TLS. Nilai ini harus berupa nama host tanpa port.

`hostHeader`  
Opsional, dan masalah lapisan aplikasi yang independen dari. `tlsServerName` Setel hanya jika sumber daya Anda, atau router hulu atau masuk, merutekan dengan `Host` header HTTP dan host itu berbeda dari apa yang seharusnya Anda kirim. Jika sumber daya Anda melayani satu situs dan tidak merutekan`Host`, biarkan tidak disetel.

`resolutionMode`  
Pilih `PUBLIC` kapan target sumber daya adalah nama yang dapat diselesaikan secara publik atau alamat IP publik. Pilih `IN_VPC` kapan target sumber daya diselesaikan hanya di dalam VPC Anda (DNS pribadi atau alamat IP pribadi), yang merupakan kasus umum untuk sumber daya internal. Target IP pribadi literal (misalnya,`10.0.5.20`) berfungsi di kedua mode, karena tidak ada nama DNS untuk diselesaikan.

## Pembatasan target sumber daya
<a name="kb-managed-vpc-configuration-target"></a>

Amazon Bedrock memvalid `resourceTarget` asi saat Anda membuat konfigurasi untuk mencegah layanan diarahkan pada dirinya sendiri atau pada infrastruktur internal. Target berikut ditolak:
+ Alamat loopback (`127.0.0.0/8`,`::1`) dan`localhost`.
+ Link-local alamat (`169.254.0.0/16`,`fe80::/10`), termasuk titik akhir metadata instance`169.254.169.254`.
+ Wildcard atau alamat lokal apa pun (`0.0.0.0`,`::`) dan blok. `0.0.0.0/8`
+ Alamat multicast.
+ Literal IPv6. Gateway disediakan IPv4-only, jadi target IP harus berupa alamat IPv4 dotted-quad.

Nama DNS diperbolehkan. Validasi tidak menyelesaikannya, jadi target harus tetap dapat dijangkau dari subnet gateway Anda.

## Keluar dari grup keamanan default
<a name="kb-managed-vpc-configuration-egress"></a>

Karena Amazon Bedrock menggunakan grup keamanan default VPC Anda untuk gateway, aturan keluar grup keamanan tersebut harus mengizinkan pencapaian. `resourceTarget` `port` Jika grup keamanan default dikunci, pembuatan gagal dengan cepat dengan pesan yang jelas daripada waktu habis nanti. Sebelum Anda membuat konfigurasi, pastikan aturan keluar memungkinkan lalu lintas dari subnet gateway ke target dan port.

## Izin peran IAM basis pengetahuan
<a name="kb-managed-vpc-configuration-role"></a>

Amazon Bedrock mengambil peran IAM yang terkait dengan basis pengetahuan Anda untuk menyediakan dan kemudian menghancurkan sumber daya jaringan di akun Anda. Peran harus memberikan izin buat dan hapus di bawah ini, serta izin baca yang membuat idempotent menghapus yang dicoba ulang. Setiap sumber daya yang dibuat Amazon Bedrock diberi tag`ManagedBy=VPCProxyService`, dan izin destruktif dilindungi pada tag itu, sehingga peran hanya dapat bertindak pada sumber daya yang dibuat oleh fitur ini.
+ **Buat ** —`vpc-lattice:CreateResourceGateway`,,`vpc-lattice:CreateResourceConfiguration`,`vpc-lattice:TagResource`,`vpc-lattice:PutResourcePolicy`,`ram:CreateResourceShare`, `ram:TagResource``ram:AssociateResourceShare`, dan `iam:CreateServiceLinkedRole` (satu kali, untuk peran terkait layanan VPC Lattice).
+ **Hapus ** -`vpc-lattice:DeleteResourceGateway`,`vpc-lattice:DeleteResourceConfiguration`, dan`ram:DeleteResourceShare`.
+ **Baca (validasi dan idempotensi) ** -`vpc-lattice:GetResourceGateway`,,`vpc-lattice:GetResourceConfiguration`,`ram:GetResourceShares`, `ec2:DescribeSubnets``ec2:DescribeSecurityGroups`, dan. `ec2:DescribeVpcs`

**penting**  
Berikan keduanya `vpc-lattice:GetResourceGateway` dan`vpc-lattice:GetResourceConfiguration`. Karena izin penghapusan memiliki cakupan tag, menghapus sumber daya yang sudah dihapus mengembalikan kesalahan akses yang ditolak daripada kesalahan yang tidak ditemukan. Amazon Bedrock menggunakan izin baca tanpa tag ini untuk memberi tahu sumber daya yang sudah dihapus (diperlakukan sebagai berhasil) dari masalah izin asli. Tanpa mereka, penghapusan yang dicoba ulang setelah kegagalan sebagian bisa macet.

Kebijakan contoh berikut memberikan izin yang diperlukan. Ganti {{region}} dan {{accountId}} dengan nilai-nilai Anda.

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VpcProxyCreateTagged",
            "Effect": "Allow",
            "Action": [
                "vpc-lattice:CreateResourceGateway",
                "vpc-lattice:CreateResourceConfiguration",
                "vpc-lattice:TagResource"
            ],
            "Resource": [
                "arn:aws:vpc-lattice:{{region}}:{{accountId}}:resourcegateway/*",
                "arn:aws:vpc-lattice:{{region}}:{{accountId}}:resourceconfiguration/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/ManagedBy": "VPCProxyService",
                    "aws:ResourceTag/ManagedBy": "VPCProxyService"
                },
                "ForAllValues:StringEquals": { "aws:TagKeys": ["ManagedBy"] }
            }
        },
        {
            "Sid": "VpcProxyPutResourcePolicy",
            "Effect": "Allow",
            "Action": "vpc-lattice:PutResourcePolicy",
            "Resource": [
                "arn:aws:vpc-lattice:{{region}}:{{accountId}}:resourceconfiguration/*"
            ],
            "Condition": {
                "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" }
            }
        },
        {
            "Sid": "VpcProxyRamCreate",
            "Effect": "Allow",
            "Action": "ram:CreateResourceShare",
            "Resource": "*",
            "Condition": {
                "StringEquals": { "aws:RequestTag/ManagedBy": "VPCProxyService" },
                "StringEqualsIfExists": {
                    "ram:RequestedResourceType": "vpc-lattice:ResourceConfiguration"
                }
            }
        },
        {
            "Sid": "VpcProxyRamAssociate",
            "Effect": "Allow",
            "Action": "ram:AssociateResourceShare",
            "Resource": "*",
            "Condition": {
                "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" }
            }
        },
        {
            "Sid": "VpcProxyRamTagOnCreate",
            "Effect": "Allow",
            "Action": "ram:TagResource",
            "Resource": [
                "arn:aws:ram:{{region}}:{{accountId}}:resource-share/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/ManagedBy": "VPCProxyService",
                    "aws:ResourceTag/ManagedBy": "VPCProxyService"
                },
                "ForAllValues:StringEquals": { "aws:TagKeys": ["ManagedBy"] }
            }
        },
        {
            "Sid": "VpcProxyDeleteTagged",
            "Effect": "Allow",
            "Action": [
                "vpc-lattice:DeleteResourceConfiguration",
                "vpc-lattice:DeleteResourceGateway"
            ],
            "Resource": [
                "arn:aws:vpc-lattice:{{region}}:{{accountId}}:resourcegateway/*",
                "arn:aws:vpc-lattice:{{region}}:{{accountId}}:resourceconfiguration/*"
            ],
            "Condition": {
                "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" }
            }
        },
        {
            "Sid": "VpcProxyRamDeleteTagged",
            "Effect": "Allow",
            "Action": "ram:DeleteResourceShare",
            "Resource": [
                "arn:aws:ram:{{region}}:{{accountId}}:resource-share/*"
            ],
            "Condition": {
                "StringEquals": { "aws:ResourceTag/ManagedBy": "VPCProxyService" },
                "StringLike": { "ram:ResourceShareName": "vpc-proxy-share-*" }
            }
        },
        {
            "Sid": "VpcProxyGetResource",
            "Effect": "Allow",
            "Action": [
                "vpc-lattice:GetResourceConfiguration",
                "vpc-lattice:GetResourceGateway"
            ],
            "Resource": [
                "arn:aws:vpc-lattice:{{region}}:{{accountId}}:resourcegateway/*",
                "arn:aws:vpc-lattice:{{region}}:{{accountId}}:resourceconfiguration/*"
            ]
        },
        {
            "Sid": "VpcProxyRamGetResourceShares",
            "Effect": "Allow",
            "Action": "ram:GetResourceShares",
            "Resource": "*"
        },
        {
            "Sid": "VpcProxyEc2Describe",
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeVpcs"
            ],
            "Resource": "*"
        },
        {
            "Sid": "VpcProxyLatticeServiceLinkedRole",
            "Effect": "Allow",
            "Action": "iam:CreateServiceLinkedRole",
            "Resource": [
                "arn:aws:iam::{{accountId}}:role/aws-service-role/vpc-lattice.amazonaws.com/*"
            ],
            "Condition": {
                "StringEquals": { "iam:AWSServiceName": "vpc-lattice.amazonaws.com" }
            }
        }
    ]
}
```

## Siklus hidup
<a name="kb-managed-vpc-configuration-lifecycle"></a>
+ Transisi konfigurasi VPC melalui `CREATING` ke`CREATED`, atau ke`CREATE_FAILED`. Saat Anda menghapusnya, statusnya adalah`DELETING`, atau`DELETE_FAILED`.
+ Pembuatan dan penghapusan tidak sinkron. Polling `GetVpcConfiguration` untuk melacak kemajuan. Jika gagal, se `statusMessage` butkan penyebab yang dapat ditindaklanjuti, seperti izin yang hilang.
+ Penghapusan adalah idempoten. Penghapusan yang sebagian selesai konvergen saat Anda mencobanya lagi.