View a markdown version of this page

Uso de perfiles de navegador - Amazon Bedrock AgentCore

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:

  1. Cree un recurso de perfil de navegador que se reutilice en todas las sesiones del navegador

  2. 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

  3. Guarde los datos del perfil de la sesión actual del navegador en el recurso de perfil del navegador

  4. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. Para enumerar los perfiles del navegador mediante la AWS CLI:

    aws bedrock-agentcore-control list-browser-profiles \ --region <Region>
Boto3
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. Para eliminar un perfil de navegador mediante la AWS CLI:

    aws bedrock-agentcore-control delete-browser-profile \ --region <Region> \ --profile-id "<ProfileId>"
Boto3
  1. 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
  1. 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.