Documentation
SDK client
Cloud

Le cloud Secrecy

Secrecy cloud est un service qui vous permet de télécharger vos fichiers ou dossiers sur le cloud et de les partager avec d'autres. Toutes les données sont chiffrées dans le navigateur, avec les clés de l'identité de l'utilisateur dans votre application, avant d'être envoyées vers le cloud. Secrecy ne stocke ces clés que verrouillées, jamais sous une forme lisible : les clés déverrouillées restent dans le navigateur. Cela signifie que seuls l'utilisateur, et les utilisateurs ou groupes avec qui il partage, peuvent déchiffrer le fichier. Le fichier est déchiffré côté client, après le téléchargement.

Comment fonctionne Secrecy cloud ?

Le cloud est composé de nœuds. Les nœuds représentent les fichiers et les dossiers qui sont les éléments visuels du cloud. Comme un cloud classique, un dossier peut lui-même contenir des fichiers ou des dossiers en tant qu'éléments enfants. Contrairement à un dossier, les fichiers ne peuvent pas avoir d'autres éléments enfants. Cependant, les fichiers contiennent un historique de leurs versions. La version actuelle est basée sur la dernière version du fichier dans l'historique.

Gérer le cloud de sécurité

Toutes les données contenues dans le cloud peuvent être partagées avec d'autres personnes. Les dossiers peuvent également être supprimés. Dans le cas des fichiers, grâce à leur historique, il est possible de modifier, ajouter une nouvelle version du fichier à l'historique, restaurer une version précédente du fichier, supprimer une version du fichier ou supprimer l'intégralité du fichier. De plus, tous les fichiers et dossiers peuvent être déplacés vers un autre dossier.


Le cloud, c'est sont des nœuds !

Comme décrit plus haut, la notion de node est au cœur du concept de Secrecy cloud.
Le cloud est composé d'un nœud racine unical qui est le parent de tous les nœuds dans le cloud. Le nœud racine est le nœud qui s'affiche lorsque vous ouvrez le cloud.

The root node has its name property equal to root

Le service cloud de Secrecy comprend la gestion du partage de données entre les utilisateurs Secrecy. Il gère également une trash, avec deux niveaux de suppression (permanente, récupérable).


Obtenir le cloud

La méthode secrecyClient.cloud.nodeFull est conçue pour récupérer un dossier « cloud » de l'utilisateur.

cloud.ts
const getMyCloud = async (): Promise<NodeFull | null> => {
  // First we need to check if the secrecyClient is available
  if (!secrecyClient) {
    return null;
  }
 
  try {
    // Get cloud content
    const cloud = await secrecyClient.cloud.nodeFull();
 
    return cloud;
  } catch (error) {
    console.error(error);
    return null;
  }
};

Récupérer un fichier ou un dossier du cloud par son identifiant

La même méthode secrecyClient.cloud.nodeFull est utilisée pour récupérer un nœud par son identifiant.

cloud.ts
const getCloudNodeById = async (id: string): Promise<NodeFull | null> => {
  // First we need to check if the secrecyClient is available
  if (!secrecyClient) {
    return null;
  }
 
  try {
    // Get the node by id
    const node = await secrecyClient.cloud.nodeFull({ id });
 
    return node;
  } catch (error) {
    console.error(error);
    return null;
  }
};

La méthode nodeFull renvoie un NodeFull, c'est-à-dire le nœud avec son parent, ses children, sa donnée courante et son historique. Utilisez secrecyClient.cloud.node pour obtenir le nœud seul. Les deux prennent un objet optionnel { id, deleted } et renvoient le nœud racine lorsqu'aucun id n'est fourni.