# Création de compte

Après avoir installé l'application Seald sur le poste utilisateur, il vous faut créer un compte utilisateur.

Il existe trois méthodes pour créer un compte Seald avec l'application de bureau :

WARNING

Si vous avez déjà effectué ces étapes sur un autre ordinateur, veuillez suivre le guide d'ajout d'appareil. Si vous recommencez ces étapes, vous risquez d'écraser votre compte et de perdre accès à vos documents et e-mails précédemment chiffrés.

# Questions fréquemment posées

Des questions reviennent souvent lors d'un déploiement de Seald. Voici les réponses aux questions les plus fréquemment posées.

# Peut-on configurer plusieurs comptes Seald sur un même ordinateur ?

Il est possible de configurer un compte Seald par session utilisateur. Il n'est en revanche pas possible d'avoir plusieurs comptes Seald configurés en même temps dans une même session utilisateur.

# À quoi sert l'adresse e-mail associée au compte Seald ?

Un compte utilisateur est une identité enregistrée sur les serveurs de Seald. Celle-ci est associée à une ou plusieurs adresses e-mail. L'une d'entre elle est appelée adresse email primaire, elle est utilisée par Seald pour communiquer avec l'utilisateur. Par ailleurs, toutes les adresses email sont utilisables par d'autres utilisateurs de Seald pour retrouver l'identité Seald associée.

# Puis-je associer une adresse email à plusieurs utilisateurs ?

Il n'est pas possible d'associer une adresse email (par exemple l'adresse d'une liste de diffusion) à plusieurs comptes utilisateurs avec Seald. Les destinataires doivent être déclarés individuellement.

# Y a-t-il un mot de passe pour mon compte utilisateur ?

Non. Un utilisateur ne dispose pas de mot de passe pour accéder à son compte Seald. Seules des clés privées d'identité permettent d'accéder à un compte Seald. Seuls les appareils enregistrés d'un utilisateur et d'éventuelles clés de récupération administrateurs permettent d'accéder à de telles clés.

# Puis-je associer plusieurs appareils à mon compte utilisateur ?

Une fois un compte utilisateur créé sur un appareil, il est possible d'ajouter des nouveaux appareils :

DANGER

Si vous forcez la recréation d'un compte utilisateur avec la même adresse e-mail sur un nouvel ordinateur, le compte de l'ancien ordinateur deviendra inopérant, et le compte du nouvel appareil n'aura pas accès aux documents et emails protégés depuis et pour l'ancien appareil.

# En interface graphique

Pour créer un compte en interface graphique, il faut :

  1. Inviter l'utilisateur depuis le tableau d'administration ;
  2. Lancer l'application qui a été installée à l'étape précédente ;
  3. Choisir "Rejoindre une équipe" ;
  4. Entrez votre nom complet, par exemple "Steve Jobs", puis cliquez sur "Suivant" ;
  5. Entrez votre adresse e-mail, par exemple "steve@mycompany.com", acceptez les CGL et cliquez sur "Suivant" ;
  6. Si un avertissement vous indiquant que "Cet e-mail existe déjà. L'ancien compte sera révoqué" s'affiche, cela veut dire que vous avez déjà effectué ces opérations sur un autre ordinateur, et qu'en continuant vous écraserez votre ancien compte, et les appareils qui y sont associés. Si vous souhaitez utiliser votre compte existant, veuillez suivre le guide d'ajout d'appareil ;
  7. Recopiez le code de validation qui vous est transmis par e-mail ;
  8. Sélectionnez l'équipe que vous voulez rejoindre et acceptez ;

Pour plus de détails sur les différentes options lors de la création de compte depuis l'application de bureau, une documentation complète est à votre disposition ici.

# En ligne de commande

Il est possible d'utiliser l'interface en ligne de commande pour créer un compte utilisateur.

Pour ce faire, il faut :

  1. Inviter l'utilisateur depuis le tableau d'administration ;
  2. Récupérer l'ID de votre Team dans la partie "Profil" -> "Général" du tableau d'administration ;
  3. Exécuter la commande de création suivante :
