Utilizzo dei profili del browser
I profili browser consentono di conservare e riutilizzare i dati del profilo del browser in più sessioni del browser. Un profilo del browser memorizza le informazioni sulla sessione, inclusi i cookie e l'archiviazione locale.
Ad esempio, è possibile autenticarsi su un sito Web una volta in una sessione del browser e salvare i dati del profilo nella risorsa del profilo del browser. Quando si avvia una nuova sessione del browser con quel profilo salvato, lo stato di autenticazione viene preservato e l'utente rimane connesso. Ciò consente agli agenti di eseguire attività su siti Web autenticati senza richiedere l'intervento manuale.
Panoramica di
I profili browser in Amazon Bedrock AgentCore funzionano come segue:
-
Crea una risorsa per il profilo del browser che verrà riutilizzata tra le sessioni del browser
-
Avvia una sessione del browser ed esegui azioni (come accedere a un sito Web o inserire un articolo nel carrello della spesa) che popolano cookie e localstorage
-
Salva i dati del profilo dalla sessione corrente del browser nella risorsa del profilo del browser
-
Avvia nuove sessioni del browser utilizzando il profilo salvato per ripristinare lo stato precedente
Prerequisiti
Prima di utilizzare i profili del browser, assicuratevi di avere:
-
Sono stati completati i prerequisiti generali del browser
-
Autorizzazioni IAM per gestire le risorse del profilo. Aggiungi le seguenti autorizzazioni alla tua policy IAM:
{
"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/*"
}
]
}
-
Autorizzazioni IAM per salvare e caricare i profili. Aggiungi le seguenti autorizzazioni alla tua policy IAM:
{
"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/*"
]
}
]
}
Guida introduttiva ai profili dei browser
Questa sezione illustra come creare un profilo del browser, salvare i dati della sessione e riutilizzare il profilo nelle sessioni successive.
Fase 1: Creare un profilo del browser
Crea una risorsa per il profilo del browser per archiviare i dati della sessione.
Esempio
- AWS CLI
-
-
Per creare un profilo del browser utilizzando la AWS CLI:
aws bedrock-agentcore-control create-browser-profile \
--region <Region> \
--name "profile_demo" \
--description "example profile"
- Boto3
-
-
Per creare un profilo del browser utilizzando l' AWS SDK per 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
-
-
Per creare un profilo del browser utilizzando l'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"
}'
Passaggio 2: Avvia una sessione del browser ed esegui azioni
Avvia una sessione del browser ed esegui azioni come accedere a un sito Web. Lo stato della sessione, inclusi i cookie e l'archiviazione locale, verrà registrato.
Esempio
- AWS CLI
-
-
Per avviare una sessione del browser utilizzando la AWS CLI:
aws bedrock-agentcore start-browser-session \
--region <Region> \
--browser-identifier "aws.browser.v1" \
--name "my-session" \
--session-timeout-seconds 3600
Utilizzate l'ID di sessione restituito per interagire con il browser ed eseguire le azioni desiderate (ad esempio, accedere a un sito Web).
- Boto3
-
-
Per avviare una sessione del browser utilizzando 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
-
-
Per avviare una sessione del browser utilizzando l'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
}'
Fase 3: Salvare la sessione in un profilo
Dopo aver eseguito azioni nella sessione del browser, salva lo stato corrente nel profilo del browser. Ciò acquisisce cookie, archiviazione locale e altri dati di sessione.
Esempio
- AWS CLI
-
-
Per salvare una sessione del browser su un profilo utilizzando la AWS CLI:
aws bedrock-agentcore save-browser-session-profile \
--region <Region> \
--profile-identifier "<ProfileId>" \
--browser-identifier "aws.browser.v1" \
--session-id "<SessionId>"
- Boto3
-
-
Per salvare una sessione del browser su un profilo utilizzando 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
-
-
Per salvare una sessione del browser su un profilo utilizzando l'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"
}'
Passaggio 4: Inizia una nuova sessione con il profilo
Inizia una nuova sessione del browser utilizzando il profilo salvato. La sessione verrà inizializzata con lo stato salvato, inclusi i cookie di autenticazione e l'archiviazione locale.
Esempio
- AWS CLI
-
-
Per avviare una sessione del browser con un profilo utilizzando la 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
-
-
Per avviare una sessione del browser con un profilo utilizzando 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
-
-
Per avviare una sessione del browser con un profilo utilizzando l'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"
}'
Operazioni sul profilo del browser
Questa sezione descrive le operazioni aggiuntive per la gestione dei profili del browser.
Elenco dei profili dei browser
Puoi elencare tutti i profili dei browser presenti nel tuo account.
Esempio
- AWS CLI
-
-
Per elencare i profili del browser utilizzando la AWS CLI:
aws bedrock-agentcore-control list-browser-profiles \
--region <Region>
- Boto3
-
-
Per elencare i profili dei browser utilizzando 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
-
-
Per elencare i profili dei browser utilizzando l'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>
Ottenere i dettagli del profilo del browser
È possibile recuperare i dettagli su uno specifico profilo del browser.
Esempio
- AWS CLI
-
-
Per ottenere i dettagli del profilo del browser utilizzando la AWS CLI:
aws bedrock-agentcore-control get-browser-profile \
--region <Region> \
--profile-id "<ProfileId>"
- Boto3
-
-
Per ottenere i dettagli del profilo del browser utilizzando 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
-
-
Per ottenere i dettagli del profilo del browser utilizzando l'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>
Eliminazione di un profilo del browser
Quando non è più necessario un profilo del browser, è possibile eliminarlo per liberare risorse.
Esempio
- AWS CLI
-
-
Per eliminare un profilo del browser utilizzando la AWS CLI:
aws bedrock-agentcore-control delete-browser-profile \
--region <Region> \
--profile-id "<ProfileId>"
- Boto3
-
-
Per eliminare un profilo del browser utilizzando 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
-
-
Per eliminare un profilo del browser utilizzando l'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>
Casi d’uso
I profili del browser sono utili per:
-
Autenticazione persistente: mantiene le sessioni di accesso su più chiamate del browser senza riautenticarsi ogni volta
-
Multi-step flussi di lavoro: esegui flussi di lavoro complessi che si estendono su più sessioni preservando lo stato e il contesto (nei cookie o nell'archiviazione locale)
-
Attività automatizzate: consenti agli agenti AI di eseguire attività su siti Web autenticati senza intervento manuale
Considerazioni
-
Persistenza del profilo: i dati del profilo vengono salvati quando si richiama esplicitamente l'operazione di salvataggio. Assicuratevi di salvare il profilo prima di terminare la sessione per preservare lo stato.
-
Isolamento della sessione: ogni sessione del browser che utilizza un profilo funziona in modo indipendente. Le modifiche apportate in una sessione non sono visibili nelle altre sessioni simultanee.
-
Caricamento del profilo: le modifiche al profilo salvate si applicano solo alle nuove sessioni. Le sessioni attive continuano a utilizzare lo stato del profilo da quando sono state avviate e non rifletteranno gli aggiornamenti apportati al profilo dopo l'inizio della sessione.
-
Sicurezza: i profili del browser possono contenere dati sensibili come i cookie di autenticazione. Assicurati che siano in atto politiche IAM adeguate per limitare l'accesso alle risorse del profilo.
-
Aggiornamenti del profilo: quando si salva una sessione su un profilo, questa sovrascrive i dati del profilo precedente. Valuta attentamente il tuo flusso di lavoro per evitare di perdere importanti informazioni sullo stato.
-
Scadenza dei cookie: i cookie hanno i propri tempi di scadenza impostati dai siti Web. I profili del browser conservano i cookie, ma i cookie scaduti vengono rimossi automaticamente dal browser in base alle date di scadenza.