Utilisation des profils de navigateur
Les profils de navigateur vous permettent de conserver et de réutiliser les données de profil de navigateur au cours de plusieurs sessions de navigation. Un profil de navigateur stocke les informations de session, notamment les cookies et le stockage local.
Par exemple, vous pouvez vous authentifier sur un site Web une seule fois au cours d'une session de navigateur et enregistrer les données de profil dans la ressource de profil du navigateur. Lorsque vous démarrez une nouvelle session de navigateur avec ce profil enregistré, votre état d'authentification est préservé et vous restez connecté. Cela permet aux agents d'effectuer des tâches sur des sites Web authentifiés sans intervention manuelle.
Présentation de
Les profils de navigateur dans Amazon Bedrock AgentCore fonctionnent comme suit :
-
Créez une ressource de profil de navigateur qui sera réutilisée au cours des sessions de navigation
-
Démarrez une session de navigateur et effectuez des actions (telles que vous connecter à un site Web ou mettre un article dans le panier) pour renseigner les cookies et le stockage local
-
Enregistrez les données de profil de la session de navigateur en cours dans la ressource de profil du navigateur
-
Démarrez de nouvelles sessions de navigation en utilisant le profil enregistré pour restaurer l'état précédent
Conditions préalables
Avant d'utiliser les profils de navigateur, assurez-vous d'avoir :
-
Vous avez terminé les prérequis généraux du navigateur
-
Autorisations IAM pour gérer les ressources du profil. Ajoutez les autorisations suivantes à votre politique 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/*"
}
]
}
-
Autorisations IAM pour enregistrer et charger des profils. Ajoutez les autorisations suivantes à votre politique 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/*"
]
}
]
}
Commencer à utiliser les profils de navigateur
Cette section explique comment créer un profil de navigateur, y enregistrer les données de session et réutiliser le profil lors des sessions suivantes.
Étape 1 : Création d'un profil de navigateur
Créez une ressource de profil de navigateur pour stocker les données de session.
Exemple
- AWS CLI
-
-
Pour créer un profil de navigateur à l'aide de la AWS CLI :
aws bedrock-agentcore-control create-browser-profile \
--region <Region> \
--name "profile_demo" \
--description "example profile"
- Boto3
-
-
Pour créer un profil de navigateur à l'aide du AWS SDK pour 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
-
-
Pour créer un profil de navigateur à l'aide de 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"
}'
Étape 2 : démarrer une session de navigateur et effectuer des actions
Démarrez une session de navigateur et effectuez des actions telles que la connexion à un site Web. L'état de la session, y compris les cookies et le stockage local, sera enregistré.
Exemple
- AWS CLI
-
-
Pour démarrer une session de navigateur à l'aide de la AWS CLI :
aws bedrock-agentcore start-browser-session \
--region <Region> \
--browser-identifier "aws.browser.v1" \
--name "my-session" \
--session-timeout-seconds 3600
Utilisez l'identifiant de session renvoyé pour interagir avec le navigateur et effectuer les actions souhaitées (par exemple, vous connecter à un site Web).
- Boto3
-
-
Pour démarrer une session de navigateur à l'aide de 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
-
-
Pour démarrer une session de navigateur à l'aide de 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
}'
Étape 3 : enregistrer la session dans un profil
Après avoir effectué des actions dans la session du navigateur, enregistrez l'état actuel dans le profil de votre navigateur. Cela capture les cookies, le stockage local et d'autres données de session.
Exemple
- AWS CLI
-
-
Pour enregistrer une session de navigateur dans un profil à l'aide de la AWS CLI :
aws bedrock-agentcore save-browser-session-profile \
--region <Region> \
--profile-identifier "<ProfileId>" \
--browser-identifier "aws.browser.v1" \
--session-id "<SessionId>"
- Boto3
-
-
Pour enregistrer une session de navigateur dans un profil à l'aide de 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
-
-
Pour enregistrer une session de navigateur dans un profil à l'aide de 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"
}'
Étape 4 : démarrer une nouvelle session avec le profil
Démarrez une nouvelle session de navigateur à l'aide du profil enregistré. La session sera initialisée avec l'état enregistré, y compris les cookies d'authentification et le stockage local.
Exemple
- AWS CLI
-
-
Pour démarrer une session de navigateur avec un profil à l'aide de 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
-
-
Pour démarrer une session de navigateur avec un profil à l'aide de 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
-
-
Pour démarrer une session de navigateur avec un profil à l'aide de 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"
}'
Opérations relatives au profil du navigateur
Cette section décrit les opérations supplémentaires de gestion des profils de navigateur.
Liste des profils de navigateur
Vous pouvez répertorier tous les profils de navigateur de votre compte.
Exemple
- AWS CLI
-
-
Pour répertorier les profils de navigateur à l'aide de la AWS CLI :
aws bedrock-agentcore-control list-browser-profiles \
--region <Region>
- Boto3
-
-
Pour répertorier les profils de navigateur à l'aide de 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
-
-
Pour répertorier les profils de navigateur à l'aide de 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>
Obtenir les détails du profil du navigateur
Vous pouvez récupérer les informations relatives à un profil de navigateur spécifique.
Exemple
- AWS CLI
-
-
Pour obtenir les détails du profil du navigateur à l'aide de la AWS CLI :
aws bedrock-agentcore-control get-browser-profile \
--region <Region> \
--profile-id "<ProfileId>"
- Boto3
-
-
Pour obtenir les détails du profil du navigateur à l'aide de 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
-
-
Pour obtenir les détails du profil du navigateur à l'aide de 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>
Supprimer un profil de navigateur
Lorsque vous n'avez plus besoin d'un profil de navigateur, vous pouvez le supprimer pour libérer des ressources.
Exemple
- AWS CLI
-
-
Pour supprimer un profil de navigateur à l'aide de la AWS CLI :
aws bedrock-agentcore-control delete-browser-profile \
--region <Region> \
--profile-id "<ProfileId>"
- Boto3
-
-
Pour supprimer un profil de navigateur à l'aide de 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
-
-
Pour supprimer un profil de navigateur à l'aide de 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>
Cas d’utilisation
Les profils de navigateur sont utiles pour :
-
Authentification persistante : maintenez les sessions de connexion lors de plusieurs appels de navigateur sans vous authentifier à nouveau à chaque fois
-
Multi-step flux de travail : exécutez des flux de travail complexes qui s'étendent sur plusieurs sessions tout en préservant l'état et le contexte (dans les cookies ou le stockage local)
-
Tâches automatisées : permettez aux agents d'intelligence artificielle d'effectuer des tâches sur des sites Web authentifiés sans intervention manuelle
Considérations
-
Persistance du profil : les données du profil sont enregistrées lorsque vous appelez explicitement l'opération d'enregistrement. Assurez-vous d'enregistrer le profil avant de mettre fin à la session afin de préserver son état.
-
Isolation de session : chaque session de navigateur utilisant un profil fonctionne indépendamment. Les modifications apportées au cours d'une session ne sont pas visibles dans les autres sessions simultanées.
-
Chargement du profil : les modifications de profil enregistrées ne s'appliquent qu'aux nouvelles sessions. Les sessions actives continuent d'utiliser l'état du profil depuis leur démarrage et ne refléteront pas les mises à jour apportées au profil après le démarrage de la session.
-
Sécurité : les profils de navigateur peuvent contenir des données sensibles telles que des cookies d'authentification. Assurez-vous que des politiques IAM appropriées sont en place pour restreindre l'accès aux ressources du profil.
-
Mises à jour du profil : lorsque vous enregistrez une session dans un profil, les données du profil précédent sont remplacées. Réfléchissez bien à votre flux de travail pour éviter de perdre des informations importantes sur l'état.
-
Expiration des cookies : les cookies ont leurs propres délais d'expiration définis par les sites Web. Les profils de navigateur conservent les cookies, mais les cookies expirés sont automatiquement supprimés par le navigateur en fonction de leur date d'expiration.