Uso de perfiles de navegador
Los perfiles del navegador le permiten conservar y reutilizar los datos del perfil del navegador en varias sesiones del navegador. Un perfil de navegador almacena la información de la sesión, incluidas las cookies y el almacenamiento local.
Por ejemplo, puede autenticarse en un sitio web una vez en una sesión de navegador y guardar los datos del perfil en el recurso de perfil del navegador. Al iniciar una nueva sesión de navegador con ese perfil guardado, se conserva el estado de autenticación y permanece la sesión iniciada. Esto permite a los agentes realizar tareas en sitios web autenticados sin necesidad de intervención manual.
Descripción general de
Los perfiles de navegador en Amazon Bedrock AgentCore funcionan de la siguiente manera:
-
Cree un recurso de perfil de navegador que se reutilice en todas las sesiones del navegador
-
Inicie una sesión de navegador y realice acciones (como iniciar sesión en un sitio web o poner un artículo en el carrito de la compra) para rellenar las cookies y el almacenamiento local
-
Guarde los datos del perfil de la sesión actual del navegador en el recurso de perfil del navegador
-
Inicie nuevas sesiones de navegador utilizando el perfil guardado para restaurar el estado anterior
Requisitos previos
Antes de usar los perfiles del navegador, asegúrese de tener:
-
Ha completado los requisitos previos generales del navegador
-
Permisos de IAM para gestionar los recursos del perfil. Añada los siguientes permisos a su política de 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/*"
}
]
}
-
Permisos de IAM para guardar y cargar perfiles. Añada los siguientes permisos a su política de 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/*"
]
}
]
}
Introducción a los perfiles de navegador
En esta sección se explica cómo crear un perfil de navegador, guardar los datos de sesión en él y reutilizar el perfil en sesiones posteriores.
Paso 1: Crear un perfil de navegador
Cree un recurso de perfil de navegador para almacenar los datos de la sesión.
ejemplo
- AWS CLI
-
-
Para crear un perfil de navegador mediante la AWS CLI:
aws bedrock-agentcore-control create-browser-profile \
--region <Region> \
--name "profile_demo" \
--description "example profile"
- Boto3
-
-
Para crear un perfil de navegador con el AWS SDK para 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
-
-
Para crear un perfil de navegador mediante la 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"
}'
Paso 2: iniciar una sesión de navegador y realizar acciones
Inicie una sesión de navegador y realice acciones como iniciar sesión en un sitio web. Se capturará el estado de la sesión, incluidas las cookies y el almacenamiento local.
ejemplo
- AWS CLI
-
-
Para iniciar una sesión de navegador mediante la AWS CLI:
aws bedrock-agentcore start-browser-session \
--region <Region> \
--browser-identifier "aws.browser.v1" \
--name "my-session" \
--session-timeout-seconds 3600
Utilice el ID de sesión devuelto para interactuar con el navegador y realizar las acciones que desee (por ejemplo, iniciar sesión en un sitio web).
- Boto3
-
-
Para iniciar una sesión de navegador con 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
-
-
Para iniciar una sesión de navegador con la 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
}'
Paso 3: guarda la sesión en un perfil
Tras realizar acciones en la sesión del navegador, guarde el estado actual en el perfil del navegador. Esto captura las cookies, el almacenamiento local y otros datos de la sesión.
ejemplo
- AWS CLI
-
-
Para guardar una sesión de navegador en un perfil mediante la AWS CLI:
aws bedrock-agentcore save-browser-session-profile \
--region <Region> \
--profile-identifier "<ProfileId>" \
--browser-identifier "aws.browser.v1" \
--session-id "<SessionId>"
- Boto3
-
-
Para guardar una sesión de navegador en un perfil mediante 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
-
-
Para guardar una sesión de navegador en un perfil mediante la 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"
}'
Paso 4: Iniciar una nueva sesión con el perfil
Inicie una nueva sesión de navegador con el perfil guardado. La sesión se inicializará con el estado guardado, incluidas las cookies de autenticación y el almacenamiento local.
ejemplo
- AWS CLI
-
-
Para iniciar una sesión de navegador con un perfil mediante 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
-
-
Para iniciar una sesión de navegador con un perfil mediante 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
-
-
Para iniciar una sesión de navegador con un perfil mediante la 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"
}'
Operaciones de perfil del navegador
En esta sección se describen las operaciones adicionales para administrar los perfiles del navegador.
Listado de perfiles de navegador
Puede enumerar todos los perfiles de navegador de su cuenta.
ejemplo
- AWS CLI
-
-
Para enumerar los perfiles del navegador mediante la AWS CLI:
aws bedrock-agentcore-control list-browser-profiles \
--region <Region>
- Boto3
-
-
Para enumerar los perfiles del navegador con 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
-
-
Para enumerar los perfiles del navegador mediante la 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>
Obtener los detalles del perfil del navegador
Puede recuperar detalles sobre un perfil de navegador específico.
ejemplo
- AWS CLI
-
-
Para obtener los detalles del perfil del navegador mediante la AWS CLI:
aws bedrock-agentcore-control get-browser-profile \
--region <Region> \
--profile-id "<ProfileId>"
- Boto3
-
-
Para obtener los detalles del perfil del navegador con 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
-
-
Para obtener los detalles del perfil del navegador mediante la 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>
Eliminar un perfil de navegador
Cuando ya no necesite un perfil de navegador, puede eliminarlo para liberar recursos.
ejemplo
- AWS CLI
-
-
Para eliminar un perfil de navegador mediante la AWS CLI:
aws bedrock-agentcore-control delete-browser-profile \
--region <Region> \
--profile-id "<ProfileId>"
- Boto3
-
-
Para eliminar un perfil de navegador con 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
-
-
Para eliminar un perfil de navegador mediante la 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>
Casos de uso
Los perfiles de navegador son útiles para:
-
Autenticación persistente: mantenga las sesiones de inicio de sesión en múltiples invocaciones del navegador sin tener que volver a autenticarse cada vez
-
Multi-step flujos de trabajo: ejecute flujos de trabajo complejos que abarquen varias sesiones y, al mismo tiempo, conserven el estado y el contexto (en cookies o en almacenamiento local)
-
Tareas automatizadas: permita a los agentes de IA realizar tareas en sitios web autenticados sin intervención manual
Consideraciones
-
Persistencia del perfil: los datos del perfil se guardan cuando se llama explícitamente a la operación de guardado. Asegúrese de guardar el perfil antes de finalizar la sesión para conservar el estado.
-
Aislamiento de sesión: cada sesión del navegador que utilice un perfil funciona de forma independiente. Los cambios realizados en una sesión no son visibles en otras sesiones simultáneas.
-
Carga del perfil: los cambios de perfil guardados solo se aplican a las sesiones nuevas. Las sesiones activas seguirán utilizando el estado del perfil desde que se iniciaron y no reflejarán las actualizaciones realizadas en el perfil una vez iniciada la sesión.
-
Seguridad: los perfiles del navegador pueden contener datos confidenciales, como cookies de autenticación. Asegúrese de que existan políticas de IAM adecuadas para restringir el acceso a los recursos del perfil.
-
Actualizaciones de perfil: al guardar una sesión en un perfil, se sobrescriben los datos del perfil anterior. Tenga en cuenta su flujo de trabajo detenidamente para evitar perder información importante sobre el estado.
-
Expiración de las cookies: las cookies tienen sus propios tiempos de caducidad establecidos por los sitios web. Los perfiles del navegador conservan las cookies, pero el navegador elimina automáticamente las cookies caducadas según sus fechas de caducidad.