Menggunakan profil browser
Profil browser memungkinkan Anda untuk mempertahankan dan menggunakan kembali data profil browser di beberapa sesi browser. Profil browser menyimpan informasi sesi termasuk cookie dan penyimpanan lokal.
Misalnya, Anda dapat mengautentikasi ke situs web sekali dalam sesi browser dan menyimpan data profil ke sumber daya profil browser. Ketika Anda memulai sesi browser baru dengan profil yang disimpan, status otentikasi Anda dipertahankan, dan Anda tetap masuk. Ini memungkinkan agen untuk melakukan tugas di situs web yang diautentikasi tanpa memerlukan intervensi manual.
Gambaran umum
Profil browser di Amazon Bedrock AgentCore berfungsi sebagai berikut:
-
Buat sumber daya profil browser yang akan digunakan kembali di seluruh sesi browser
-
Mulai sesi browser dan lakukan tindakan (seperti masuk ke situs web atau memasukkan item ke keranjang belanja) yang mengisi cookie dan penyimpanan lokal
-
Simpan data profil dari sesi browser saat ini ke sumber daya profil browser
-
Mulai sesi browser baru menggunakan profil yang disimpan untuk memulihkan keadaan sebelumnya
Prasyarat
Sebelum menggunakan profil browser, pastikan Anda memiliki:
-
Menyelesaikan Prasyarat Browser umum
-
Izin IAM untuk mengelola sumber daya profil. Tambahkan izin berikut ke kebijakan IAM Anda:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "BedrockAgentCoreBrowserProfileManagementAccess",
"Effect": "Allow",
"Action": [
"bedrock-agentcore:CreateBrowserProfile",
"bedrock-agentcore:ListBrowserProfiles",
"bedrock-agentcore:GetBrowserProfile",
"bedrock-agentcore:DeleteBrowserProfile"
],
"Resource": "arn:aws:bedrock-agentcore:<Region>:<account_id>:browser-profile/*"
}
]
}
-
Izin IAM untuk menyimpan dan memuat profil. Tambahkan izin berikut ke kebijakan IAM Anda:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "BedrockAgentCoreBrowserProfileUsageAccess",
"Effect": "Allow",
"Action": [
"bedrock-agentcore:StartBrowserSession",
"bedrock-agentcore:SaveBrowserSessionProfile"
],
"Resource": [
"arn:aws:bedrock-agentcore:<Region>:<account_id>:browser-profile/*",
"arn:aws:bedrock-agentcore:<Region>:<account_id>:browser-custom/*",
"arn:aws:bedrock-agentcore:<Region>:<account_id>:browser/*"
]
}
]
}
Memulai dengan profil browser
Bagian ini memandu Anda melalui pembuatan profil browser, menyimpan data sesi ke dalamnya, dan menggunakan kembali profil di sesi berikutnya.
Langkah 1: Buat profil browser
Buat sumber daya profil browser untuk menyimpan data sesi.
contoh
- AWS CLI
-
-
Untuk membuat profil browser menggunakan AWS CLI:
aws bedrock-agentcore-control create-browser-profile \
--region <Region> \
--name "profile_demo" \
--description "example profile"
- Boto3
-
-
Untuk membuat profil browser menggunakan AWS SDK for Python (Boto3):
import boto3
region = "us-west-2"
client = boto3.client('bedrock-agentcore-control', region_name=region)
response = client.create_browser_profile(
name="profile_demo",
description="example profile"
)
profile_id = response['profileId']
print(f"Created profile: {profile_id}")
- API
-
-
Untuk membuat profil browser menggunakan API:
awscurl -X PUT \
"https://bedrock-agentcore-control.<Region>.amazonaws.com/browser-profiles" \
-H "Content-Type: application/json" \
--service bedrock-agentcore-control \
--region <Region> \
-d '{
"name": "profile_demo",
"description": "example profile",
"clientToken": "FC21DD1F-FA7B-40EC-8D3A-12E029A1BFF3"
}'
Langkah 2: Mulai sesi browser dan lakukan tindakan
Mulai sesi browser dan lakukan tindakan seperti masuk ke situs web. Status sesi, termasuk cookie dan penyimpanan lokal, akan ditangkap.
contoh
- AWS CLI
-
-
Untuk memulai sesi browser menggunakan AWS CLI:
aws bedrock-agentcore start-browser-session \
--region <Region> \
--browser-identifier "aws.browser.v1" \
--name "my-session" \
--session-timeout-seconds 3600
Gunakan ID sesi yang dikembalikan untuk berinteraksi dengan browser dan melakukan tindakan yang Anda inginkan (misalnya, masuk ke situs web).
- Boto3
-
-
Untuk memulai sesi browser menggunakan Boto3:
import boto3
region = "us-west-2"
client = boto3.client('bedrock-agentcore', region_name=region)
response = client.start_browser_session(
browserIdentifier="aws.browser.v1",
name="my-session",
sessionTimeoutSeconds=3600
)
session_id = response['sessionId']
print(f"Session ID: {session_id}")
# Use the session to perform actions (e.g., login to a website)
# ... your browser automation code here ...
- API
-
-
Untuk memulai sesi browser menggunakan API:
awscurl -X PUT \
"https://bedrock-agentcore.<Region>.amazonaws.com/browsers/aws.browser.v1/sessions/start" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
--service bedrock-agentcore \
--region <Region> \
-d '{
"name": "my-session",
"sessionTimeoutSeconds": 3600
}'
Langkah 3: Simpan sesi ke profil
Setelah melakukan tindakan dalam sesi browser, simpan status saat ini ke profil browser Anda. Ini menangkap cookie, penyimpanan lokal, dan data sesi lainnya.
contoh
- AWS CLI
-
-
Untuk menyimpan sesi browser ke profil menggunakan AWS CLI:
aws bedrock-agentcore save-browser-session-profile \
--region <Region> \
--profile-identifier "<ProfileId>" \
--browser-identifier "aws.browser.v1" \
--session-id "<SessionId>"
- Boto3
-
-
Untuk menyimpan sesi browser ke profil menggunakan Boto3:
import boto3
region = "us-west-2"
client = boto3.client('bedrock-agentcore', region_name=region)
response = client.save_browser_session_profile(
profileIdentifier=profile_id, # From Step 1
browserIdentifier="aws.browser.v1",
sessionId=session_id # From Step 2
)
print(f"Profile saved successfully")
- API
-
-
Untuk menyimpan sesi browser ke profil menggunakan API:
awscurl -X PUT \
"https://bedrock-agentcore.<Region>.amazonaws.com/browser-profiles/<ProfileId>/save" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
--service bedrock-agentcore \
--region <Region> \
-d '{
"browserIdentifier": "aws.browser.v1",
"sessionId": "<SessionId>",
"clientToken": "52866F95-4468-4B6C-920C-09A00D36F04E"
}'
Langkah 4: Mulai sesi baru dengan profil
Mulai sesi browser baru menggunakan profil yang disimpan. Sesi akan diinisialisasi dengan status tersimpan, termasuk cookie otentikasi dan penyimpanan lokal.
contoh
- AWS CLI
-
-
Untuk memulai sesi browser dengan profil menggunakan AWS CLI:
aws bedrock-agentcore start-browser-session \
--region <Region> \
--browser-identifier "aws.browser.v1" \
--name "session-with-profile" \
--session-timeout-seconds 3600 \
--profile-configuration '{
"profileIdentifier":"<ProfileId>"
}'
- Boto3
-
-
Untuk memulai sesi browser dengan profil menggunakan Boto3:
import boto3
region = "us-west-2"
client = boto3.client('bedrock-agentcore', region_name=region)
response = client.start_browser_session(
browserIdentifier="aws.browser.v1",
name="session-with-profile",
sessionTimeoutSeconds=3600,
profileConfiguration={
"profileIdentifier": profile_id # From Step 1
}
)
new_session_id = response['sessionId']
print(f"New session started with profile: {new_session_id}")
print("Session is now authenticated with saved cookies and state")
- API
-
-
Untuk memulai sesi browser dengan profil menggunakan API:
awscurl -X PUT \
"https://bedrock-agentcore.<Region>.amazonaws.com/browsers/aws.browser.v1/sessions/start" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
--service bedrock-agentcore \
--region <Region> \
-d '{
"name": "session-with-profile",
"sessionTimeoutSeconds": 3600,
"profileConfiguration": {
"profileIdentifier": "<ProfileId>"
},
"clientToken": "8FAAFF7F-7803-4C40-A7BD-139C6D008646"
}'
Operasi profil browser
Bagian ini menjelaskan operasi tambahan untuk mengelola profil browser.
Daftar profil browser
Anda dapat mencantumkan semua profil browser di akun Anda.
contoh
- AWS CLI
-
-
Untuk membuat daftar profil browser menggunakan AWS CLI:
aws bedrock-agentcore-control list-browser-profiles \
--region <Region>
- Boto3
-
-
Untuk membuat daftar profil browser menggunakan Boto3:
import boto3
region = "us-west-2"
client = boto3.client('bedrock-agentcore-control', region_name=region)
response = client.list_browser_profiles()
for profile in response.get('items', []):
print(f"Profile ID: {profile['profileId']}")
print(f"Name: {profile['name']}")
print(f"Status: {profile['status']}")
print("---")
- API
-
-
Untuk membuat daftar profil browser menggunakan API:
awscurl -X POST \
"https://bedrock-agentcore-control.<Region>.amazonaws.com/browser-profiles/list" \
-H "Content-Type: application/json" \
--service bedrock-agentcore-control \
--region <Region>
Mendapatkan detail profil browser
Anda dapat mengambil detail tentang profil browser tertentu.
contoh
- AWS CLI
-
-
Untuk mendapatkan detail profil browser menggunakan AWS CLI:
aws bedrock-agentcore-control get-browser-profile \
--region <Region> \
--profile-id "<ProfileId>"
- Boto3
-
-
Untuk mendapatkan detail profil browser menggunakan Boto3:
import boto3
region = "us-west-2"
client = boto3.client('bedrock-agentcore-control', region_name=region)
response = client.get_browser_profile(
profileId=profile_id
)
print(f"Profile ID: {response['profileId']}")
print(f"Name: {response['name']}")
print(f"Description: {response.get('description', 'N/A')}")
print(f"Status: {response['status']}")
print(f"Created: {response['createdAt']}")
- API
-
-
Untuk mendapatkan detail profil browser menggunakan API:
awscurl -X GET \
"https://bedrock-agentcore-control.<Region>.amazonaws.com/browser-profiles/<ProfileId>" \
-H "Content-Type: application/json" \
--service bedrock-agentcore-control \
--region <Region>
Menghapus profil browser
Ketika Anda tidak lagi membutuhkan profil browser, Anda dapat menghapusnya untuk membebaskan sumber daya.
contoh
- AWS CLI
-
-
Untuk menghapus profil browser menggunakan AWS CLI:
aws bedrock-agentcore-control delete-browser-profile \
--region <Region> \
--profile-id "<ProfileId>"
- Boto3
-
-
Untuk menghapus profil browser menggunakan Boto3:
import boto3
region = "us-west-2"
client = boto3.client('bedrock-agentcore-control', region_name=region)
response = client.delete_browser_profile(
profileId=profile_id
)
print(f"Profile deleted successfully")
- API
-
-
Untuk menghapus profil browser menggunakan API:
awscurl -X DELETE \
"https://bedrock-agentcore-control.<Region>.amazonaws.com/browser-profiles/<ProfileId>" \
-H "Content-Type: application/json" \
--service bedrock-agentcore-control \
--region <Region>
Kasus penggunaan
Profil browser berguna untuk:
-
Otentikasi persisten: Pertahankan sesi login di beberapa pemanggilan browser tanpa mengautentikasi ulang setiap kali
-
Multi-step alur kerja: Jalankan alur kerja kompleks yang mencakup beberapa sesi sambil mempertahankan status dan konteks (dalam cookie atau penyimpanan lokal)
-
Tugas otomatis: Aktifkan agen AI untuk melakukan tugas di situs web yang diautentikasi tanpa intervensi manual
Pertimbangan-pertimbangan
-
Persistensi Profil: Data profil disimpan saat Anda secara eksplisit memanggil operasi penyimpanan. Pastikan Anda menyimpan profil sebelum mengakhiri sesi untuk mempertahankan status.
-
Isolasi Sesi: Setiap sesi browser menggunakan profil beroperasi secara independen. Perubahan yang dilakukan dalam satu sesi tidak terlihat di sesi bersamaan lainnya.
-
Pemuatan Profil: Perubahan profil yang disimpan hanya berlaku untuk sesi baru. Sesi aktif terus menggunakan status profil sejak saat dimulai dan tidak akan mencerminkan pembaruan yang dibuat ke profil setelah sesi dimulai.
-
Keamanan: Profil browser mungkin berisi data sensitif seperti cookie otentikasi. Pastikan kebijakan IAM yang tepat diberlakukan untuk membatasi akses ke sumber daya profil.
-
Pembaruan Profil: Saat Anda menyimpan sesi ke profil, itu menimpa data profil sebelumnya. Pertimbangkan alur kerja Anda dengan hati-hati untuk menghindari kehilangan informasi status penting.
-
Kedaluwarsa Cookie: Cookie memiliki waktu kedaluwarsa sendiri yang ditetapkan oleh situs web. Profil browser mempertahankan cookie, tetapi cookie yang kedaluwarsa secara otomatis dihapus oleh browser sesuai dengan tanggal kedaluwarsanya.