cd %LOCALAPPDATA%\Programs\Seald
seald-cli create-account --display-name "Steve Jobs" --email steve@mycompany.com --accept-licence --team-id 00000000-0000-0000-0000-000000000000 --accept-backup-keys
  1. Il se peut que la commande vous demande si vous souhaitez écraser votre compte. Cela est très certainement dû au fait que vous avez déjà effectué ces étapes sur un autre ordinateur, veuillez suivre le guide d'ajout d'appareil pour l'utiliser. Si vous souhaitez écraser l'ancien compte, vous pouvez écrire yes et appuyer sur la touche entrée ;
  2. Il vous sera ensuite demandé de recopier le code de confirmation reçu par email, faites-le et appuyer sur entrée ;

TIP

Pour une explication détaillée de l'usage de la CLI sur les différents systèmes d'exploitation, référez-vous à son guide d'usage.

Pour une explication détaillée de cette commande, référez-vous à sa documentation : create-account.

# En ligne de commande avec un jeton de validation

Pour simplifier l'installation et éviter de devoir inviter manuellement chaque utilisateur et de valider chaque adresse email individuellement, il est possible d'utiliser des jetons de validation lors de la création des comptes.

  1. Faire valider le domaine voulu auprès des équipes Seald ;
  2. Récupérer la clé de validation dans le tableau d'administration ;
  3. Générer un jeton de validation pour l'adresse e-mail voulue ;
  4. Exécuter la commande suivante :
cd %LOCALAPPDATA%\Programs\Seald
seald-cli create-account --display-name "Steve Jobs" --accept-licence --email steve@apple.com --email-validation 5f32fdb5-cb1d-4b1b-b981-d35f75e9376c:1b4e5537890f92cce85d86df22eergerg4 --accept-backup-keys

# Génération des jetons de validation

Ces jetons sont générés à l'aide d'une clé de validation spécifique au domaine à valider accessible dans le tableau d'administration. Ce menu n'est disponible que si l'équipe Seald a validé que le domaine correspondant appartient bien exclusivement à votre équipe.

Les jetons de validation peuvent être générés manuellement sur le tableau d'administration. Pour cela, il faut aller sur la page "Utilisateur", onglet "Invitations en cours". Puis, pour l'utilisateur souhaité, si son adresse email correspond à l'un des domaines pré-validés, voir les options et choisir "Générer un jeton de pré-validation".

Il est aussi possible de générer ces jetons de manière programmatique. Les jetons sont générés par le script suivant, téléchargeable ici.

const crypto = require('crypto')

const email = process.argv[2]
const domainValidationKeyId = process.argv[3]
const domainValidationKey = process.argv[4]

const random = (size = 1000) => crypto.randomBytes(size)

const scrypt = (buff, salt) => new Promise((resolve, reject) => {
  crypto.scrypt(
    buff,
    salt,
    64, // 64 bytes for a 256 bits key (there is also a signing key for HMAC)
    { N: 16384, r: 8, p: 1 },
    (err, key) => {
      if (err) reject(err)
      else resolve(key)
    }
  )
})

const generate = async (email, domainValidationKeyId, domainValidationKey) => {
  const nonce = random(32).toString('hex')
  const token = (await scrypt(
    Buffer.from(`${email}-${domainValidationKey}`, 'utf8'),
    Buffer.from(nonce, 'utf8')
  )).toString('hex')
  console.log(`TOKEN: ${domainValidationKeyId}:${nonce}:${token}`)
}

generate(email, domainValidationKeyId, domainValidationKey)

Ce script s'exécute à l'aide de NodeJS, en fournissant les arguments suivants :

node script.js <email> <domainValidationKeyId> <domainValidationKey>

domainValidationKeyId et domainValidationKey peuvent être trouvés sur le tableau d'administration, sur la page des domaines validés.