

# Principes fondamentaux
<a name="browser-resource-session-management"></a>

Les rubriques suivantes montrent comment fonctionne le AgentCore navigateur Amazon Bedrock et comment créer les ressources et gérer les sessions.

**Topics**
+ [Création d'un outil de navigation et démarrage d'une session](#browser-create-session)
+ [Gestion des ressources](#browser-resource-management)
+ [Utilisation de l'outil de navigation](browser-using-tool.md)
+ [Gestion des sessions du navigateur](browser-managing-sessions.md)

## Création d'un outil de navigation et démarrage d'une session
<a name="browser-create-session"></a>

1.  **Création d'un outil de navigation** 

   Lorsque vous configurez un outil de navigateur, choisissez le paramètre de réseau public, la configuration d'enregistrement pour la rediffusion de session et les autorisations via un rôle d'exécution IAM qui définit les AWS ressources auxquelles l'outil de navigateur peut accéder.

1.  **Démarrer une session** 

   L'outil de navigation utilise un modèle basé sur les sessions. Après avoir créé un outil de navigation, vous démarrez une session avec un délai d'expiration configurable (la valeur par défaut est de 15 minutes). Les sessions se terminent automatiquement après le délai imparti. Plusieurs sessions peuvent être actives simultanément pour un seul outil de navigation, chaque session conservant son propre état et son propre environnement.

1.  **Interagissez avec le navigateur** 

   Une fois qu'une session est démarrée, vous pouvez interagir avec le navigateur à l'aide des API de WebSocket-based streaming. Le point de terminaison Automation permet à votre agent d'effectuer des actions sur le navigateur, telles que naviguer vers des sites Web, cliquer sur des éléments, remplir des formulaires, prendre des captures d'écran, etc. Des bibliothèques telles que browser-use ou Playwright peuvent être utilisées pour simplifier ces interactions.

   Dans le même temps, le point de terminaison Live View permet à l'utilisateur final de suivre la session du navigateur en temps réel et d'interagir avec elle directement via le flux en direct.

1.  **Arrêter la session** 

   Lorsque vous avez fini d'utiliser la session du navigateur, vous devez l'arrêter pour libérer des ressources et éviter des frais inutiles. Les sessions peuvent être arrêtées manuellement ou se termineront automatiquement après le délai d'expiration configuré.

### Permissions
<a name="browser-permissions"></a>

Pour utiliser le AgentCore navigateur Amazon Bedrock, vous devez disposer des autorisations suivantes dans votre politique IAM :

```
{
"Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "BedrockAgentCoreInBuiltToolsFullAccess",
            "Effect": "Allow",
            "Action": [
                "bedrock-agentcore:CreateBrowser",
                "bedrock-agentcore:ListBrowsers",
                "bedrock-agentcore:GetBrowser",
                "bedrock-agentcore:DeleteBrowser",
                "bedrock-agentcore:StartBrowserSession",
                "bedrock-agentcore:ListBrowserSessions",
                "bedrock-agentcore:GetBrowserSession",
                "bedrock-agentcore:StopBrowserSession",
                "bedrock-agentcore:UpdateBrowserStream",
                "bedrock-agentcore:ConnectBrowserAutomationStream",
                "bedrock-agentcore:ConnectBrowserLiveViewStream"
            ],
            "Resource": "arn:aws:bedrock-agentcore:us-east-1:111122223333:browser/*"
        }
    ]
}
```

Si vous utilisez l'enregistrement de session avec S3, le rôle d'exécution que vous fournissez lors de la création d'un navigateur nécessite les autorisations suivantes :

```
{
    "Sid": "BedrockAgentCoreBuiltInToolsS3Policy",
    "Effect": "Allow",
    "Action": [
        "s3:PutObject",
        "s3:ListMultipartUploadParts",
        "s3:AbortMultipartUpload"
    ],
    "Resource": "arn:aws:s3:::example-s3-bucket/example-prefix/*",
    "Condition": {
        "StringEquals": {
            "aws:ResourceAccount": "{{accountId}}"
        }
    }
}
```

Vous devez également ajouter la politique de confiance suivante au rôle d'exécution :

```
{
"Version":"2012-10-17",		 	 	 
    "Statement": [{
        "Sid": "BedrockAgentCoreBuiltInTools",
        "Effect": "Allow",
        "Principal": {
            "Service": "bedrock-agentcore.amazonaws.com"
        },
        "Action": "sts:AssumeRole",
        "Condition": {
            "StringEquals": {
                "aws:SourceAccount": "111122223333"
            },
            "ArnLike": {
                "aws:SourceArn": "arn:aws:bedrock-agentcore:us-east-1:111122223333:*"
            }
        }
    }]
}
```

### Configuration du navigateur pour les opérations d'API
<a name="browser-setup-api"></a>

Exécutez les commandes suivantes pour configurer votre outil de navigateur qui est commun à toutes les opérations d'API du plan de contrôle et du plan de données.

```
import boto3
import uuid

REGION = "<Region>"
CP_ENDPOINT_URL = f"https://bedrock-agentcore-control.{REGION}.amazonaws.com"
DP_ENDPOINT_URL = f"https://bedrock-agentcore.{REGION}.amazonaws.com"

cp_client = boto3.client(
    'bedrock-agentcore-control',
    region_name=REGION,
    endpoint_url=CP_ENDPOINT_URL
)

dp_client = boto3.client(
    'bedrock-agentcore',
    region_name=REGION,
    endpoint_url=DP_ENDPOINT_URL
)
```

## Gestion des ressources
<a name="browser-resource-management"></a>

Le AgentCore navigateur fournit deux types de ressources :

ARN du système  
Les ARN du système sont des ressources par défaut précréées pour en faciliter l'utilisation. Ces ARN ont une configuration par défaut avec les options les plus restrictives et sont disponibles pour toutes les régions où Amazon Bedrock AgentCore est disponible.      
[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/bedrock-agentcore/latest/devguide/browser-resource-session-management.html)

ARN personnalisés  
Les ARN personnalisés vous permettent de configurer un outil de navigation avec vos propres paramètres. Vous pouvez choisir le paramètre du réseau public, la configuration de l'enregistrement, les paramètres de sécurité et les autorisations via un rôle d'exécution IAM qui définit les AWS ressources auxquelles l'outil de navigation peut accéder.

### Paramètres réseau
<a name="browser-network-settings"></a>

Le AgentCore navigateur prend en charge le mode réseau public. Ce mode permet à l'outil d'accéder aux ressources Internet publiques. Cette option permet l'intégration avec des API et des services externes.

### Gestion de session
<a name="browser-session-management"></a>

Les sessions AgentCore du navigateur présentent les caractéristiques suivantes :

Délai d'expiration de session  
Par défaut : 900 secondes (15 minutes)  
Configurable : peut être ajusté lors de la création de sessions, jusqu'à 8 heures

Enregistrement de session  
Les sessions du navigateur peuvent être enregistrées pour un examen ultérieur  
Les enregistrements incluent le trafic réseau et les journaux de console  
Les enregistrements sont stockés dans un compartiment S3 spécifié lors de la création du navigateur

Vue en direct  
Les sessions peuvent être visionnées en temps réel à l'aide de la fonction de visualisation en direct  
L'affichage en direct est disponible à l'adresse : streams/aws /browser- .browser. v1/sessions/{session\_id} /live-view

Résiliation automatique  
Les sessions se terminent automatiquement après le délai d'expiration configuré

Plusieurs sessions  
Plusieurs sessions peuvent être actives simultanément pour un seul outil de navigation. Chaque session conserve son propre état et son propre environnement. Il peut y avoir jusqu'à 500 séances.

Politique de rétention  
La politique de conservation du temps de vie (TTL) pour les données de session est de 30 jours.

#### Utilisation de sessions isolées
<a name="browser-isolated-sessions"></a>

AgentCore Les outils permettent d'isoler chaque session utilisateur afin de garantir une réutilisation sécurisée et cohérente du contexte lors de plusieurs invocations d'outils. L'isolation des sessions est particulièrement importante pour les charges de travail des agents d'IA en raison de leurs modèles d'exécution dynamiques et en plusieurs étapes.

Chaque session d'outil s'exécute dans une microVM dédiée avec des ressources de processeur, de mémoire et de système de fichiers isolées. Cette architecture garantit que l'invocation d'un outil par un utilisateur ne peut pas accéder aux données de la session d'un autre utilisateur. À la fin de la session, la microVM est complètement arrêtée et sa mémoire est nettoyée, éliminant ainsi tout risque de fuite de données entre sessions.