Skip to content

Commit b8005d8

Browse files
committed
copy(experiemental_taintObjectReference): final review pass
1 parent 8fb65d5 commit b8005d8

1 file changed

Lines changed: 9 additions & 9 deletions

File tree

src/content/reference/react/experimental_taintObjectReference.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@ title: experimental_taintObjectReference
66

77
**Cette API est expérimentale : elle n’a donc pas encore été livrée dans une version stable de React.**
88

9-
Vous pouvez l'essayer en mettant à jour vos modules React vers la version expérimentale la plus récente :
9+
Vous pouvez l'essayer en mettant à jour vos modules React afin d'utiliser la version expérimentale la plus récente :
1010

1111
- `react@experimental`
1212
- `react-dom@experimental`
1313
- `eslint-plugin-react-hooks@experimental`
1414

15-
Les versions expérimentales de React sont susceptibles de contenir des bugs. Ne les utilisez pas en production.
15+
Les versions expérimentales de React sont susceptibles de contenir des bugs. Veillez donc à ne pas les utiliser en production.
1616

1717
Cette API n'est disponible qu'au sein des React Server Components.
1818

@@ -39,10 +39,10 @@ Pour empêcher le passage d'une clé, d'un hash ou d'un jeton, utilisez [`taintU
3939

4040
### `taintObjectReference(message, object)` {/*taintobjectreference*/}
4141

42-
Appelez `taintObjectReference` avec un objet pour indiquer à React qu'il ne doit pas permettre son passage tel quel vers le côté client :
42+
Appelez `taintObjectReference` avec un objet pour indiquer à React qu'il ne doit pas permettre le passage de cet objet tel quel vers le côté client :
4343

4444
```js
45-
import {experimental_taintObjectReference} from 'react';
45+
import { experimental_taintObjectReference } from 'react';
4646

4747
experimental_taintObjectReference(
4848
'Ne passez pas TOUTES les variables d’environnement au client.',
@@ -54,9 +54,9 @@ experimental_taintObjectReference(
5454

5555
#### Paramètres {/*parameters*/}
5656

57-
* `message` : le message que vous souhaitez afficher si l'objet est passé à un Composant Client. Ce message fera partie de l'erreur qui sera levée si l'objet est passé à un Comopsant Client.
57+
* `message` : le message que vous souhaitez afficher si l'objet est passé à un Composant Client. Ce message fera partie de l'erreur qui sera levée si l'objet est passé à un Composant Client.
5858

59-
* `object` : l'objet a ternir. Les fonctions et instances de classes peuvent être passées en tant qu'`object` à `taintObjectReference`. React empêche d'entrée de jeu leur passage aux Composants Clients, mais ça remplacera le message d'erreur par défaut avec ce que vous aurez passé comme `message`. Notez que lorsqu'une instance précise d'un tableau typé *(Typed Array, NdT)* est passé comme `object` à `taintObjectReference`, les copies de ce tableau typé ne seront quant à elles pas ternies.
59+
* `object` : l'objet a « ternir ». Les fonctions et instances de classes peuvent être passées en tant qu'`object` à `taintObjectReference`. React empêche d'entrée de jeu leur passage aux Composants Clients, mais ça remplacera le message d'erreur par défaut avec ce que vous aurez passé comme `message`. Notez que lorsqu'une instance précise d'un tableau typé *(Typed Array, NdT)* est passée comme `object` à `taintObjectReference`, les copies de ce tableau typé ne seront quant à elles pas ternies.
6060

6161
#### Valeur renvoyée {/*returns*/}
6262

@@ -68,7 +68,7 @@ experimental_taintObjectReference(
6868

6969
<Pitfall>
7070

71-
**Ne comptez pas sur le ternissement pour garantir la sécurité.** Ternir un objet n'empêche pas la fuite de toute donnée dérivée imaginable. Un clone de l'objet terni créera par exemple un objet intact. L'utilisation de données d'un objet terni (ex. `{secret: taintedObj.secret}`) crée une nouvelle valeur, ou un nouvel objet, qui ne sera pas terni·e. Le ternissement est une couche de protection, mais une appli sécurisée aura plusieurs couches complémentaires, des API soigneusement conçues et des mécanismes d'isolation en place.
71+
**Ne comptez pas sur le ternissement pour garantir la sécurité.** Ternir un objet n'empêche pas la fuite de toute donnée dérivée imaginable. Un clone de l'objet terni créera par exemple un objet intact. L'utilisation de données d'un objet terni (ex. `{secret: taintedObj.secret}`) crée une nouvelle valeur, ou un nouvel objet, qui ne sera pas terni·e. Le ternissement est une couche de protection, mais une appli sécurisée aura plusieurs couches de protection complémentaires, des API soigneusement conçues et des mécanismes d'isolation en place.
7272

7373
</Pitfall>
7474

@@ -78,7 +78,7 @@ experimental_taintObjectReference(
7878

7979
### Empêcher des données utilisateur d'atteindre le client par inadvertance {/*prevent-user-data-from-unintentionally-reaching-the-client*/}
8080

81-
Un Composant Client ne devrait jamais accepter des objets comportant des données sensibles. Dans l'idéal, les fonctions de chargement de données ne devraient pas exposer des données auxquelles l'utilisateur actif n'a pas accès. Mais des erreurs peuvent survenir lors d'une refonte du code. Pour se protéger contre des erreurs en aval nous pouvons « ternir » l'objet utilisateur sans notre API de données.
81+
Un Composant Client ne devrait jamais accepter des objets comportant des données sensibles. Dans l'idéal, les fonctions de chargement de données ne devraient pas exposer des données auxquelles l'utilisateur actif n'a pas accès. Mais des erreurs peuvent survenir lors d'une refonte du code. Pour se protéger contre des erreurs en aval nous pouvons « ternir » l'objet utilisateur dans notre API de données.
8282

8383
```js
8484
import { experimental_taintObjectReference } from 'react';
@@ -130,7 +130,7 @@ export async function InfoCard({ user }) {
130130
}
131131
```
132132

133-
Dans l'idéal, `getUser` ne devait pas exposer de données auxquelles l'utilisateur courant n'a pas accès. Pour empêcher le passage en aval de l'objet `user` à un Composant Client, nous pouvons « ternir » cet objet :
133+
Dans l'idéal, `getUser` ne devait pas exposer de données auxquelles l'utilisateur courant n'a pas accès. Pour empêcher le passage en aval de l'objet `user` à un Composant Client, nous pouvons décider de « ternir » cet objet :
134134

135135

136136
```js

0 commit comments

Comments
 (0)