

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# AWS Clean Rooms Confidentialité différentielle
<a name="differential-privacy"></a>

AWS Clean Rooms La confidentialité différentielle vous aide à protéger la vie privée de vos utilisateurs grâce à une technique basée sur des mathématiques qui est mise en œuvre avec des commandes intuitives en quelques clics. En tant que fonctionnalité entièrement gérée, aucune expérience préalable en matière de confidentialité différentielle n'est nécessaire pour vous aider à empêcher la réidentification de vos utilisateurs. AWS Clean Rooms ajoute automatiquement une quantité de bruit soigneusement calibrée aux résultats de la requête lors de l'exécution afin de protéger vos données au niveau individuel.

AWS Clean Rooms La confidentialité différentielle prend en charge un large éventail de requêtes analytiques et convient parfaitement à une grande variété de cas d'utilisation, dans lesquels une petite quantité d'erreur dans les résultats des requêtes ne compromet pas l'utilité de votre analyse. Grâce à elle, vos partenaires peuvent générer des informations critiques sur les campagnes publicitaires, les décisions d'investissement, la recherche clinique, etc., le tout sans nécessiter de configuration supplémentaire de la part de vos partenaires.

AWS Clean Rooms La confidentialité différentielle protège contre le débordement ou les erreurs de diffusion non valides qui utilisent des fonctions scalaires ou des symboles d'opérateurs mathématiques de manière malveillante. 

Pour plus d'informations sur la confidentialité AWS Clean Rooms différentielle, consultez les rubriques suivantes.

**Topics**
+ [Confidentialité différentielle](#dp-overview)
+ [Comment AWS Clean Rooms fonctionne la confidentialité différentielle](#dp-how-it-works)
+ [Politique de confidentialité différentielle](dp-settings.md)
+ [Fonctionnalités SQL de AWS Clean Rooms Differential Privacy](dp-sql-capabilities.md)
+ [Conseils et exemples de requêtes relatives à la confidentialité différentielle](dp-query-tips-examples.md)
+ [Limites de la confidentialité AWS Clean Rooms différentielle](dp-limitations.md)

## Confidentialité différentielle
<a name="dp-overview"></a>

La confidentialité différentielle ne permet que des informations agrégées et masque la contribution des données individuelles à ces informations. La confidentialité différentielle protège les données de collaboration du membre qui peut recevoir des résultats en découvrant une personne en particulier. Sans confidentialité différentielle, le membre qui peut recevoir des résultats peut tenter de déduire des données utilisateur individuelles en ajoutant ou en supprimant des enregistrements concernant un individu et en observant la différence entre les résultats des requêtes. 

Lorsque la confidentialité différentielle est activée, une quantité spécifiée de bruit est ajoutée aux résultats de la requête pour masquer la contribution des utilisateurs individuels. Si le membre qui peut recevoir des résultats essaie d'observer la différence entre les résultats de la requête après avoir supprimé des enregistrements concernant un individu de son ensemble de données, la variabilité du résultat de la requête empêche l'identification des données de l'individu. AWS Clean Rooms Differential Privacy utilise le [SampCert](https://github.com/leanprover/SampCert)sampler, une implémentation d'échantillonneur correcte et éprouvée développée par. AWS

## Comment AWS Clean Rooms fonctionne la confidentialité différentielle
<a name="dp-how-it-works"></a>

Le flux de travail dans lequel vous souhaitez activer la confidentialité différentielle AWS Clean Rooms nécessite les étapes supplémentaires suivantes lors de [l'exécution du flux de travail pour AWS Clean Rooms](what-is.md#how-it-works) :

1. Vous activez la confidentialité différentielle lorsque vous ajoutez une [règle d'analyse personnalisée](analysis-rules-custom.md).

1. [Vous configurez la politique de confidentialité différentielle pour la collaboration](configure-differential-privacy.md) afin que vos tables de données protégées par une confidentialité différentielle soient disponibles pour les requêtes.

Une fois ces étapes terminées, le membre habilité à effectuer des requêtes peut commencer à exécuter des requêtes sur des données protégées par la confidentialité différentielle. AWS Clean Rooms renvoie des résultats conformes à la politique de confidentialité différentielle. AWS Clean Rooms La confidentialité différentielle permet de suivre le nombre estimé de requêtes restantes que vous pouvez exécuter, comme la jauge d'essence d'une voiture qui vous indique le niveau de carburant actuel de la voiture. Le nombre de requêtes que le membre qui peut interroger peut exécuter est limité par le **budget de confidentialité** et le **bruit ajouté par requête**, paramètres définis dans le[Politique de confidentialité différentielle](dp-settings.md).

### Considérations
<a name="dp-considerations"></a>

Lorsque vous utilisez la confidentialité différentielle dans AWS Clean Rooms, tenez compte des points suivants :
+ Le membre qui peut recevoir les résultats ne peut pas utiliser la confidentialité différentielle. Ils configureront une règle d'analyse personnalisée avec la confidentialité différentielle désactivée pour leurs tables configurées.
+ Le membre qui peut effectuer une requête ne peut pas joindre les tables de deux fournisseurs de données ou plus lorsque la confidentialité différentielle est activée dans les deux cas.

# Politique de confidentialité différentielle
<a name="dp-settings"></a>

La politique de confidentialité différentielle contrôle le nombre de fonctions d'agrégation que le membre qui peut interroger est autorisé à exécuter dans le cadre d'une collaboration. Le **budget de confidentialité** définit une ressource commune limitée qui est appliquée à toutes les tables d'une collaboration. Le **bruit ajouté par requête** détermine le taux d'épuisement du budget de confidentialité.

Une politique de confidentialité différentielle est requise pour que vos tables protégées par la confidentialité différentielle soient disponibles pour les requêtes. Il s'agit d'une étape unique dans le cadre d'une collaboration qui inclut deux contributions :
+ **Budget de confidentialité** — Quantifié en termes d'epsilon, le budget de confidentialité contrôle le niveau de protection de la vie privée. Il s'agit d'une ressource commune limitée qui est appliquée à toutes vos tables protégées par une confidentialité différentielle dans le cadre de la collaboration, car l'objectif est de préserver la confidentialité de vos utilisateurs dont les informations peuvent être présentes dans plusieurs tables.

  Le **budget de confidentialité** est consommé chaque fois qu'une requête est exécutée sur vos tables. Lorsque le budget de confidentialité est totalement épuisé, le membre de la collaboration qui peut effectuer des requêtes ne peut pas exécuter de requêtes supplémentaires tant qu'il n'est pas augmenté ou actualisé. En établissant un budget de confidentialité plus important, le membre qui peut recevoir les résultats peut réduire son incertitude quant aux individus contenus dans les données. Choisissez un budget de confidentialité qui équilibre vos exigences en matière de collaboration et vos besoins en matière de confidentialité, après avoir consulté les décideurs commerciaux.

  Vous pouvez sélectionner **Actualiser le budget de confidentialité tous les mois** pour créer automatiquement un nouveau budget de confidentialité chaque mois calendaire, si vous prévoyez d'intégrer régulièrement de nouvelles données à la collaboration. Le choix de cette option permet de révéler des quantités arbitraires d'informations sur les lignes de données lorsqu'elles sont demandées à plusieurs reprises lors des actualisations. Évitez de choisir cette option si les mêmes lignes doivent être consultées à plusieurs reprises entre les actualisations du budget de confidentialité.
+ **Le bruit ajouté par requête** est mesuré en fonction du nombre d'utilisateurs dont vous souhaitez masquer les contributions. Cette valeur détermine le taux d'épuisement du budget de confidentialité. Une valeur de bruit plus élevée réduit le taux d'épuisement du budget de confidentialité et permet donc d'exécuter davantage de requêtes sur vos données. Cependant, cela doit être contrebalancé par la publication d'informations moins précises. Tenez compte de la précision souhaitée pour les informations sur la collaboration lorsque vous définissez cette valeur.

Vous pouvez utiliser la politique de confidentialité différentielle par défaut pour terminer rapidement la configuration ou personnaliser votre politique de confidentialité différentielle en fonction de votre cas d'utilisation. AWS Clean Rooms La confidentialité différentielle fournit des commandes intuitives pour configurer la politique. AWS Clean Rooms La confidentialité différentielle vous permet de prévisualiser l'utilitaire en termes de nombre d'agrégations possibles pour toutes les requêtes portant sur vos données et d'estimer le nombre de requêtes pouvant être exécutées dans le cadre d'une collaboration sur les données.

Vous pouvez utiliser les exemples interactifs pour comprendre l'impact des différentes valeurs du **budget de confidentialité** et **du bruit ajouté par requête** sur les résultats des différents types de requêtes SQL. En général, vous devez trouver un équilibre entre vos besoins en matière de confidentialité, le nombre de requêtes que vous souhaitez autoriser et l'exactitude de ces requêtes. Un **budget de confidentialité** réduit ou une augmentation **du bruit ajouté par requête** permet de mieux protéger la confidentialité des utilisateurs, mais fournit des informations moins pertinentes à vos partenaires de collaboration.

Si vous augmentez le **budget de confidentialité** tout en conservant le même paramètre de **bruit ajouté par requête**, le membre autorisé à effectuer une requête peut exécuter davantage d'agrégations sur vos tables dans le cadre de la collaboration. Vous pouvez augmenter le **budget de confidentialité** à tout moment au cours de la collaboration. Si vous réduisez le **budget de confidentialité** tout en conservant le même paramètre de **bruit ajouté par requête**, le membre autorisé à effectuer une requête peut exécuter moins d'agrégations. Vous ne pouvez pas réduire le **budget consacré à la confidentialité** une fois que le membre habilité à interroger a commencé à analyser vos données.

Si vous augmentez le **niveau de bruit ajouté par requête** tout en conservant le même niveau d'entrée relatif au **budget de confidentialité**, le membre autorisé à effectuer des requêtes peut exécuter davantage d'agrégations sur vos tables dans le cadre de la collaboration. Si vous réduisez le **bruit ajouté par requête** tout en conservant le même **montant d'entrée relatif au budget de confidentialité**, le membre autorisé à effectuer une requête peut exécuter moins d'agrégations. Vous pouvez augmenter ou diminuer le **bruit ajouté par requête** à tout moment au cours de la collaboration.

La politique de confidentialité différentielle est gérée par les actions de l'API du modèle de budget de confidentialité.

# Fonctionnalités SQL de AWS Clean Rooms Differential Privacy
<a name="dp-sql-capabilities"></a>

AWS Clean Rooms La confidentialité différentielle utilise une structure de requête polyvalente pour prendre en charge les requêtes SQL complexes. Les modèles d'analyse personnalisés sont validés par rapport à cette structure afin de garantir qu'ils peuvent être exécutés sur des tables protégées par une confidentialité différentielle. Le tableau suivant indique les fonctions prises en charge. Pour plus d’informations, consultez [Structure et syntaxe des requêtes](analysis-rules-custom.md#dp-query-structure-syntax).


| Catégorie | Constructions SQL prises en charge par le moteur d'analyse Spark | Expressions de table courantes (CTEs) | Clause SELECT finale | 
| --- |--- |--- |--- |
| Fonctions d’agrégation |    Fonction ANY\$1VALUE   Fonction APPROXIMATE PERCENTILE\$1DISC   Fonction AVG   Fonctions COUNT et COUNT DISTINCT   Fonction MAX   Fonction MEDIAN   Fonction MIN   Fonction PERCENTILE\$1CONT   Fonctions STDDEV\$1SAMP et STDDEV\$1POP   Fonctions SUM et SUM DISTINCT   Fonctions VAR\$1SAMP et VAR\$1POP    | Soutenu à la condition que l' CTEs utilisation de tables protégées par la confidentialité différentielle doit aboutir à des données contenant des enregistrements au niveau de l'utilisateur. Vous devez écrire l'expression SELECT dans ceux qui CTEs utilisent le `SELECT userIdentifierColumn...' format. | Agrégations prises en charge : AVG, COUNT, COUNT DISTINCT, STDDEV et SUM. | 
| CTEs | clause WITH, sous-requête de clause WITH | Soutenu à la condition que l' CTEs utilisation de tables protégées par la confidentialité différentielle doit aboutir à des données contenant des enregistrements au niveau de l'utilisateur. Vous devez écrire l'expression SELECT dans ceux qui CTEs utilisent le `SELECT userIdentifierColumn...' format. | N/A | 
| Sous-requêtes |    SELECT   HAVING   JOIN   Condition d'adhésion   FROM   WHERE    | Vous pouvez avoir n'importe quelle sous-requête qui ne fait pas référence à des relations de confidentialité différentielles dans ces constructions. Vous pouvez avoir n'importe quelle sous-requête qui fait référence à des relations de confidentialité différentielles uniquement dans une clause FROM et JOIN. | 
| Clauses d'adhésion |    JOINT INTÉRIEUR   JOINTURE GAUCHE   DEMI-JOINT GAUCHE   ANTI-JOINTURE GAUCHE   JOINTURE DROITE   ADHÉSION COMPLÈTE   [JOIN] OU opérateur   CROSS JOIN    |  Supportée à la condition que seules les fonctions JOIN qui sont des jointures égales sur les colonnes d'identifiant utilisateur soient prises en charge et soient obligatoires lors de l'interrogation de deux tables ou plus avec la confidentialité différentielle activée. Assurez-vous que les conditions d'équijointure obligatoires sont correctes. Vérifiez que le propriétaire de la table a configuré la même colonne d'identifiant utilisateur dans toutes les tables afin que la définition d'un utilisateur reste cohérente d'une table à l'autre. Les fonctions CROSS JOIN ne sont pas prises en charge lors de la combinaison de deux relations ou plus lorsque la confidentialité différentielle est activée.  | 
| Définir les opérateurs | UNION, UNION ALL, INTERSECT, EXCEPT \$1 MINUS (ce sont des synonymes) | UNION, UNION ALL, INTERSECT, EXCEPT \$1 MINUS (ce sont des synonymes) | Non pris en charge | 
| Fonctions de fenêtrage |  Fonctions d’agrégation   Fonction de fenêtrage AVG   Fonction de fenêtrage COUNT   Fonction de fenêtrage CUME\$1DIST   Fonction de fenêtrage DENSE\$1RANK   Fonction de fenêtrage FIRST\$1VALUE   Fonction de fenêtrage LAG   Fonction de fenêtrage LAST\$1VALUE   Fonction de fenêtrage LEAD   Fonctions de fenêtre MAX   Fonctions de la fenêtre MEDIAN   Fonctions de la fenêtre MIN   Fonction de fenêtrage NTH\$1VALUE   Fonctions de fenêtre STDDEV\$1SAMP et STDDEV\$1POP (STDDEV\$1SAMP et STDDEV sont des synonymes)   Fonctions de la fenêtre SUM   Fonctions de fenêtre VAR\$1SAMP et VAR\$1POP (VAR\$1SAMP et VARIANCE sont des synonymes)   Fonctions de classement   Fonction de fenêtrage DENSE\$1RANK   Fonction de fenêtrage NTILE   Fonction de fenêtrage PERCENT\$1RANK   Fonction de fenêtrage RANK   Fonction de fenêtrage ROW\$1NUMBER    | Tous sont pris en charge à condition que la colonne d'identifiant utilisateur de la clause de partition de la fonction de fenêtre soit requise lorsque vous interrogez une relation avec la confidentialité différentielle activée. | Non pris en charge | 
| Expressions conditionnelles |    Expression de condition CASE   Expression COALESCE   Fonctions GREATEST et LEAST   Fonctions NVL et COALESCE   NVL2 fonction   Fonction NULLIF    | Tous sont pris en charge | Tous sont pris en charge | 
| Conditions |    Condition de comparaison   Conditions logiques   Conditions de correspondance de modèles   ENTRE les conditions de gamme   Condition null    | EXISTSet ne IN peuvent pas être utilisés car ils nécessitent des sous-requêtes. Tous les autres sont pris en charge. | Tous sont pris en charge | 
| Fonctions date-heure |    Fonctions date et heure dans les transactions   Opérateur de concaténation   Fonctions ADD\$1MONTHS   Fonction CONVERT\$1TIMEZONE   Fonction CURRENT\$1DATE   Fonction DATEADD   Fonction DATEDIFF   fonctions DATE\$1PART   Fonction DATE\$1TRUNC   Fonction EXTRACT   Fonction TO\$1TIMESTAMP   Parties de date pour les fonctions de date ou d’horodatage    | Tous sont pris en charge | Tous sont pris en charge | 
| Fonctions de chaîne |    opérateur \$1\$1 (concaténation)   Fonction BTRIM   Fonction CHAR\$1LENGTH   Fonction CHARACTER\$1LENGTH   Fonction CONCAT   Fonctions LEFT et RIGHT   Fonction LEN   Fonction LENGTH   Fonction LOWER   Fonctions LPAD et RPAD   Fonction LTRIM   Fonctions POSITION   Fonction REGEXP\$1COUNT   Fonction REGEXP\$1INSTR   Fonction REGEXP\$1REPLACE   Fonction REGEXP\$1SUBSTR   Fonction REPEAT   Fonction REPLACE   Fonction REVERSE   Fonction RTRIM   Fonction SPLIT\$1PART   Fonction SUBSTRING   Fonction TRANSLATE   Fonctions TRIM   Fonction UPPER    | Tous sont pris en charge | Tous sont pris en charge | 
| Fonctions de formatage des types de données |    Fonction CAST   TO\$1CHAR   Fonction TO\$1DATE   TO\$1NUMBER   Chaînes de format datetime   Chaînes de format numériques    | Tous sont pris en charge | Tous sont pris en charge | 
| Fonctions de hachage |    AES\$1ENCRYPT   AES\$1DECRYPT   ENCODE   DECODE   MD5 fonction   SHA1 fonction   SHA2 fonction   XX\$1 HASH64    | Tous sont pris en charge | Tous sont pris en charge | 
| Symboles d’opérateurs mathématiques | \$1, -, \$1,/, % et @ | Tous sont pris en charge | Tous sont pris en charge | 
| Fonctions mathématiques |    Fonction ABS   Fonction ACOS   Fonction ASIN   Fonction ATAN   ATAN2 fonction   Fonction CBRT   Fonction CEILING (ou CEIL)   Fonction COS   Fonction COT   Fonction DEGREES   Fonction LTRIM   Fonction EXP   Fonction FLOOR   Fonction LN   Fonction LOG   Fonction MOD   Fonction PI   Fonction POWER   Fonction RADIANS   Fonction RANDOM   Fonction ROUND   Fonction SIGN   Fonction SIN   Fonctions SQRT   Fonction TRUNC    | Tous sont pris en charge | Tous sont pris en charge | 
| Fonctions VARBYTE |    UNHEX,   UNBASE64   SORT    HLL\$1SKETCH\$1AGG,    HLL\$1SKETCH\$1ESTIMATE   HL\$1UNION   HL\$1UNION\$1AGG    | Tous sont pris en charge | Tous sont pris en charge | 
| JSON |    TO\$1JSON   GET\$1JSON\$1OBJECT    | Tous sont pris en charge | Tous sont pris en charge | 
| Fonctions de tableau |    ARRAY\$1CONTAINS   ARRAY\$1DISTINCT   ARRAY\$1EXCEPTÉ   ARRAY\$1INTERSECT   ARRAY\$1JOIN   ARRAY\$1REMOVE   ARRAY\$1SORT   ARRAY\$1UNION    | Non pris en charge | Non pris en charge | 
| GROUPE PAR ÉTENDU | ENSEMBLES DE REGROUPEMENT, ROLLUP, CUBE | Non pris en charge | Non pris en charge | 
| Opération de tri | ORDER BY | Supportée à la condition qu'une clause ORDER BY ne soit prise en charge dans la clause de partition d'une fonction de fenêtre que lors de l'interrogation de tables avec la confidentialité différentielle activée. | Pris en charge | 
| Limites de lignes | LIMITE, DÉCALAGE | Non pris en charge CTEs lors de l'utilisation de tables protégées par la confidentialité différentielle | Tous sont pris en charge | 
| Aliasing de tables et de colonnes |   | Pris en charge | Pris en charge | 
| Fonctions mathématiques sur les fonctions d'agrégation |   | Pris en charge | Pris en charge | 
| Fonctions scalaires dans les fonctions d'agrégation |   | Pris en charge | Pris en charge | 

## Alternatives courantes pour les constructions SQL non prises en charge
<a name="common-alternatives"></a>


| Catégorie | construction SQL | Autrement | 
| --- |--- |--- |
|  Fonctions de fenêtrage  |    LISTAGG   PERCENTILE\$1CONT   PERCENTILE\$1DISC    | Vous pouvez utiliser la fonction d'agrégation équivalente avec GROUP BY. | 
| Symboles d’opérateurs mathématiques |    \$1column \$1\$1/ 2   \$1column \$1/ 2   \$1column ^ 2    |    CBRT   SQRT   PUISSANCE (\$1column, 2)    | 
| Fonctions scalaires |    SYSDATE   \$1column : :entier   convertir (type, \$1column)    |    CURRENT\$1DATE   CAST \$1column EN TANT QU'entier   Type CAST \$1column AS    | 
| Littéraux | INTERVALLE « 1 SECONDE » | INTERVALLE « 1 » SECONDE | 
| Limitation des lignes | STOP n | LIMITE n | 
| Joindre |    USING   NATURAL    | La clause ON doit contenir explicitement un critère de jointure. | 

# Conseils et exemples de requêtes relatives à la confidentialité différentielle
<a name="dp-query-tips-examples"></a>

AWS Clean Rooms La confidentialité différentielle utilise une [structure de requête polyvalente](dp-sql-capabilities.md) pour prendre en charge une grande variété de constructions SQL telles que les expressions de table communes (CTEs) pour la préparation des données et les fonctions d'agrégation couramment utilisées telles que`COUNT`, ou. `SUM` Afin de masquer la contribution de tout utilisateur potentiel à vos données en ajoutant du bruit aux résultats des requêtes agrégées au moment de l'exécution, la confidentialité AWS Clean Rooms différentielle exige que les fonctions d'agrégation finales `SELECT statement` soient exécutées sur des données au niveau de l'utilisateur. 

L'exemple suivant utilise deux tables nommées `socialco_impressions` et `socialco_users` provenant d'un éditeur multimédia qui souhaite protéger les données en utilisant une confidentialité différentielle tout en collaborant avec une marque sportive utilisant `athletic_brand_sales` des données. L'éditeur multimédia a configuré la `user_id` colonne comme colonne d'identifiant utilisateur tout en activant la confidentialité différentielle dans AWS Clean Rooms. L'annonceur n'a pas besoin d'une protection différentielle de la confidentialité et souhaite exécuter une requête en utilisant CTEs des données combinées. Comme son CTE utilise des tables protégées de confidentialité différentielles, l'annonceur inclut la colonne d'identifiant d'utilisateur de ces tables protégées dans la liste des colonnes CTE et joint les tables protégées dans la colonne d'identifiant d'utilisateur. 

```
WITH matches_table AS(
     SELECT si.user_id, si.campaign_id, s.sale_id, s.sale_price
     FROM socialco_impressions si
     JOIN socialco_users su
         ON su.user_id = si.user_id
     JOIN athletic_brand_sales s
         ON s.emailsha256 = su.emailsha256
     WHERE s.timestamp > si.timestamp
    
UNION ALL
 
     SELECT si.user_id, si.campaign_id, s.sale_id, s.sale_price
     FROM socialco_impressions si
     JOIN socialco_users su
         ON su.user_id = si.user_id
     JOIN athletic_brand_sales s
         ON s.phonesha256 = su.phonesha256
     WHERE s.timestamp > si.timestamp
)
        
SELECT COUNT (DISTINCT user_id) as unique_users
FROM matches_table
GROUP BY campaign_id
ORDER BY COUNT (DISTINCT user_id) DESC
LIMIT 5
```

De même, si vous souhaitez exécuter des fonctions de fenêtre sur des tables de données protégées par la confidentialité différentielle, vous devez inclure la colonne d'identifiant utilisateur dans la `PARTITION BY` clause.

```
ROW_NUMBER() OVER (PARTITION BY conversion_id, user_id ORDER BY match_type, match_age) AS row
```

# Limites de la confidentialité AWS Clean Rooms différentielle
<a name="dp-limitations"></a>

AWS Clean Rooms La confidentialité différentielle ne permet pas de résoudre les situations suivantes :

1. AWS Clean Rooms La confidentialité différentielle prend uniquement en charge les requêtes utilisant des tables basées sur Amazon S3. AWS Glue Il ne prend pas en charge les requêtes avec les tables Snowflake ou Amazon Athena.

1. AWS Clean Rooms La confidentialité différentielle ne permet pas de lutter contre les attaques temporelles. Par exemple, ces attaques sont possibles dans les scénarios où un utilisateur individuel fournit un grand nombre de lignes et où l'ajout ou la suppression de cet utilisateur modifie de manière significative le temps de calcul de la requête.

1. AWS Clean Rooms La confidentialité différentielle ne garantit pas une confidentialité différentielle lorsqu'une requête SQL peut entraîner un débordement ou des erreurs de diffusion non valides au moment de l'exécution en raison de l'utilisation de certaines constructions SQL. 

   Le tableau suivant répertorie certaines constructions SQL, mais pas toutes, susceptibles de générer des erreurs d'exécution et qui doivent être vérifiées dans les modèles d'analyse. Nous vous recommandons d'approuver les modèles d'analyse qui minimisent les risques de telles erreurs d'exécution et de consulter régulièrement les journaux de requêtes pour déterminer si les requêtes sont conformes à l'accord de collaboration.

   Les constructions SQL suivantes sont vulnérables aux erreurs de débordement :    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/clean-rooms/latest/userguide/dp-limitations.html)

1. La fonction de formatage du type de données CAST est vulnérable aux erreurs de conversion non valides.

   Vous pouvez configurer [CloudWatch pour créer un filtre métrique pour un groupe de journaux](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CreateMetricFilterProcedure.html), puis [créer une CloudWatch alarme](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Alarm-On-Logs.html) sur ce filtre métrique afin de recevoir des alertes en cas de dépassement potentiel ou d'erreur de casting. 

   Plus précisément, vous devez surveiller les codes d'erreur`CastError`,`OverflowError`,`ConversionError`. La présence de ces codes d'erreur indique une attaque potentielle par canal secondaire, mais peut également indiquer une requête SQL erronée.

   Pour de plus amples informations, veuillez consulter [Connexion à une analyse AWS Clean Rooms](query-logs.md).