forked from Github-Mirrors/canaille

Currently translated at 55.9% (571 of 1021 strings) Translation: Canaille/Documentation Translate-URL: https://hosted.weblate.org/projects/canaille/documentation/fr/
6233 lines
240 KiB
Text
6233 lines
240 KiB
Text
# SOME DESCRIPTIVE TITLE.
|
||
# Copyright (C) 2024, Yaal Coop
|
||
# This file is distributed under the same license as the canaille package.
|
||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
|
||
#
|
||
msgid ""
|
||
msgstr ""
|
||
"Project-Id-Version: canaille 0.0.56\n"
|
||
"Report-Msgid-Bugs-To: contact@yaal.coop\n"
|
||
"POT-Creation-Date: 2024-12-05 15:13+0100\n"
|
||
"PO-Revision-Date: 2024-12-06 14:12+0000\n"
|
||
"Last-Translator: Éloi Rivard <eloi.rivard@nubla.fr>\n"
|
||
"Language-Team: French <https://hosted.weblate.org/projects/canaille/"
|
||
"documentation/fr/>\n"
|
||
"Language: fr\n"
|
||
"MIME-Version: 1.0\n"
|
||
"Content-Type: text/plain; charset=UTF-8\n"
|
||
"Content-Transfer-Encoding: 8bit\n"
|
||
"Plural-Forms: nplurals=2; plural=n > 1;\n"
|
||
"X-Generator: Weblate 5.9-dev\n"
|
||
"Generated-By: Babel 2.16.0\n"
|
||
|
||
#: ../development/changelog.rst:2 939119e221dc48ccadef61738f593f75
|
||
msgid "Release notes"
|
||
msgstr "Notes de version"
|
||
|
||
#: ../development/changelog.rst:4 5c86e0ddf13b4a11afae719b4a8c4213
|
||
msgid "All notable changes to this project will be documented in there."
|
||
msgstr "Tous les changements notables du projet seront documentés ici."
|
||
|
||
#: ../development/changelog.rst:6 61e5050f997c46568da55c6829f11531
|
||
msgid ""
|
||
"The format is based on `Keep a Changelog <https://keepachangelog.com/"
|
||
"en/1.0.0/>`_, and this project adheres to `Semantic Versioning <https://"
|
||
"semver.org/spec/v2.0.0.html>`_."
|
||
msgstr ""
|
||
"Le format est basé sur `Keep a Changelog <https://keepachangelog.com/fr/1.0."
|
||
"0/>`_, et ce projet adhère à la politique de `versionnage sémantique "
|
||
"<https://semver.org/lang/fr/spec/v2.0.0.html>`_."
|
||
|
||
#: ../../CHANGES.rst:2 206f6798b58b44e9ade1689d820c7552
|
||
msgid "[0.0.57] - Unreleased"
|
||
msgstr "[0.0.57] - Inédit"
|
||
|
||
#: ../../CHANGES.rst:5 ../../CHANGES.rst:25 ../../CHANGES.rst:53
|
||
#: ../../CHANGES.rst:72 ../../CHANGES.rst:79 ../../CHANGES.rst:98
|
||
#: ../../CHANGES.rst:158 ../../CHANGES.rst:184 ../../CHANGES.rst:199
|
||
#: ../../CHANGES.rst:248 ../../CHANGES.rst:274 ../../CHANGES.rst:293
|
||
#: ../../CHANGES.rst:301 ../../CHANGES.rst:310 ../../CHANGES.rst:336
|
||
#: ../../CHANGES.rst:371 ../../CHANGES.rst:397 ../../CHANGES.rst:446
|
||
#: ../../CHANGES.rst:474 ../../CHANGES.rst:504 ../../CHANGES.rst:560
|
||
#: ../../CHANGES.rst:593 ../../CHANGES.rst:614 ../../CHANGES.rst:624
|
||
#: ../../CHANGES.rst:647 ../../CHANGES.rst:714 ../../CHANGES.rst:752
|
||
#: ../../CHANGES.rst:769 ../../CHANGES.rst:805 5b2ae28202d249e39370b51c82a35bda
|
||
#: a10a871fc6ea42e8a52a1aa323001a53
|
||
msgid "Added"
|
||
msgstr "Ajouté"
|
||
|
||
#: ../../CHANGES.rst:6 ba76f44c46d54198af2dcd0692442ce2
|
||
msgid "Password compromission check :issue:`179`"
|
||
msgstr "Vérification de la compromission des mots de passe :issue:`179`"
|
||
|
||
#: ../../CHANGES.rst:7 4eaf987f0daa4715826a62f691583866
|
||
msgid ""
|
||
":attr:`~canaille.core.configuration.CoreSettings.ADMIN_EMAIL` and :attr:"
|
||
"`~canaille.core.configuration.CoreSettings."
|
||
"ENABLE_PASSWORD_COMPROMISSION_CHECK` and :attr:`~canaille.core.configuration."
|
||
"CoreSettings.API_URL_HIBP` :issue:`179`"
|
||
msgstr ""
|
||
":attr:`~canaille.core.configuration.CoreSettings.ADMIN_EMAIL` et :attr:"
|
||
"`~canaille.core.configuration.CoreSettings."
|
||
"ENABLE_PASSWORD_COMPROMISSION_CHECK` et :attr:`~canaille.core.configuration."
|
||
"CoreSettings.API_URL_HIBP` :issue:`179`"
|
||
|
||
#: ../../CHANGES.rst:13 ../../CHANGES.rst:33 ../../CHANGES.rst:46
|
||
#: ../../CHANGES.rst:58 ../../CHANGES.rst:83 ../../CHANGES.rst:91
|
||
#: ../../CHANGES.rst:139 ../../CHANGES.rst:165 ../../CHANGES.rst:217
|
||
#: ../../CHANGES.rst:254 ../../CHANGES.rst:323 ../../CHANGES.rst:341
|
||
#: ../../CHANGES.rst:379 ../../CHANGES.rst:418 ../../CHANGES.rst:453
|
||
#: ../../CHANGES.rst:496 ../../CHANGES.rst:600 ../../CHANGES.rst:654
|
||
#: ../../CHANGES.rst:686 ../../CHANGES.rst:700 51ebea9760e04f049db58a8d1e2fdd09
|
||
#: f16b19d1f00741a9a6ac39eca0c46f63
|
||
msgid "Changed"
|
||
msgstr "Modifié"
|
||
|
||
#: ../../CHANGES.rst:14 5085714dd09e40dcbf2540a73162985c
|
||
msgid ""
|
||
"PostgreSQL and MySQL extras does not rely on libraries that need to be "
|
||
"compiled."
|
||
msgstr ""
|
||
"Les extras PostgreSQL et MySQL ne dépendent plus de bibliothèques qui "
|
||
"doivent être compilées."
|
||
|
||
#: ../../CHANGES.rst:15 9108b999fecf4abf910d338c13fd0fc0
|
||
msgid ""
|
||
"``.env`` files are not loaded by default. The ``ENV_FILE`` env var must be "
|
||
"passed so ``.env`` files are loaded."
|
||
msgstr ""
|
||
"Les fichiers ``.env`` ne sont pas chargés par défaut. La variable "
|
||
"d'environnement ``ENV_FILE`` doit être passé pour que les fichiers ``.env`` "
|
||
"soient chargées."
|
||
|
||
#: ../../CHANGES.rst:18 56edbd9989cf41c4b9b58dfd5e108991
|
||
msgid "[0.0.56] - 2024-11-07"
|
||
msgstr "[0.0.56] - 2024-11-07"
|
||
|
||
#: ../../CHANGES.rst:21 ../../CHANGES.rst:63 ../../CHANGES.rst:102
|
||
#: ../../CHANGES.rst:110 ../../CHANGES.rst:118 ../../CHANGES.rst:125
|
||
#: ../../CHANGES.rst:132 ../../CHANGES.rst:146 ../../CHANGES.rst:176
|
||
#: ../../CHANGES.rst:189 ../../CHANGES.rst:207 ../../CHANGES.rst:226
|
||
#: ../../CHANGES.rst:234 ../../CHANGES.rst:260 ../../CHANGES.rst:268
|
||
#: ../../CHANGES.rst:288 ../../CHANGES.rst:318 ../../CHANGES.rst:350
|
||
#: ../../CHANGES.rst:358 ../../CHANGES.rst:384 ../../CHANGES.rst:404
|
||
#: ../../CHANGES.rst:428 ../../CHANGES.rst:438 ../../CHANGES.rst:459
|
||
#: ../../CHANGES.rst:467 ../../CHANGES.rst:490 ../../CHANGES.rst:513
|
||
#: ../../CHANGES.rst:525 ../../CHANGES.rst:534 ../../CHANGES.rst:543
|
||
#: ../../CHANGES.rst:552 ../../CHANGES.rst:572 ../../CHANGES.rst:579
|
||
#: ../../CHANGES.rst:629 ../../CHANGES.rst:637 ../../CHANGES.rst:662
|
||
#: ../../CHANGES.rst:670 ../../CHANGES.rst:678 ../../CHANGES.rst:691
|
||
#: ../../CHANGES.rst:705 ../../CHANGES.rst:737 ../../CHANGES.rst:760
|
||
#: ../../CHANGES.rst:791 ada79906de064c77a4cff6eda5238016
|
||
msgid "Fixed"
|
||
msgstr "Corrigé"
|
||
|
||
#: ../../CHANGES.rst:22 3d50d62c605c4973956375e2229be4f1
|
||
msgid ""
|
||
"With LDAP backend, updating another user groups could result in a permission "
|
||
"lost for the editor. :issue:`202`"
|
||
msgstr ""
|
||
"Avec la base de données LDAP, la mise à jour des groupes d’utilisateurs "
|
||
"pouvait engendrer une perte de permissions de l’éditeur. :issue:`202`"
|
||
|
||
#: ../../CHANGES.rst:26 ce5db69d7e134a938f544bc4c14c2dbc
|
||
msgid ""
|
||
":attr:`~canaille.core.configuration.CoreSettings.MAX_PASSWORD_LENGHT` and :"
|
||
"attr:`~canaille.core.configuration.CoreSettings.MIN_PASSWORD_LENGHT` "
|
||
"configuration options :issue:`174`"
|
||
msgstr ""
|
||
"Options de configuration :attr:`~canaille.core.configuration.CoreSettings."
|
||
"MAX_PASSWORD_LENGHT` et :attr:`~canaille.core.configuration.CoreSettings."
|
||
"MIN_PASSWORD_LENGHT` :issue:`174`"
|
||
|
||
#: ../../CHANGES.rst:28 0952593cb9c24691baaf0bbbeafbefd0
|
||
msgid "Password strength visual indicator. :issue:`174`"
|
||
msgstr "Indicateur visuel de la force des mots de passe :issue:`174`"
|
||
|
||
#: ../../CHANGES.rst:29 34660cc568ac402485a0ae2a226c3ed9
|
||
msgid "Security events logs. :issue:`177`"
|
||
msgstr "Journalisation des évènements de sécurité. :issue:`177`"
|
||
|
||
#: ../../CHANGES.rst:30 74390b590e9e4714bff818c8d9d95630
|
||
msgid "Support for Python 3.13. :pr:`186`"
|
||
msgstr "Support de Python 3.13. :pr:`186`"
|
||
|
||
#: ../../CHANGES.rst:34 962e298f8c7c44a8b3b0f450eb596537
|
||
msgid "Update to `HTMX` 2.0.3. :pr:`184`"
|
||
msgstr "Mise à jour vers HTMX 2.0.3. :pr:`184`"
|
||
|
||
#: ../../CHANGES.rst:35 ab78bee0981041d3ade7f68673ab3f12
|
||
msgid "Migrate the Python project management tool from poetry to uv. :pr:`187`"
|
||
msgstr ""
|
||
"Migration de poetry à uv comme outil de gestion de projet Python. :pr:`187`"
|
||
|
||
#: ../../CHANGES.rst:36 7cb284d8934d4df7b96b3d995f0ae69a
|
||
msgid ""
|
||
"The ``sql`` package extra is now split between ``sqlite``, ``postgresql`` "
|
||
"and ``mysql``."
|
||
msgstr ""
|
||
"L’extra de paquet ``sql`` a été divisé en ``sqlite``, ``postgresql`` et "
|
||
"``mysql``."
|
||
|
||
#: ../../CHANGES.rst:39 ../../CHANGES.rst:389 ../../CHANGES.rst:797
|
||
#: 06fd8459f24443f5bc2dd961a2174774
|
||
msgid "Removed"
|
||
msgstr "Supprimé"
|
||
|
||
#: ../../CHANGES.rst:40 7dbb1818231144988378efbcc14e0335
|
||
msgid "End support for Python 3.9. :pr:`179`"
|
||
msgstr "Fin de support pour Python 3.9. :pr:`179`"
|
||
|
||
#: ../../CHANGES.rst:43 bb731fcd74024f44b0b679df8fd1de3b
|
||
msgid "[0.0.55] - 2024-08-30"
|
||
msgstr "[0.0.55] - 2024-08-30"
|
||
|
||
#: ../../CHANGES.rst:47 e3f7e5b1ec3d471bbaad41ad6afbd38e
|
||
msgid "Use poetry-core build backend. :pr:`178`"
|
||
msgstr ""
|
||
"Utilisation de `poetry-core` comme outil de construction de paquets. :pr:"
|
||
"`178`"
|
||
|
||
#: ../../CHANGES.rst:50 97d86f7b7b6d4df3a78b00068c114b55
|
||
msgid "[0.0.54] - 2024-07-25"
|
||
msgstr "[0.0.54] - 2024-07-25"
|
||
|
||
#: ../../CHANGES.rst:54 0f6a7830c88b4121b1141a68853d36fd
|
||
msgid ""
|
||
"Group member removal can be achieved from the group edition page. :issue:"
|
||
"`192`"
|
||
msgstr ""
|
||
"La suppression des membres de groupes peut être effectuée depuis la page "
|
||
"d’édition des groupes. :issue:`192`"
|
||
|
||
#: ../../CHANGES.rst:55 761788b232b74eb089dd20c1a57bcf2a
|
||
msgid "Model management commands. :issue:`117` :issue:`54`"
|
||
msgstr "Commande de gestion des modèles. :issue:`117` :issue:`54`"
|
||
|
||
#: ../../CHANGES.rst:59 1e28ba0fab8947bfbb7b10fc9dfca645
|
||
msgid "Model `identifier_attributes` are fixed."
|
||
msgstr "L’attribut `identifier_attributes` des models est fixe."
|
||
|
||
#: ../../CHANGES.rst:60 72287f1ba34c4cc8b2cf0b4af47bbd53
|
||
msgid "Bump to `HTMX` 1.9.12. :pr:`172`"
|
||
msgstr "Mise-à-jour vers `HTMX` 1.9.12. :pr:`172`"
|
||
|
||
#: ../../CHANGES.rst:65 72071aa06de847d29dcd9500881409d0
|
||
msgid "Dark theme colors for better readability."
|
||
msgstr "Couleurs des champs dans le thème sombre."
|
||
|
||
#: ../../CHANGES.rst:66 600f70e2aecd4eba9ddee16500df48db
|
||
msgid ""
|
||
"Crash for passwordless users at login when no SMTP server was configured."
|
||
msgstr ""
|
||
"Erreur lorsque les utilisateurs sans mots de passe lorsqu’aucun serveur SMTP "
|
||
"n’a été configuré."
|
||
|
||
#: ../../CHANGES.rst:69 09953502ecec43198af93b4c10d5dc3e
|
||
msgid "[0.0.53] - 2024-04-22"
|
||
msgstr "[0.0.53] - 2024-04-22"
|
||
|
||
#: ../../CHANGES.rst:73 4627291987094c60b1acc76d520719b4
|
||
msgid ""
|
||
"`env_prefix` :meth:`~canaille.create_app` variable can select the "
|
||
"environment var prefix."
|
||
msgstr ""
|
||
"La variable `env_prefix`de la méthode :meth:`~canaille.create_app` permet de "
|
||
"choisir le préfixe des variables d’environnement."
|
||
|
||
#: ../../CHANGES.rst:76 f21535ae9e6643708c8459143e861870
|
||
msgid "[0.0.52] - 2024-04-22"
|
||
msgstr "[0.0.52] - 2024-04-22"
|
||
|
||
#: ../../CHANGES.rst:80 c9c3eb7bdd894b96b0adf60e33691fd4
|
||
msgid "`env_file` create_app variable can customize/disable the .env file."
|
||
msgstr ""
|
||
"La variable `env_file` de la méthode `create_app` permet de désactiver ou "
|
||
"personnaliser le fichier `.env`."
|
||
|
||
#: ../../CHANGES.rst:84 7cda9bf8a22540d0b3233546e130847f
|
||
msgid "Locked users cannot be impersonated anymore."
|
||
msgstr "Les comptes verrouillés ne peuvent plus être incarnés."
|
||
|
||
#: ../../CHANGES.rst:85 965223cd352948c8a77f1b4ce2b50ce4
|
||
msgid "Minimum Python requirement is 3.9."
|
||
msgstr "La version minimum requise de Python est 3.9."
|
||
|
||
#: ../../CHANGES.rst:88 de227140ea8e4d629ffd4189dbd43460
|
||
msgid "[0.0.51] - 2024-04-09"
|
||
msgstr "[0.0.51] - 2024-04-09"
|
||
|
||
#: ../../CHANGES.rst:92 79f55debd9964020a684739fd256ef14
|
||
msgid "Display the menu bar on error pages."
|
||
msgstr "Affichage de la barre de menu sur les pages d’erreur."
|
||
|
||
#: ../../CHANGES.rst:95 27a5f8ea8faa41deaf71ae8564fd43a5
|
||
msgid "[0.0.50] - 2024-04-09"
|
||
msgstr "[0.0.50] - 2024-04-09"
|
||
|
||
#: ../../CHANGES.rst:99 8d78dcd06ac84e7d9075dbb55d08b68c
|
||
msgid "Sign in/out events are logged in. :issue:`177`"
|
||
msgstr ""
|
||
"Journalisation des évènements de connexion et déconnexion. :issue:`177`"
|
||
|
||
#: ../../CHANGES.rst:103 f54c1f04263c4f19bf7c01a9e9fb1533
|
||
msgid "`HTMX` and `JAVASCRIPT` configuration settings."
|
||
msgstr "Paramètres de configuration `HTMX` et `JAVASCRIPT`."
|
||
|
||
#: ../../CHANGES.rst:104 aac9f0d6bc274a6998bed8663e581445
|
||
msgid "Compatibility with old sessions IDs."
|
||
msgstr "Compatibilité avec les anciens identifiants de session."
|
||
|
||
#: ../../CHANGES.rst:107 6c309d659a9d4b00897c0c86136117f2
|
||
msgid "[0.0.49] - 2024-04-08"
|
||
msgstr "[0.0.49] - 2024-04-08"
|
||
|
||
#: ../../CHANGES.rst:111 e40c5385bf174d4dbdeb1e6c8f2bbca9
|
||
msgid "LDAP user group removal."
|
||
msgstr "Suppression des groupes d’utilisateurs avec LDAP."
|
||
|
||
#: ../../CHANGES.rst:112 db426dd917e9449ea1571f6d90fb59cb
|
||
msgid ""
|
||
"Display an error message when trying to remove the last user from a group."
|
||
msgstr ""
|
||
"Affichage d’un message d’erreur lors de tentatives de suppression du dernier "
|
||
"utilisateur d’un groupe."
|
||
|
||
#: ../../CHANGES.rst:115 aa9c1e96a9d84eb388b2ad22b0b9fa86
|
||
msgid "[0.0.48] - 2024-04-08"
|
||
msgstr "[0.0.48] - 2024-04-08"
|
||
|
||
#: ../../CHANGES.rst:119 3bbde6f2fc244902955a6b16a1d9bdc6
|
||
msgid "LDAP ``objectClass`` guessing exception."
|
||
msgstr "Exception lors de la détection des classes d’objet LDAP."
|
||
|
||
#: ../../CHANGES.rst:122 f55a477d72624ef691e7a783940c3208
|
||
msgid "[0.0.47] - 2024-04-08"
|
||
msgstr "[0.0.47] - 2024-04-08"
|
||
|
||
#: ../../CHANGES.rst:126 aa6227db351548d1a883af36de508805
|
||
msgid "Lazy permission loading exception."
|
||
msgstr "Exception lors du chargement paresseux des permissions."
|
||
|
||
#: ../../CHANGES.rst:129 665fb2129c5f4c498a9eca30a7625d69
|
||
msgid "[0.0.46] - 2024-04-08"
|
||
msgstr "[0.0.46] - 2024-04-08"
|
||
|
||
#: ../../CHANGES.rst:133 a736243f81d845d5a13e66303db4632d
|
||
msgid ""
|
||
"Saving an object with the LDAP backend keeps the ``objectClass`` un-managed "
|
||
"by Canaille. :pr:`171`"
|
||
msgstr ""
|
||
"La sauvegarde des objets avec LDAP garde les valeurs de ``objectClass`` non "
|
||
"gérés par Canaille. :pr:`171`"
|
||
|
||
#: ../../CHANGES.rst:136 23d50243f242497eafeb43190b191910
|
||
msgid "[0.0.45] - 2024-04-04"
|
||
msgstr "[0.0.45] - 2024-04-04"
|
||
|
||
#: ../../CHANGES.rst:140 8ca38c12afde4e1d881f0f631dee2180
|
||
msgid ""
|
||
"Internal indexation mechanism of :class:`~canaille.backends.memory.model."
|
||
"MemoryModel`."
|
||
msgstr ""
|
||
"Mécanisme d’indexation interne de :class:`~canaille.backends.memory.model."
|
||
"MemoryModel`."
|
||
|
||
#: ../../CHANGES.rst:143 0ec8aaff2a864d52beaead02de313d2f
|
||
msgid "[0.0.44] - 2024-03-29"
|
||
msgstr "[0.0.44] - 2024-03-29"
|
||
|
||
#: ../../CHANGES.rst:147 23af820d08664c0dbf3229567505e6a9
|
||
msgid "Fix the default LDAP ``USER_FILTER`` value."
|
||
msgstr "Correction de la valeur par défaut de ``USER_FILTER`` pour LDAP."
|
||
|
||
#: ../../CHANGES.rst:148 695d4f4fe29a4f07960244b87ee1db21
|
||
msgid "Fix the OIDC feature detection."
|
||
msgstr "Correction de la détection de la fonctionnalité OIDC."
|
||
|
||
#: ../../CHANGES.rst:151 e7f1b082e81e4486b09fc76512e49dc5
|
||
msgid "[0.0.43] - 2024-03-29"
|
||
msgstr "[0.0.43] - 2024-03-29"
|
||
|
||
#: ../../CHANGES.rst:155 ../../CHANGES.rst:414 5cd7f27a291e46298c9a3aa6ee0e5cf0
|
||
msgid "Configuration files must be updated."
|
||
msgstr "Les fichiers de configuration doivent être mis à jour."
|
||
|
||
#: ../../CHANGES.rst:160 d7d284cc9b424ec69d5240b428964d52
|
||
msgid "Add ``created`` and ``last_modified`` datetime for all models."
|
||
msgstr ""
|
||
"Ajout des dates ``created`` et ``last_modified`` pour tous les modèles."
|
||
|
||
#: ../../CHANGES.rst:161 19050fc882664743866b11a49ca7e398
|
||
msgid "Sitemap to the documentation. :pr:`169`"
|
||
msgstr "Cartographie de la documentation. :pr:`169"
|
||
|
||
#: ../../CHANGES.rst:162 bd7c56451cfa479fb3b8d19275045b6e
|
||
msgid ""
|
||
"Configuration management with `pydantic-settings`. :issue:`138` :pr:`170`"
|
||
msgstr ""
|
||
"Gestion des paramètres de configuration avec `pydantic-settings`. :issue:"
|
||
"`138` :pr:`170`"
|
||
|
||
#: ../../CHANGES.rst:167 d3e65f7666664d4f8ca54f02bf597c71
|
||
msgid "Use default Python logging configuration format. :issue:`188` :pr:`165`"
|
||
msgstr ""
|
||
"Utilisation de la configuration de journalisation par défaut de Python. :"
|
||
"issue:`188` :pr:`165`"
|
||
|
||
#: ../../CHANGES.rst:168 ae5e4441862443b9aac1e26cf19a8908
|
||
msgid "Bump to `HTMX` 1.99.11. :pr:`166`"
|
||
msgstr "Mise à jour vers ``HTMX`` 1.9.11. :pr:`166`"
|
||
|
||
#: ../../CHANGES.rst:169 e487c2a78a354c6e85ec43fda9f59c4d
|
||
msgid ""
|
||
"Use the standard tomllib Python module instead of `toml` starting from "
|
||
"Python 3.11. :pr:`167`"
|
||
msgstr ""
|
||
"Utilisation du module Python standard `tomllib` à la place de `toml` à "
|
||
"partir de Python 3.11. :pr:`167`"
|
||
|
||
#: ../../CHANGES.rst:170 e80e66bd46e14c0fae82950444ba043b
|
||
msgid "Use shibuya as the documentation theme :pr:`168`"
|
||
msgstr "Utilisation du thème de documentation `shibuya`. :pr:`168`"
|
||
|
||
#: ../../CHANGES.rst:173 0eb0c4eec73848d283d54626e8538c61
|
||
msgid "[0.0.42] - 2023-12-29"
|
||
msgstr "[0.0.42] - 2023-12-29"
|
||
|
||
#: ../../CHANGES.rst:178 8e57897d767b4603a54db28c97416ee8
|
||
msgid "Avoid to fail on imports if ``cryptography`` is missing."
|
||
msgstr ""
|
||
"Correction d’une erreur d’import lorsque ``cryptography`` était manquant."
|
||
|
||
#: ../../CHANGES.rst:181 f4ff69324e6e4a24b2f5aabf9ee71655
|
||
msgid "[0.0.41] - 2023-12-25"
|
||
msgstr "[0.0.41] - 2023-12-25"
|
||
|
||
#: ../../CHANGES.rst:186 39dd9ec6c6c2415fa90973a715a08d9f
|
||
msgid ""
|
||
"OIDC support for the ``create`` value of the ``prompt`` parameter. :issue:"
|
||
"`185` :pr:`164`"
|
||
msgstr ""
|
||
"Support pour la valeur ``create`` du paramètre ``prompt`` d’OIDC. :issue:"
|
||
"`185` :pr:`164`"
|
||
|
||
#: ../../CHANGES.rst:191 7d59a023c9bc4a9b94f4339112602d32
|
||
msgid ""
|
||
"Correctly set up :attr:`~canaille.oidc.basemodels.Client.audience` during "
|
||
"OIDC dynamic registration."
|
||
msgstr ""
|
||
"Configuration correcte de l’:attr:`~canaille.oidc.basemodels.Client."
|
||
"audience` durant l’enregistrement dynamique OIDC."
|
||
|
||
#: ../../CHANGES.rst:192 1e194b3a94034c65936a18174d1078c5
|
||
msgid ""
|
||
"``post_logout_redirect_uris`` was ignored during OIDC dynamic registration."
|
||
msgstr ""
|
||
"``post_logout_redirect_uris`` était ignoré durant l’enregistrement dynamique "
|
||
"OIDC."
|
||
|
||
#: ../../CHANGES.rst:193 d9f10cf1c5b3401d95f461f57dbfbece
|
||
msgid "Group field error prevented the registration form validation."
|
||
msgstr ""
|
||
"Une erreur sur le champ `groupe` empêchait la validation du formulaire "
|
||
"d’enregistrement."
|
||
|
||
#: ../../CHANGES.rst:196 6653ebc2588a4ad8989581ca1060f1d9
|
||
msgid "[0.0.40] - 2023-12-22"
|
||
msgstr "[0.0.40] - 2023-12-22"
|
||
|
||
#: ../../CHANGES.rst:201 1eb728d8f35e4e57bd9b4284c7dd677b
|
||
msgid "The ``THEME`` setting can be a relative path."
|
||
msgstr "Le paramètre de configuration ``THEME`` peut être un chemin relatif."
|
||
|
||
#: ../../CHANGES.rst:204 37f2ef92582741e2985bab37fb6495df
|
||
msgid "[0.0.39] - 2023-12-15"
|
||
msgstr "[0.0.39] - 2023-12-15"
|
||
|
||
#: ../../CHANGES.rst:209 b46f180dbba54aafb438013586a4100f
|
||
msgid "Crash when no ACL were defined."
|
||
msgstr "Erreur lorsqu’aucun ACL n’était défini."
|
||
|
||
#: ../../CHANGES.rst:210 958f8c3ecc57438e835053b3a7d87721
|
||
msgid "OIDC Userinfo endpoint is also available in POST."
|
||
msgstr ""
|
||
"Le point de terminaison OIDC `Userinfo` est aussi disponible avec la méthode "
|
||
"POST."
|
||
|
||
#: ../../CHANGES.rst:211 c37693d772f44c64b03f3baee793c0a1
|
||
msgid "Fix redirection after password reset. :issue:`159`"
|
||
msgstr ""
|
||
"Correction de la redirection après réinitialisation du mot de passe. :issue:"
|
||
"`159`"
|
||
|
||
#: ../../CHANGES.rst:214 9f0b57bb752141079ef51cc0833d3597
|
||
msgid "[0.0.38] - 2023-12-15"
|
||
msgstr "[0.0.38] - 2023-12-15"
|
||
|
||
#: ../../CHANGES.rst:219 b208dfe943e64175906f965703dc33dd
|
||
msgid "Convert all the `PNG` pictures in `Webp`. :pr:`162`"
|
||
msgstr "Conversion de toutes les images `PNG` en `Webp`. :pr:`162`"
|
||
|
||
#: ../../CHANGES.rst:220 3827e636cee240479b1fcedbc86bdfde
|
||
msgid "Update to Flask 3. :issue:`161` :pr:`163`"
|
||
msgstr "Mise à jour vers Flask 3. :issue:`161` :pr:`163`"
|
||
|
||
#: ../../CHANGES.rst:223 acb7a5113f214b84b7f8fd21b48e22de
|
||
msgid "[0.0.37] - 2023-12-01"
|
||
msgstr "[0.0.37] - 2023-12-01"
|
||
|
||
#: ../../CHANGES.rst:228 a22ebfb72b3d4c8c8285d99f4a18ed88
|
||
msgid "Handle 4xx and 5xx error codes with HTMX. :issue:`171` :pr:`161`"
|
||
msgstr ""
|
||
"Gestion des codes d’erreur 4xx et 5xx avec `HTMX`. :issue:`171` :pr:`161`"
|
||
|
||
#: ../../CHANGES.rst:231 5033ceb76b61492896a738cbabdf0e1a
|
||
msgid "[0.0.36] - 2023-12-01"
|
||
msgstr "[0.0.36] - 2023-12-01"
|
||
|
||
#: ../../CHANGES.rst:236 df785fb08515480b8205eb8d521d699b
|
||
msgid "Avoid crashing when LDAP groups references unexisting users."
|
||
msgstr ""
|
||
"Correction d’une erreur avec LDAP lorsque des groupes référencent des "
|
||
"utilisateurs inexistants."
|
||
|
||
#: ../../CHANGES.rst:237 e24d3cf2b5344f3196d44717249eeac9
|
||
msgid ""
|
||
"Password reset and initialization mails were only sent to the preferred user "
|
||
"email address."
|
||
msgstr ""
|
||
"Les courriels d’initialisation et de réinitialisation de mots de passe "
|
||
"n’étaient envoyés qu’à l’adresse préférée des utilisateurs."
|
||
|
||
#: ../../CHANGES.rst:239 279eb5763cb9437e98472ba23ef09cb9
|
||
msgid ""
|
||
"Password reset and initialization mails were not sent at all the user "
|
||
"addresses if one email address could not be reached."
|
||
msgstr ""
|
||
"Les courriels d’initialisation et de réinitialisation de mots de passe "
|
||
"n’étaient pas tous envoyés si l’un des envois échouait."
|
||
|
||
#: ../../CHANGES.rst:241 8dbbbb93c0d9468db5756b74091a0346
|
||
msgid "Password comparison was too permissive on login."
|
||
msgstr "La comparaison des mots de passe était trop permissive à la connexion."
|
||
|
||
#: ../../CHANGES.rst:242 2d5c6dab823a45df94ab7061b78fa140
|
||
msgid "Encrypt passwords in the SQL backend."
|
||
msgstr "Chiffrement des mots de passe dans la base de données SQL."
|
||
|
||
#: ../../CHANGES.rst:245 09acf9167bb14934ac3e4b763914df5c
|
||
msgid "[0.0.35] - 2023-11-25"
|
||
msgstr "[0.0.35] - 2023-11-25"
|
||
|
||
#: ../../CHANGES.rst:250 b616ae34c6084446b826cbb4bea285ce
|
||
msgid ""
|
||
"Refresh token grant supports other client authentication methods. :pr:`157`"
|
||
msgstr ""
|
||
"Support de méthodes d’authentifications additionnels pour les jetons de "
|
||
"rafraîchissement. :pr:`157`"
|
||
|
||
#: ../../CHANGES.rst:251 5e0cc8d4b2f9482cb0dd7d15578824ca
|
||
msgid "Implement a SQLAlchemy backend. :issue:`30` :pr:`158`"
|
||
msgstr ""
|
||
"Support des bases de données SQL avec SQLAlchemy. :issue:`30` :pr:`158`"
|
||
|
||
#: ../../CHANGES.rst:256 1379d1aee7ee46fca1a78b6015f8d450
|
||
msgid "Model attributes cardinality is closer to SCIM model. :pr:`155`"
|
||
msgstr ""
|
||
"La cardinalité des attributs des modèles est un peu plus ressemblante à "
|
||
"celle des attributs de modèles SCIM. :pr:`155`"
|
||
|
||
#: ../../CHANGES.rst:257 08f54a2189ba47dbb2e65e442181d6fd
|
||
msgid "Bump to `HTMX` 1.9.9. :pr:`159`"
|
||
msgstr "Mise à jour vers `HTMX` 1.9.9. :pr:`159`"
|
||
|
||
#: ../../CHANGES.rst:262 001465c19ae140678ce9a78eb0ae7ff5
|
||
msgid "Disable `HTMX` boosting during the OIDC dance. :pr:`160`"
|
||
msgstr ""
|
||
"Désactivation de `HTMX` pendant la phase d’identification OIDC. :pr:`160`"
|
||
|
||
#: ../../CHANGES.rst:265 e063fae1c9984dc0af421058e9bfb500
|
||
msgid "[0.0.34] - 2023-10-02"
|
||
msgstr "[0.0.34] - 2023-10-02"
|
||
|
||
#: ../../CHANGES.rst:270 3aadd82912d6401f8fddc3655ad594b9
|
||
msgid ""
|
||
"Canaille installations without account lockabilty could not delete users. :"
|
||
"pr:`153`"
|
||
msgstr ""
|
||
"Les installations de Canaille n’ayant pas la fonctionnalité de verrouillage "
|
||
"des comptes ne pouvaient pas supprimer des utilisateurs. :pr:`153`"
|
||
|
||
#: ../../CHANGES.rst:276 52c2946196324ed2bfacac3fb518a6a1
|
||
msgid ""
|
||
"If users register or authenticate during a OAuth Authorization phase, they "
|
||
"get redirected back to that page afterwards. :issue:`168` :pr:`151`"
|
||
msgstr ""
|
||
"Si les utilisateurs s’enregistrent durant la phase d’authentification OAuth, "
|
||
"ils sont ensuite redirigés vers la page dont ils viennent. :issue:`168` :pr:"
|
||
"`151`"
|
||
|
||
#: ../../CHANGES.rst:279 e0bb3561373b4651b98fcc1df2e5db94
|
||
msgid ""
|
||
"The `flask-babel` and `pytz` libraries are now part of the `front` packaging "
|
||
"extras."
|
||
msgstr ""
|
||
"Les bibliothèques `flask-babel` et `pytz` font désormais partie de l’extra "
|
||
"d'empaquetage `front`."
|
||
|
||
#: ../../CHANGES.rst:280 9cc1748f2a624399ae9983904d6765fc
|
||
msgid "Bump to `fomantic-ui` 2.9.3. :pr:`152`"
|
||
msgstr "Mise à jour vers `fomantic-ui` 2.9.3. :pr:`152`"
|
||
|
||
#: ../../CHANGES.rst:281 ec7e3985dc034f43bc0e2411086928e7
|
||
msgid "Bump to `HTMX` 1.9.6. :pr:`154`"
|
||
msgstr "Mise à jour vers `HTMX` 1.9.6. :pr:`154`"
|
||
|
||
#: ../../CHANGES.rst:282 768b97eabcb04396a1c3f7e3691c3ed2
|
||
msgid "Support for Python 3.12. :pr:`155`"
|
||
msgstr "Support de Python 3.12 :pr:`155`"
|
||
|
||
#: ../../CHANGES.rst:285 4664970b84d545e18a553f8191bc6e8b
|
||
msgid "[0.0.33] - 2023-08-26"
|
||
msgstr "[0.0.33] - 2023-08-26"
|
||
|
||
#: ../../CHANGES.rst:290 3456a02cbd894fccb45ffc1108226c5a
|
||
msgid "OIDC jwks endpoint do not return empty `kid` claim."
|
||
msgstr ""
|
||
"Le point de terminaison OIDC jwks ne retourne plus le paramètre `kid` "
|
||
"lorsqu’il est vide."
|
||
|
||
#: ../../CHANGES.rst:295 fd6c83b8455f4402b82ffe670e6c83c1
|
||
msgid "Documentation details on the Canaille models."
|
||
msgstr "Documentation des modèles de Canaille."
|
||
|
||
#: ../../CHANGES.rst:298 1f3135eb404e412787af9b4f971ea523
|
||
msgid "[0.0.32] - 2023-08-17"
|
||
msgstr "[0.0.32] - 2023-08-17"
|
||
|
||
#: ../../CHANGES.rst:303 fe7a0cb646094a3d9b2428f7b7d2f3d4
|
||
msgid "Additional inmemory backend. :issue:`30` :pr:`149`"
|
||
msgstr ""
|
||
"Implémentation d’un connecteur de base de données en mémoire. :issue:`30` :"
|
||
"pr:`149`"
|
||
|
||
#: ../../CHANGES.rst:304 82523d1da67a46089ffd899f134486dd
|
||
msgid "Installation extras. :issue:`167` :pr:`150`"
|
||
msgstr "Définition de dépendances `extra`. :issue:`167` :pr:`150`"
|
||
|
||
#: ../../CHANGES.rst:307 9b5b3399c9fd4f3bbc8e152ee37e7910
|
||
msgid "[0.0.31] - 2023-08-15"
|
||
msgstr "[0.0.31] - 2023-08-15"
|
||
|
||
#: ../../CHANGES.rst:312 b2ebe664d67047a5882a33ac5c75875b
|
||
msgid ""
|
||
"Configuration option to disable the forced usage of OIDC `nonce` parameter. :"
|
||
"pr:`143`"
|
||
msgstr ""
|
||
"Option de configuration pour désactiver l’utilisation du paramètre OIDC "
|
||
"`nonce`. :pr:`143`"
|
||
|
||
#: ../../CHANGES.rst:313 463b404944d9465fa6a17d3d3c0ea106
|
||
msgid "Validate phone numbers with a regex. :pr:`146`"
|
||
msgstr ""
|
||
"Validation des numéros de téléphone avec des expressions régulières. :pr:"
|
||
"`146`"
|
||
|
||
#: ../../CHANGES.rst:314 0effe02b658f49698ab59c14e9103fbe
|
||
msgid "Email verification. :issue:`41` :pr:`147`"
|
||
msgstr "Vérification des adresses email. :issue:`41`:pr:`147`"
|
||
|
||
#: ../../CHANGES.rst:315 ca5e445840644c90980662464ea67abc
|
||
msgid "Account registration. :issue:`55` :pr:`133` :pr:`148`"
|
||
msgstr "Enregistrement de comptes utilisateur. :issue:`55` :pr:`133` :pr:`148`"
|
||
|
||
#: ../../CHANGES.rst:320 3792c9999c5a44c892129bce1c222552
|
||
msgid "The `check` command uses the default configuration values."
|
||
msgstr "La commande `check` utilise les valeurs de configuration par défaut."
|
||
|
||
#: ../../CHANGES.rst:325 6e0b77065c024ebb96f30998294a3b8d
|
||
msgid "Modals do not need use Javascript at the moment. :issue:`158` :pr:`144`"
|
||
msgstr ""
|
||
"Les fenêtres modales ne nécessitent plus l’utilisation de Javascript. :issue:"
|
||
"`158` :pr:`144`"
|
||
|
||
#: ../../CHANGES.rst:328 e513ff9194cb493fb3273e811b5b96d0
|
||
msgid "[0.0.30] - 2023-07-06"
|
||
msgstr "[0.0.30] - 2023-07-06"
|
||
|
||
#: ../../CHANGES.rst:332 7bd32f1cc1c24ce9a6a7a4f3d7fd6024
|
||
msgid ""
|
||
"Configuration files must be updated. Check the new format with ``git diff "
|
||
"0.0.29 0.0.30 canaille/conf/config.sample.toml``"
|
||
msgstr ""
|
||
"Les fichiers de configuration doivent être mis à jour. Vérifiez le nouveau "
|
||
"format avec ``git diff 0.0.29 0.0.30 canaille/conf/config.sample.toml``"
|
||
|
||
#: ../../CHANGES.rst:338 a3f5487d18624886a2adee2c28346eae
|
||
msgid "Configuration option to disable Javascript. :pr:`141`"
|
||
msgstr "Option de configuration pour désactiver Javascript. :pr:`141"
|
||
|
||
#: ../../CHANGES.rst:343 e6ab42f3565b415f85d7778e5ac18966
|
||
msgid "The configuration parameter ``USER_FILTER`` is parsed with Jinja."
|
||
msgstr "Le paramètre de configuration ``USER_FILTER`` est analysé avec Jinja."
|
||
|
||
#: ../../CHANGES.rst:344 de4e44a5b6324f389effc64a28a69c5d
|
||
msgid ""
|
||
"Configuration use ``PRIVATE_KEY_FILE`` instead of ``PRIVATE_KEY`` and "
|
||
"``PUBLIC_KEY_FILE`` instead of ``PUBLIC_KEY``."
|
||
msgstr ""
|
||
"La configuration utilise ``PRIVATE_KEY_FILE`` à la place de ``PRIVATE_KEY`` "
|
||
"et ``PUBLIC_KEY_FILE`` à la place de ``PUBLIC_KEY``."
|
||
|
||
#: ../../CHANGES.rst:347 812f9e5828dd4912bc832214d5ae721d
|
||
msgid "[0.0.29] - 2023-06-30"
|
||
msgstr "[0.0.29] - 2023-06-30"
|
||
|
||
#: ../../CHANGES.rst:352 81bf1e1132f44c5399805dc865372873
|
||
msgid "Disabled `HTMX` boosting on OIDC forms to avoid errors."
|
||
msgstr ""
|
||
"Désactivation d’`HTMX` sur les formulaires OIDC pour éviter des erreurs lors "
|
||
"des redirections."
|
||
|
||
#: ../../CHANGES.rst:355 0b442eaa0f7f44919f3793aac59d4b4d
|
||
msgid "[0.0.28] - 2023-06-30"
|
||
msgstr "[0.0.28] - 2023-06-30"
|
||
|
||
#: ../../CHANGES.rst:360 3b645ba8d22642f7ae36a9401a170414
|
||
msgid "A template variable was misnamed."
|
||
msgstr "Une variable de template était mal nommée."
|
||
|
||
#: ../../CHANGES.rst:363 1c8d7269601c4cbf8c6952063000a5f1
|
||
msgid "[0.0.27] - 2023-06-29"
|
||
msgstr "[0.0.27] - 2023-06-29"
|
||
|
||
#: ../../CHANGES.rst:367 3082667648f14f86a48ba1f4c71c6bf1
|
||
msgid ""
|
||
"Configuration files must be updated. Check the new format with ``git diff "
|
||
"0.0.26 0.0.27 canaille/conf/config.sample.toml``"
|
||
msgstr ""
|
||
"Les fichiers de configuration doivent être mis à jour. Vérifiez le nouveau "
|
||
"format avec ``git diff 0.0.26 0.0.27 canaille/conf/config.sample.toml``"
|
||
|
||
#: ../../CHANGES.rst:373 d37a0bf60d6a407094dca1df32907bc3
|
||
msgid ""
|
||
"Configuration entries can be loaded from files if the entry key has a "
|
||
"*_FILE* suffix and the entry value is the path to the file. :issue:`134` :pr:"
|
||
"`134`"
|
||
msgstr ""
|
||
"Les paramètres de configuration peuvent être lus à partir de fichiers si le "
|
||
"paramètre a un suffixe *_FILE* et que sa valeur correspond à un chemin de "
|
||
"fichier. :issue:`134` :pr:`134`"
|
||
|
||
#: ../../CHANGES.rst:375 b198cedfd2dc4b1ca5caffb7281b2b77
|
||
msgid "Field list support. :issue:`115` :pr:`136`"
|
||
msgstr "Support pour les listes de champ. :issue:`115` :pr:`136`"
|
||
|
||
#: ../../CHANGES.rst:376 bda5916225d046aa92eee4df020d31d7
|
||
msgid "Pages are boosted with `HTMX`. :issue:`144` :issue:`145` :pr:`137`"
|
||
msgstr ""
|
||
"Les pages sont boostées avec `HTMX`. :issue:`144` :issue:`145` :pr:`137`"
|
||
|
||
#: ../../CHANGES.rst:381 f0103671112e414da54f464537b92886
|
||
msgid "Bump to jquery 3.7.0. :pr:`138`"
|
||
msgstr "Mise à jour vers jquery 3.7.0. :pr:`138`"
|
||
|
||
#: ../../CHANGES.rst:386 a3de7cd9d0b74333bbe2252c30b27d24
|
||
msgid ""
|
||
"Profile edition when the user RDN was not ``uid``. :issue:`148` :pr:`139`"
|
||
msgstr ""
|
||
"L’édition des profils utilisateurs lorsque le RDN n’était pas ``uid`. :issue:"
|
||
"`148` :pr:`139`"
|
||
|
||
#: ../../CHANGES.rst:391 a8ee95c286e44ee190211fc2e7792b41
|
||
msgid "Stop support for Python 3.7. :pr:`131`"
|
||
msgstr "Arrêt du support pour Python 3.7. :pr:`131`"
|
||
|
||
#: ../../CHANGES.rst:394 031ef0bde1a142fda5313115f399b305
|
||
msgid "[0.0.26] - 2023-06-03"
|
||
msgstr "[0.0.26] - 2023-06-03"
|
||
|
||
#: ../../CHANGES.rst:399 8cd815265cd245d8ae32992c885e4c63
|
||
msgid ""
|
||
"Implemented account expiration based on OpenLDAP ppolicy overlay. Needs "
|
||
"OpenLDAP 2.5+. :issue:`13` :pr:`118`"
|
||
msgstr ""
|
||
"Implémentation de l’expiration des comptes en se basant sur l’overlay "
|
||
"OpenLDAP `ppolicy``. Nécessite au minimun OpenLDAP 2.5. :issue:`13` :pr:`118`"
|
||
|
||
#: ../../CHANGES.rst:401 f7ab79e41d1c400fa0f5be534df749eb
|
||
msgid "Timezone configuration entry. :issue:`137` :pr:`130`"
|
||
msgstr "Paramètre de configuration des fuseaux horaire. :issue:`137` :pr:`130`"
|
||
|
||
#: ../../CHANGES.rst:406 01a6b5ffbd164e11a7d13c2a720b6230
|
||
msgid "Avoid setting ``None`` in JWT claims when they have no value."
|
||
msgstr ""
|
||
"Les paramètres du jeton d'accès ne sont pas ``None`` lorsqu'ils n’ont pas de "
|
||
"valeur définie."
|
||
|
||
#: ../../CHANGES.rst:407 1b9beda783b14033b13b34bb69dcf94e
|
||
msgid "Display password recovery button on OIDC login page. :pr:`129`"
|
||
msgstr ""
|
||
"Affichage du bouton de réinitialisation de mots de passe sur la page de "
|
||
"connexion OIDC. :pr:`129`"
|
||
|
||
#: ../../CHANGES.rst:410 98f294fe9c78448e92a9340f14812660
|
||
msgid "[0.0.25] - 2023-05-05"
|
||
msgstr "[0.0.25] - 2023-05-05"
|
||
|
||
#: ../../CHANGES.rst:415 b9e80a38348a4fabb577d17c476ef787
|
||
msgid ""
|
||
"Check the new format with ``git diff 0.0.25 0.0.24 canaille/conf/config."
|
||
"sample.toml``"
|
||
msgstr ""
|
||
"Vérifiez le nouveau format avec ``git diff 0.0.25 0.0.24 canaille/conf/"
|
||
"config.sample.toml``"
|
||
|
||
#: ../../CHANGES.rst:420 d72e485b1606403e895166193d518a26
|
||
msgid ""
|
||
"Renamed user model attributes to match SCIM naming convention. :pr:`123`"
|
||
msgstr ""
|
||
"Renommage des modèles d’attributs d’'utilisateurs en suivant la convention "
|
||
"SCIM. :pr:`123`"
|
||
|
||
#: ../../CHANGES.rst:421 f53dae9936ca4478b6575167779eb297
|
||
msgid "Moved OIDC related configuration entries in ``OIDC``."
|
||
msgstr "Déplacement des paramètres de configuration OIDC dans ``OIDC``."
|
||
|
||
#: ../../CHANGES.rst:422 c097b3593a1f42d882167cef3925368a
|
||
msgid "Moved ``LDAP`` configuration entry to ``BACKENDS.LDAP``."
|
||
msgstr ""
|
||
"Déplacement des paramètres de configuration ``LDAP`` dans ``BACKENDS.LDAP``."
|
||
|
||
#: ../../CHANGES.rst:423 88b8faa16b314ab3bc05c8a24dc7432e
|
||
msgid "Bumped to `HTMX` 1.9.0. :pr:`124`"
|
||
msgstr "Mise à jour vers HTMX 1.9.0. :pr:`184`"
|
||
|
||
#: ../../CHANGES.rst:424 391a6692f5de4897ac370fc253b7caf4
|
||
msgid ""
|
||
"ACL filters are no more LDAP filters but user attribute mappings. :pr:`125`"
|
||
msgstr ""
|
||
"Les filtres de permissions ne sont plus des filtres LDAP mais des "
|
||
"associations de paramètres utilisateur. :pr:`125`"
|
||
|
||
#: ../../CHANGES.rst:425 286baa01210c47ee8a9c71a8c51e72fb
|
||
msgid "Bumped to `HTMX` 1.9.2. :pr:`127`"
|
||
msgstr "Mise-à-jour vers `HTMX` 1.9.2. :pr:`127`"
|
||
|
||
#: ../../CHANGES.rst:430 2f5e152512fe493c9e5f291f3dc47ca3
|
||
msgid "``OIDC.JWT.MAPPING`` configuration entry is really optional now."
|
||
msgstr ""
|
||
"Le paramètre de configuration ``OIDC.JWT.MAPPING`` est réellement facultatif."
|
||
|
||
#: ../../CHANGES.rst:431 646ffd29b1694f58a41036fec066e023
|
||
msgid "Fixed empty model attributes registration. :pr:`125`"
|
||
msgstr "Correction des attributs vides lors de l’enregistrement. :pr:`125`"
|
||
|
||
#: ../../CHANGES.rst:432 8ef81a1e8e584cab90c6401a07c88b81
|
||
msgid "Password initialization mails were not correctly sent. :pr:`128`"
|
||
msgstr ""
|
||
"Les courriels d’initialisation de mot de passe n’étaient pas correctement "
|
||
"envoyés. :pr:`128`"
|
||
|
||
#: ../../CHANGES.rst:435 e9729b8de309453a862cb61a500d83a6
|
||
msgid "[0.0.24] - 2023-04-07"
|
||
msgstr "[0.0.24] - 2023-04-07"
|
||
|
||
#: ../../CHANGES.rst:440 e25900ea2cb9451f9def4f1230cf311b
|
||
msgid "Fixed avatar update. :pr:`122`"
|
||
msgstr "Correction de la mise à jour des avatars. :pr:`122`"
|
||
|
||
#: ../../CHANGES.rst:443 6b0ff68eb4d048f9a87c723077b6a917
|
||
msgid "[0.0.23] - 2023-04-05"
|
||
msgstr "[0.0.23] - 2023-04-05"
|
||
|
||
#: ../../CHANGES.rst:448 45d12b8c7b044a6aa129a826cb589403
|
||
msgid "Organization field. :pr:`116`"
|
||
msgstr "Champ `organization` :pr:`116`"
|
||
|
||
#: ../../CHANGES.rst:449 7554a21c2da44a10ae7044507e7e8ef1
|
||
msgid "ETag and Last-Modified headers on user photos. :pr:`116`"
|
||
msgstr "En-têtes `ETag` et `Last-Modified` sur les avatars. :pr:`116`"
|
||
|
||
#: ../../CHANGES.rst:450 56e3c78c43bc4ebfb789357d53401f12
|
||
msgid "Dynamic form validation. :pr:`120`"
|
||
msgstr "Validation dynamique des formulaires. :pr:`120`"
|
||
|
||
#: ../../CHANGES.rst:455 eef201e52d6e487fb83b276678dcf6ad
|
||
msgid "UX rework. Submenu addition. :pr:`114`"
|
||
msgstr "Travaux sur l’interface utilisateur. Ajout de sous-menus. :pr:`114`"
|
||
|
||
#: ../../CHANGES.rst:456 f6dfc94a3486418cb94ebe88c6078543
|
||
msgid "Properly handle LDAP date timezones. :pr:`117`"
|
||
msgstr "Gestion correcte des fuseaux horaire des dates dans LDAP. :pr:`117`"
|
||
|
||
#: ../../CHANGES.rst:461 c81b6adf5d6e40e8b0aeb2898e40c692
|
||
msgid "CSRF protection on every forms. :pr:`119`"
|
||
msgstr "Protection CSRF sur tous les formulaires. :pr:`119`"
|
||
|
||
#: ../../CHANGES.rst:464 41e5cc643b4e4c35b9d04ed3c6eba537
|
||
msgid "[0.0.22] - 2023-03-13"
|
||
msgstr "[0.0.22] - 2023-03-13"
|
||
|
||
#: ../../CHANGES.rst:468 e510bec507814d5387a49ba6117ef0a7
|
||
msgid ""
|
||
"The `Faker` library is not imported anymore when the `clean` command is "
|
||
"called."
|
||
msgstr ""
|
||
"La bibliothèque `Faker` n’est plus importée lorsque la commande `clean` est "
|
||
"appelée."
|
||
|
||
#: ../../CHANGES.rst:471 9af418bca29f4c169f5720ea8e14e9ac
|
||
msgid "[0.0.21] - 2023-03-12"
|
||
msgstr "[0.0.21] - 2023-03-12"
|
||
|
||
#: ../../CHANGES.rst:476 6c81ccf5040343cebb06fe34cc66221e
|
||
msgid "Display TOS and policy URI on the consent list page. :pr:`102`"
|
||
msgstr ""
|
||
"Affichage des liens vers les conditions d’utilisation sur la page de liste "
|
||
"des consentements. :pr:`102`"
|
||
|
||
#: ../../CHANGES.rst:477 4d19d14961744e028504787840181114
|
||
msgid "Admin token deletion. :pr:`100` :pr:`101`"
|
||
msgstr ""
|
||
"Suppression des jetons via l’interface administrateur. :pr:`100` :pr:`101`"
|
||
|
||
#: ../../CHANGES.rst:478 cf00a4a47f2a4463a3cc06dd126d589d
|
||
msgid "Revoked consents can be restored. :pr:`103`"
|
||
msgstr "Les consentements révoqués peuvent être restaurés. :pr:`103`"
|
||
|
||
#: ../../CHANGES.rst:479 06108983455940049911e3b8892f8735
|
||
msgid ""
|
||
"Pre-consented clients are displayed in the user consent list, and their "
|
||
"consents can be revoked. :issue:`69` :pr:`103`"
|
||
msgstr ""
|
||
"Les clients pré-autorisés apparaissent dans la liste de consentement des "
|
||
"utilisateurs, et leur consentement peut être révoqué. :issue:`69` :pr:`103`"
|
||
|
||
#: ../../CHANGES.rst:481 2f26c80f733b42f99df3af94c8774ad5
|
||
msgid ""
|
||
"A ``populate`` command can be used to fill the database with random users "
|
||
"generated with faker. :pr:`105`"
|
||
msgstr ""
|
||
"Implémentation d’une commande ``populate`` qui remplit la base de données "
|
||
"avec des valeurs aléatoires générées avec la bibliothèque `Faker`. :pr:`105`"
|
||
|
||
#: ../../CHANGES.rst:483 64049d3aa81141f3b29778b9f2f3d188
|
||
msgid "SMTP SSL support. :pr:`108`"
|
||
msgstr "Support des connexions SMTP avec SSL. :pr:`108`"
|
||
|
||
#: ../../CHANGES.rst:484 6f16cdf0ce864a20b13344f84e6dfefb
|
||
msgid "Server side pagination. :issue:`114` :pr:`111`"
|
||
msgstr "Pagination côté serveur. :issue:`114`:pr:`111`"
|
||
|
||
#: ../../CHANGES.rst:485 7aeacbe0b4fa48c79db52ed0cf7229fd
|
||
msgid "Department number support. :issue:`129`"
|
||
msgstr "Support du champs de numéro de département. :issue:`129`"
|
||
|
||
#: ../../CHANGES.rst:486 e5bb989cd1fe472cb845dfe3de958f55
|
||
msgid "Address edition support (but not in the OIDC claims yet). :pr:`112`"
|
||
msgstr ""
|
||
"Support de l’édition de l’adresse (sans que cela apparaisse dans les "
|
||
"paramètres du jeton OIDC). :pr:`112`"
|
||
|
||
#: ../../CHANGES.rst:487 1140843546bf41dd826bf71bea29ff23
|
||
msgid "Title edition support. :pr:`113`"
|
||
msgstr "Support de l’édition du paramètre `title`. :pr:`113`"
|
||
|
||
#: ../../CHANGES.rst:492 d9bd3caa1f4f47ebb304efd457802ca1
|
||
msgid ""
|
||
"Client deletion also deletes related :class:`~canaille.oidc.basemodels."
|
||
"Consent`, :class:`~canaille.oidc.basemodels.Token` and :class:`~canaille."
|
||
"oidc.basemodels.AuthorizationCode` objects. :issue:`126` :pr:`98`"
|
||
msgstr ""
|
||
"La suppression d’un client supprime aussi les objets des classes liées :"
|
||
"class:`~canaille.oidc.basemodels.Consent`, :class:`~canaille.oidc.basemodels."
|
||
"Token` et :class:`~canaille.oidc.basemodels.AuthorizationCode`. :issue:"
|
||
"`126` :pr:`98`"
|
||
|
||
#: ../../CHANGES.rst:498 ac1feaf507284b65bab96bc30457d263
|
||
msgid "Removed the `DataTables` Javascript library."
|
||
msgstr "Suppression de la bibliothèque Javascript `Datatables`."
|
||
|
||
#: ../../CHANGES.rst:501 d0d7087c87844d069df327a34667ef31
|
||
msgid "[0.0.20] - 2023-01-28"
|
||
msgstr "[0.0.20] - 2023-01-28"
|
||
|
||
#: ../../CHANGES.rst:506 6254c6b37dea417d908d7679fa0c2df5
|
||
msgid "Spanish translation. :pr:`85` :pr:`88`"
|
||
msgstr "Traduction espagnole. :pr:`85` :pr:`88`"
|
||
|
||
#: ../../CHANGES.rst:507 3a8a7c3e462e4388a29c87ea44bbca31
|
||
msgid "Dedicated connectivity test email. :pr:`89`"
|
||
msgstr "Test de connectivité. :pr:`89`"
|
||
|
||
#: ../../CHANGES.rst:508 6c73a2cff39a4b8caacfca57f27ba60b
|
||
msgid "Update to jquery 3.6.3. :pr:`90`"
|
||
msgstr "Mise à jour vers jquery 3.6.3. :pr:`90`"
|
||
|
||
#: ../../CHANGES.rst:509 2a31509ad04a41d4a9ceab66e4447c61
|
||
msgid "Update to fomantic-ui 2.9.1. :pr:`90`"
|
||
msgstr "Mise à jour vers Fomantic-UI 2.9.1. :pr:`90`"
|
||
|
||
#: ../../CHANGES.rst:510 1b8798a48e73416383644caadcb8c9d0
|
||
msgid "Update to DataTables 1.13.1. :pr:`90`"
|
||
msgstr "Mise à jour vers DataTAbles 1.13.1. :pr:`90`"
|
||
|
||
#: ../../CHANGES.rst:515 43bb3fea7c22470bb734e723ae6ec2dc
|
||
msgid "Fix typos and grammar errors. :pr:`84`"
|
||
msgstr "Correction de fautes de frappe et d’erreurs de grammaire. :pr:`84`"
|
||
|
||
#: ../../CHANGES.rst:516 28f37a5212944339bb10de4c91b1555d
|
||
msgid "Fix wording and punctuations. :pr:`86`"
|
||
msgstr "Correction de formulations et de ponctuations. :pr:`86`"
|
||
|
||
#: ../../CHANGES.rst:517 3511a582ca4d4dd5b57f04e945ff2615
|
||
msgid "Fix HTML lang tag. :issue:`122` :pr:`87`"
|
||
msgstr "Correction de la balise HTML de langue. :issue:`122` :pr:`87`"
|
||
|
||
#: ../../CHANGES.rst:518 227f6ecacee547eab969399f3543c1a9
|
||
msgid "Automatically trims the HTML translated strings. :pr:`91`"
|
||
msgstr ""
|
||
"Suppression automatique des espaces autour des chaîne de caractères à "
|
||
"traduire. :pr:`91`"
|
||
|
||
#: ../../CHANGES.rst:519 ce4262a979b34e588c4d99db8ec9fae6
|
||
msgid "Fixed dynamic registration scope management. :issue:`123` :pr:`93`"
|
||
msgstr ""
|
||
"Correction de la gestion du domaine de l’enregistrement dynamique. :issues:"
|
||
"`123` :pr:`93`"
|
||
|
||
#: ../../CHANGES.rst:522 3326dbb8be62452d8140320a39612093
|
||
msgid "[0.0.19] - 2023-01-14"
|
||
msgstr "[0.0.19] - 2023-01-14"
|
||
|
||
#: ../../CHANGES.rst:527 c15def45121b4d30ab4c57c640f5da6a
|
||
msgid ""
|
||
"Ensures the token `expires_in` claim and the `access_token` `exp` claim have "
|
||
"the same value. :pr:`83`"
|
||
msgstr ""
|
||
"Le paramètre ``expires_in`` du flux d’autorisation et le paramètre ``exp``du "
|
||
"jeton d’accès ont la même valeur. :pr:`83"
|
||
|
||
#: ../../CHANGES.rst:531 2e2f24525dba4a819e97e6589907d0a5
|
||
msgid "[0.0.18] - 2022-12-28"
|
||
msgstr "[0.0.18] - 2022-12-28"
|
||
|
||
#: ../../CHANGES.rst:536 82745fec4b984965b3d0b81bed5a3941
|
||
msgid ""
|
||
"OIDC end_session was not returning the ``state`` parameter in the "
|
||
"``post_logout_redirect_uri``. :pr:`82`"
|
||
msgstr ""
|
||
"Le paramètre ``state`` n’était pas transmis à l’URL de redirection post "
|
||
"déconnexion. :pr:`82`"
|
||
|
||
#: ../../CHANGES.rst:540 3bd062d77c0048d3816421ed0de978e6
|
||
msgid "[0.0.17] - 2022-12-26"
|
||
msgstr "[0.0.17] - 2022-12-26"
|
||
|
||
#: ../../CHANGES.rst:545 4f0e0feb2cca4a8eb54473f5764cfcc7
|
||
msgid "Fixed group deletion button. :pr:`80`"
|
||
msgstr "Correction du bouton de suppression de groupe. :pr:`80`"
|
||
|
||
#: ../../CHANGES.rst:546 b6fc018fb2dc41ecaf43a313cf5330b9
|
||
msgid "Fixed post requests in oidc clients views. :pr:`81`"
|
||
msgstr ""
|
||
"Correction des requêtes POST sur la vue de gestion des clients OIDC. :pr:`81`"
|
||
|
||
#: ../../CHANGES.rst:549 0e9699c0d5a74e689fdb73d2ac431d28
|
||
msgid "[0.0.16] - 2022-12-15"
|
||
msgstr "[0.0.16] - 2022-12-15"
|
||
|
||
#: ../../CHANGES.rst:554 a43af598d338438ea64a3352a866610c
|
||
msgid "Fixed LDAP operational attributes handling."
|
||
msgstr "Correction sur le comportement des attributs LDAP opérationnels."
|
||
|
||
#: ../../CHANGES.rst:557 11d5f04851c847e6b3939176add7c1e2
|
||
msgid "[0.0.15] - 2022-12-15"
|
||
msgstr "[0.0.15] - 2022-12-15"
|
||
|
||
#: ../../CHANGES.rst:562 ce751d2ad6e44f438e092afbdcfe72ce
|
||
msgid "User can chose their display name. :pr:`77`"
|
||
msgstr "Les utilisateurs peuvent choisir leur nom d’affichage. :pr:`77`"
|
||
|
||
#: ../../CHANGES.rst:563 008bcd50172d46429d218c6afbd7bc0f
|
||
msgid "Bumped to Authlib 1.2. :pr:`78`"
|
||
msgstr "Mise à jour vers Authlib 1.2. :pr:`78`"
|
||
|
||
#: ../../CHANGES.rst:564 3edcc407205b44918ab63920f9734a50
|
||
msgid ""
|
||
"Implemented :rfc:`RFC7592 <7592>` OAuth 2.0 Dynamic Client Registration "
|
||
"Management Protocol. :pr:`79`"
|
||
msgstr ""
|
||
"Implémentation de la :rfc:`RFC7592 <7592>` OAuth 2.0 Dynamic Client "
|
||
"Registration Management Protocol. :pr:`79`"
|
||
|
||
#: ../../CHANGES.rst:566 e327d602ecac448f8f73a848047f6319
|
||
msgid ""
|
||
"Add the ``nonce`` parameter to the ``claims_supported`` server metadata list."
|
||
msgstr ""
|
||
"Ajout du paramètre ``nonce`` à la métadonnée du serveur OIDC "
|
||
"``claims_supported``."
|
||
|
||
#: ../../CHANGES.rst:569 74ad576932584357834751ca5edd823a
|
||
msgid "[0.0.14] - 2022-11-29"
|
||
msgstr "[0.0.14] - 2022-11-29"
|
||
|
||
#: ../../CHANGES.rst:573 1205e961f8944bbb8dbc519bbfdf4993
|
||
msgid "Fixed translation catalogs packaging."
|
||
msgstr "Correction de l'empaquetage des catalogues de traduction."
|
||
|
||
#: ../../CHANGES.rst:576 fc089f22a3a14548b469d6c4668bb3dc
|
||
msgid "[0.0.13] - 2022-11-21"
|
||
msgstr "[0.0.13] - 2022-11-21"
|
||
|
||
#: ../../CHANGES.rst:581 ea1f503e84f04965b18a569cf25d2941
|
||
msgid ""
|
||
"Fixed a bug on the contacts field in the admin client form following the "
|
||
"LDAP schema update of 0.0.12."
|
||
msgstr ""
|
||
"Correction d’une erreur sur le champs `contacts` du formulaire "
|
||
"d’administration des clients OIDC, du à la mise à jour des schémas LDAP de "
|
||
"la version 0.0.12."
|
||
|
||
#: ../../CHANGES.rst:583 95a73e92dd77499c9109135edf0040cf
|
||
msgid ""
|
||
"Fixed a bug happening during RP initiated logout on clients without "
|
||
"`post_logout_redirect_uri` defined."
|
||
msgstr ""
|
||
"Correction d’une erreur survenant dans la phase de déconnexion initiée par "
|
||
"les clients sans paramètre `post_logout_redirect_uri` défini."
|
||
|
||
#: ../../CHANGES.rst:585 5648d45162744cf4956d8d9c7d9bbf3d
|
||
msgid "Gitlab CI fix. :pr:`64`"
|
||
msgstr "Correction de l’intégration continue de Gitlab. :pr:`64`"
|
||
|
||
#: ../../CHANGES.rst:586 1b490834cff04cb99ff4b83f9e5dd758
|
||
msgid ""
|
||
"Fixed `client_secret` display on the client administration page. :pr:`65`"
|
||
msgstr ""
|
||
"Correction de l’affichage de l’attribut `client_secret` sur la page "
|
||
"d’administration des clients. :pr:`65`"
|
||
|
||
#: ../../CHANGES.rst:587 5d7cd051df4c45eb9b8e2beea6ec9659
|
||
msgid "Fixed non-square logo CSS. :pr:`67`"
|
||
msgstr "Correction de la feuille de style pour les logos non carrés. :pr:`67`"
|
||
|
||
#: ../../CHANGES.rst:588 16e68eaca761436eb1add2beea510963
|
||
msgid "Fixed schema path on installation. :pr:`68`"
|
||
msgstr "Correction des chemins d’installation des schémas. :pr:`68`"
|
||
|
||
#: ../../CHANGES.rst:589 5d87e6344c9d474c821419beb33a1d56
|
||
msgid "Fixed RFC7591 ``software_statement`` claim support. :pr:`70`"
|
||
msgstr "Correction du paramètre ``software_statement` de la RFC7591. :pr:`70`"
|
||
|
||
#: ../../CHANGES.rst:590 b65b8f602a7d4440936987b7c0143cf7
|
||
msgid "Fixed client preconsent disabling. :pr:`72`"
|
||
msgstr ""
|
||
"Correction de la désactivation du pré-consentement des clients. :pr:`72`"
|
||
|
||
#: ../../CHANGES.rst:595 05f32b1852b34334be85dc02f3bc2689
|
||
msgid "Python 3.11 support. :pr:`61`"
|
||
msgstr "Support de Python 3.11. :pr:`61`"
|
||
|
||
#: ../../CHANGES.rst:596 33289ea27c844082832e8eea78498d86
|
||
msgid ""
|
||
"``apparmor`` slapd configuration instructions in the documentation page for "
|
||
"contributions. :pr:`66`"
|
||
msgstr ""
|
||
"Instructions concernant la configuration ``apparmor`` pour OpenLDAP dans la "
|
||
"page de documentation sur les contributions. :pr:`66`"
|
||
|
||
#: ../../CHANGES.rst:597 d12ad2a4e17244f8b2719ba9d0749597
|
||
msgid "``preferredLanguage`` attribute support. :pr:`75`"
|
||
msgstr "Support de l’attribut utilisateur ``preferredLanguage``. :pr:`75`"
|
||
|
||
#: ../../CHANGES.rst:602 dac1b885aa8243af874405b4ccce52f2
|
||
msgid ""
|
||
"Replaced the use of the deprecated `FLASK_ENV` environment variable by "
|
||
"`FLASK_DEBUG`."
|
||
msgstr ""
|
||
"Remplacement de la variable d’environnement dépréciée `FLASK_ENV` par "
|
||
"`FLASK_DEBUG`."
|
||
|
||
#: ../../CHANGES.rst:604 b6ca7ce41fa346b8bb3fa325f1e1ac0d
|
||
msgid ""
|
||
"Dynamically generate the server metadata. Users won't have to copy and "
|
||
"manually edit ``oauth-authorizationserver.json`` and ``openid-configuration."
|
||
"json``. :pr:`71`"
|
||
msgstr ""
|
||
"Génération dynamique des métadonnées du serveur. Les utilisateurs n’auront "
|
||
"plus à copier manuellement et éditer les fichiers ``oauth-"
|
||
"authorizationserver.json`` et ``openid-configuration.json``. :pr:`71`"
|
||
|
||
#: ../../CHANGES.rst:607 ae1b6570238e43f1ac83a511fece3cf5
|
||
msgid "The `FROM_ADDR` configuration option is not mandatory anymore. :pr:`73`"
|
||
msgstr ""
|
||
"L’option de configuration ``FROM_ADDR``n’est plus obligatoire. :pr:`73`"
|
||
|
||
#: ../../CHANGES.rst:608 cba8b0fae91a4dfe9f0e05ddb541f667
|
||
msgid "The `JWT.ISS` configuration option is not mandatory anymore. :pr:`74`"
|
||
msgstr "L’option de configuration ``JWT.ISS``n’est plus obligatoire. :pr:`74`"
|
||
|
||
#: ../../CHANGES.rst:611 36caf034f254408aa020410594ab0cce
|
||
msgid "[0.0.12] - 2022-10-24"
|
||
msgstr "[0.0.12] - 2022-10-24"
|
||
|
||
#: ../../CHANGES.rst:616 319c8b51be714d25ab11b9a83241970d
|
||
msgid "Basic WebFinger endpoint. :pr:`59`"
|
||
msgstr "Support basique du point de terminaison WebFinger. :pr:`59`"
|
||
|
||
#: ../../CHANGES.rst:617 97c9f28850884353be68c0ada430c443
|
||
msgid "Bumped to FomanticUI 2.9.0."
|
||
msgstr "Mise à jour vers FomanticUI 2.9.0."
|
||
|
||
#: ../../CHANGES.rst:618 c3938df1d7fc47aa9e9e686b32366a0a
|
||
msgid "Implemented Dynamic Client Registration. :pr:`60`"
|
||
msgstr ""
|
||
"Implémentation de l’enregistrement dynamique des clients OIDC. :pr:`60`"
|
||
|
||
#: ../../CHANGES.rst:621 5fbfc5c654b0443bac204c4743931636
|
||
msgid "[0.0.11] - 2022-08-11"
|
||
msgstr "[0.0.11] - 2022-08-11"
|
||
|
||
#: ../../CHANGES.rst:626 d3758c7b32f54dc38b34ab4f54a526ba
|
||
msgid "Default theme has a dark variant. :pr:`57`"
|
||
msgstr "Le thème par défaut a une variante sombre. :pr:`57`"
|
||
|
||
#: ../../CHANGES.rst:631 eac5e673605c44bebeab671117d02935
|
||
msgid "Fixed missing ``canaille`` binary. :pr:`58`"
|
||
msgstr "Correction du binaire manquant ``canaille``. :pr:`58`"
|
||
|
||
#: ../../CHANGES.rst:634 be7d08fe65be48d09396c1c7af7f0e49
|
||
msgid "[0.0.10] - 2022-07-07"
|
||
msgstr "[0.0.10] - 2022-07-07"
|
||
|
||
#: ../../CHANGES.rst:639 f2759b5afad84126b4041f583edb72eb
|
||
msgid "Online demo. :pr:`55`"
|
||
msgstr "Démo en ligne. :pr:`55`"
|
||
|
||
#: ../../CHANGES.rst:640 e3d980415ffb4cccb2272b1cf96719cc
|
||
msgid ""
|
||
"The consent page was displaying scopes not supported by clients. :pr:`56`"
|
||
msgstr ""
|
||
"La page de consentement affichait des domaines non supportés par les "
|
||
"clients. :pr:`56`"
|
||
|
||
#: ../../CHANGES.rst:641 d936dc556a9f4503b0802988273649d3
|
||
msgid "Fixed end session when user are already disconnected."
|
||
msgstr ""
|
||
"Correction de la fin de session lorsque les utilisateurs sont déjà "
|
||
"déconnectés."
|
||
|
||
#: ../../CHANGES.rst:644 1732d28f09b24b89854f21bfe7942840
|
||
msgid "[0.0.9] - 2022-06-05"
|
||
msgstr "[0.0.9] - 2022-06-05"
|
||
|
||
#: ../../CHANGES.rst:649 a298893156394c80b5f843c7193b0ca8
|
||
msgid ""
|
||
"``DISABLE_PASSWORD_RESET`` configuration option to disable password "
|
||
"recovery. :pr:`46`"
|
||
msgstr ""
|
||
"Mise en place de l’option de configuration ``DISABLE_PASSWORD_RESET`` pour "
|
||
"désactiver la fonctionnalité de réinitialisation des mots de passe. :pr:`46`"
|
||
|
||
#: ../../CHANGES.rst:650 c831a4847472435881495bdc121788f9
|
||
msgid "``edit_self`` ACL permission to control user self edition. :pr:`47`"
|
||
msgstr ""
|
||
"Ajout de la permission ``edit_self`` pour contrôler l'auto-édition des "
|
||
"données personnelles par les utilisateurs. :pr:`47`"
|
||
|
||
#: ../../CHANGES.rst:651 312e6a546170436ea1fa95b58e7d91e1
|
||
msgid "`RP-initiated logout` implementation. :pr:`54`"
|
||
msgstr "Implémentation de la norme OIDC `RP-initiated logout` :pr:`54`"
|
||
|
||
#: ../../CHANGES.rst:656 797b8359f6a449e5ba16bcc78088768f
|
||
msgid "Bumped to Authlib 1. :pr:`48`"
|
||
msgstr "Mise à jour vers Authlib 1. :pr:`48`"
|
||
|
||
#: ../../CHANGES.rst:657 4d9126ad1c3742759d3d204f1cf76dac
|
||
msgid "Various documentation improvements. :pr:`50`"
|
||
msgstr "Diverses améliorations de la documentation. :pr:`50`"
|
||
|
||
#: ../../CHANGES.rst:658 36dc25439ee04162b5a0a808de0e823e
|
||
msgid "Use poetry instead of setuptools as project management tool. :pr:`51`"
|
||
msgstr ""
|
||
"Utilisation de poetry à la place de setuptools comme outil de gestion de "
|
||
"projet. :pr:`51`"
|
||
|
||
#: ../../CHANGES.rst:659 f1fc01004b2f41349cbe787739c40b03
|
||
msgid "Additional tests for the OIDC ``nonce`` parameter. :pr:`52`"
|
||
msgstr "Tests additionnels concernant le paramètre OIDC ``nonce``. :pr:`52`"
|
||
|
||
#: ../../CHANGES.rst:663 0183302671b24cb0b537b104dc58a9ea
|
||
msgid "``HIDE_INVALID_LOGIN`` behavior and default value."
|
||
msgstr "Comportement et valeur par défaut de ``HIDE_INVALID_LOGIN``."
|
||
|
||
#: ../../CHANGES.rst:664 781578064d2347228773e4f950d612b2
|
||
msgid ""
|
||
"Compiled translation catalogs are not versioned anymore. :pr:`49` :pr:`53`"
|
||
msgstr ""
|
||
"Les catalogues de traduction compilés ne sont plus versionnés. :pr:`49` :pr:"
|
||
"`53`"
|
||
|
||
#: ../../CHANGES.rst:667 d816db34635d4549985bb9d94d9a7862
|
||
msgid "[0.0.8] - 2022-03-15"
|
||
msgstr "[0.0.8] - 2022-03-15"
|
||
|
||
#: ../../CHANGES.rst:672 5c82cce323c6462687804d2c7f006f8d
|
||
msgid "Fixed dependencies."
|
||
msgstr "Correction des dépendances."
|
||
|
||
#: ../../CHANGES.rst:675 e6ab77996ddc43dab6022173bbd8eae0
|
||
msgid "[0.0.7] - 2022-03-15"
|
||
msgstr "[0.0.7] - 2022-03-15"
|
||
|
||
#: ../../CHANGES.rst:680 db3701add4984f8c8dd764706a9639fd
|
||
msgid ""
|
||
"Fixed spaces and escaped special char in LDAP ``cn/dn`` attributes. :pr:`43`"
|
||
msgstr ""
|
||
"Correction des espaces et échappement des caractères spéciaux dans les "
|
||
"attributs LDAP ``cn`` et ``dn``. :pr:`43`"
|
||
|
||
#: ../../CHANGES.rst:683 099a78c093eb4078914a63b9f15403b7
|
||
msgid "[0.0.6] - 2022-03-08"
|
||
msgstr "[0.0.6] - 2022-03-08"
|
||
|
||
#: ../../CHANGES.rst:688 4598be258efa4e99ab34d7bd5648a824
|
||
msgid "Access token are JWT. :pr:`38`"
|
||
msgstr "Les jetons d’accès sont des JWT. :pr:`38`"
|
||
|
||
#: ../../CHANGES.rst:693 19eb39b5f802426f9c1380f0d3c0dfbb
|
||
msgid "Default groups on invitations. :pr:`41`"
|
||
msgstr "Groupes par défaut lors des invitations. :pr:`41`"
|
||
|
||
#: ../../CHANGES.rst:694 81b3f2d331284cd1bd5d5a148b5d3b77
|
||
msgid "LDAP schemas are shipped within the Canaille package. :pr:`42`"
|
||
msgstr "Les schémas LDAP sont fournis avec le paquet Canaille. :pr:`42`"
|
||
|
||
#: ../../CHANGES.rst:697 bc34ed5400c7449886a6d25b679c7ae2
|
||
msgid "[0.0.5] - 2022-02-17"
|
||
msgstr "[0.0.5] - 2022-02-17"
|
||
|
||
#: ../../CHANGES.rst:702 45fc46e1672846778b27bc8766c1aeae
|
||
msgid "LDAP model objects have new identifiers. :pr:`37`"
|
||
msgstr "Les objects LDAP ont de nouveaux identifiants. :pr:`37`"
|
||
|
||
#: ../../CHANGES.rst:707 8973b4acdebf481783a30266f9502cc2
|
||
msgid "Admin menu dropdown display. :pr:`39`"
|
||
msgstr "Le menu d’administration est déroulant. :pr:`39`"
|
||
|
||
#: ../../CHANGES.rst:708 b5deb21feb4d45e58f0b010788916ecd
|
||
msgid "``GROUP_ID_ATTRIBUTE`` configuration typo. :pr:`40`"
|
||
msgstr ""
|
||
"Correction d’une faute de frappe pour le paramètre de configuration "
|
||
"``GROUP_ID_ATTRIBUTE`` :pr:`40`"
|
||
|
||
#: ../../CHANGES.rst:711 3dad472d941b4b5392930e039a934df2
|
||
msgid "[0.0.4] - 2022-02-16"
|
||
msgstr "[0.0.4] - 2022-02-16"
|
||
|
||
#: ../../CHANGES.rst:716 3086c540c13844a3b626a211f86a856b
|
||
msgid "Client pre-authorization. :pr:`11`"
|
||
msgstr "Pré-autorisation des clients OIDC. :pr:`11`"
|
||
|
||
#: ../../CHANGES.rst:717 b621896643ca409cac8c3007137ed084
|
||
msgid "LDAP permissions check with the check command. :pr:`12`"
|
||
msgstr ""
|
||
"Vérification des permissions LDAP grâce à la commande `check`. :pr:`12`"
|
||
|
||
#: ../../CHANGES.rst:718 ac5232266c154c829a210031f4d8a1bc
|
||
msgid ""
|
||
"Update consents when a scope required is larger than the scope of an already "
|
||
"given consent. :pr:`13`"
|
||
msgstr ""
|
||
"Mise à jour des consentements lorsque le domaine requis est plus large que "
|
||
"le domaine déjà autorisé. :pr:`13`"
|
||
|
||
#: ../../CHANGES.rst:720 7af42dde14864ada93162b9ea16e7cd4
|
||
msgid "Theme customization. :pr:`15`"
|
||
msgstr "Personnalisation du thème. :pr:`15`"
|
||
|
||
#: ../../CHANGES.rst:721 b8096ecde48d430b91666fa493e4fffe
|
||
msgid "Logging configuration. :pr:`16`"
|
||
msgstr "Configuration de la journalisation. :pr:`16`"
|
||
|
||
#: ../../CHANGES.rst:722 0db8075af2664c10be1433c0426592e5
|
||
msgid "Installation command. :pr:`17`"
|
||
msgstr "Commande d’installation. :pr:`17`"
|
||
|
||
#: ../../CHANGES.rst:723 5a0d7f3aca6b446fba5f0d36512be8c1
|
||
msgid "Invitation links. :pr:`18`"
|
||
msgstr "Liens d’invitation. :pr:`18`"
|
||
|
||
#: ../../CHANGES.rst:724 900b1cb1421848c78ccd8559ce8aa513
|
||
msgid "Advanced permissions. :pr:`20`"
|
||
msgstr "Permissions avancées. :pr:`20`"
|
||
|
||
#: ../../CHANGES.rst:725 be2815e3ce9b44f6aeb64d24d7cd75ee
|
||
msgid "An option to not use OIDC. :pr:`23`"
|
||
msgstr "Une option pour désactiver OIDC. :pr:`23`"
|
||
|
||
#: ../../CHANGES.rst:726 6fe21ccaf0474887a8c6c04e69154ada
|
||
msgid "Disable some features when no SMTP server is configured. :pr:`24`"
|
||
msgstr ""
|
||
"Désactivation de quelques fonctionnalités lorsqu’aucun serveur SMTP n’a été "
|
||
"configuré. :pr:`24`"
|
||
|
||
#: ../../CHANGES.rst:727 7fcdcf093e8849e59445af91ec4cfab6
|
||
msgid ""
|
||
"Login placeholder dynamically generated according to the configuration. :pr:"
|
||
"`25`"
|
||
msgstr ""
|
||
"Le texte d’exemple du champ de connexion est généré dynamiquement en "
|
||
"fonction de la configuration. :pr:`25`"
|
||
|
||
#: ../../CHANGES.rst:728 9bebc076e1b64cb3be67690a3e46e808
|
||
msgid "Added an option to tune object IDs. :pr:`26`"
|
||
msgstr ""
|
||
"Ajout d’une option pour paramétrer les identifiants des objets. :pr:`26`"
|
||
|
||
#: ../../CHANGES.rst:729 983fa51b51db46409b73d0ba279c76d5
|
||
msgid "Avatar support. :pr:`27`"
|
||
msgstr "Support des avatars. :pr:`27`"
|
||
|
||
#: ../../CHANGES.rst:730 94758b3cf72342d2948e727f6deb10a7
|
||
msgid "Dynamical and configurable JWT claims. :pr:`28`"
|
||
msgstr "Paramètres des jetons d’accès dynamiques et configurables. :pr:`28`"
|
||
|
||
#: ../../CHANGES.rst:731 33402d7e6d47455cbfc52aeb276a12f2
|
||
msgid "UI improvements. :pr:`29`"
|
||
msgstr "Améliorations de l’interface utilisateur. :pr:`29`"
|
||
|
||
#: ../../CHANGES.rst:732 181fed73a01445ea9865aadc802e9642
|
||
msgid "Invitation links expiration. :pr:`30`"
|
||
msgstr "Expiration des liens d’invitation. :pr:`30`"
|
||
|
||
#: ../../CHANGES.rst:733 eeaa39f7f6c842d39c1d8d40c6e4fbf8
|
||
msgid "Invitees can choose their IDs. :pr:`31`"
|
||
msgstr "Les invités peuvent choisir leur identifiant. :pr:`31`"
|
||
|
||
#: ../../CHANGES.rst:734 8123032bb5d341ec82aa2b0ac8caf886
|
||
msgid "LDAP backend refactoring. :pr:`35`"
|
||
msgstr "Ré-usinage concernant la base de données LDAP. :pr:`35`"
|
||
|
||
#: ../../CHANGES.rst:739 c9a12647745f472890eff2ceb165a8b8
|
||
msgid "Fixed ghost members in a group. :pr:`14`"
|
||
msgstr "Correction des membres fantômes dans les groupes. :pr:`14`"
|
||
|
||
#: ../../CHANGES.rst:740 834311277daf401e9c654cfe0751d4f2
|
||
msgid "Fixed email sender names. :pr:`19`"
|
||
msgstr "Correction de l’adresse email des émetteurs. :pr:`19`"
|
||
|
||
#: ../../CHANGES.rst:741 5fa1016aa05747ca84948a30c452d5a4
|
||
msgid "Fixed filter being not escaped. :pr:`21`"
|
||
msgstr "Les filtres n’étaient pas échappés. :pr:`21`"
|
||
|
||
#: ../../CHANGES.rst:742 a221c0e18ffd40e3986f7d20f6eac01a
|
||
msgid "Demo script good practices. :pr:`32`"
|
||
msgstr "Bonnes pratiques du script de démo. :pr:`32`"
|
||
|
||
#: ../../CHANGES.rst:743 7e90135fab824314847bb5f4e9ab0664
|
||
msgid "Binary path for Debian. :pr:`33`"
|
||
msgstr "Chemins des binaires pour Debian. :pr:`33`"
|
||
|
||
#: ../../CHANGES.rst:744 39205a39be2c4d4bbc2359ba32796266
|
||
msgid ""
|
||
"Last name was not mandatory in the forms while this was mandatory in the "
|
||
"LDAP server. :pr:`34`"
|
||
msgstr ""
|
||
"Le nom de famille était facultatif dans les formulaires alors que c’est un "
|
||
"paramètre obligatoire pour LDAP. :pr:`34`"
|
||
|
||
#: ../../CHANGES.rst:746 bef3030603fa42ccaeffb936e450cfeb
|
||
msgid "Spelling typos. :pr:`36`"
|
||
msgstr "Corrections de fautes d’orthographe. :pr:`36`"
|
||
|
||
#: ../../CHANGES.rst:749 2dc8f2d4014f4eb9805a19921e4e336a
|
||
msgid "[0.0.3] - 2021-10-13"
|
||
msgstr "[0.0.3] - 2021-10-13"
|
||
|
||
#: ../../CHANGES.rst:754 f0b73ca5d1da4a728d770d11887f9754
|
||
msgid "Two-steps sign-in. :issue:`49`"
|
||
msgstr "Connexion en deux étapes. :issue:`49`"
|
||
|
||
#: ../../CHANGES.rst:755 d8353e939a4341fdb9d8b51ac4e03c75
|
||
msgid "Tokens can have several audiences. :issue:`62` :pr:`9`"
|
||
msgstr "Les jetons peuvent avoir plusieurs audiences. :issue:`62` :pr:`9`"
|
||
|
||
#: ../../CHANGES.rst:756 a8bf6576f8214a6299aadf379a50f282
|
||
msgid "Configuration check command. :issue:`66` :pr:`8`"
|
||
msgstr "Commande de vérification de la configuration. :issue:`66` :pr:`8`"
|
||
|
||
#: ../../CHANGES.rst:757 05a103a6101241a9afbfeffb28b04ee2
|
||
msgid "Groups management. :issue:`12` :pr:`6`"
|
||
msgstr "Gestion des groupes. :issue:`12` :pr:`6`"
|
||
|
||
#: ../../CHANGES.rst:762 f9681903b632489e99eb53fdf5301bb7
|
||
msgid "Introspection access bugfix. :issue:`63` :pr:`10`"
|
||
msgstr ""
|
||
"Correction de l’accès au point de terminaison d’introspection OIDC. :issue:"
|
||
"`63`:pr:`10`"
|
||
|
||
#: ../../CHANGES.rst:763 08202024eda84dd2b15e255de912389d
|
||
msgid "Introspection sub claim. :issue:`64` :pr:`7`"
|
||
msgstr ""
|
||
"Support du paramètre ``sub``dans l’introspection OIDC. :issue:`64` :pr:`7`"
|
||
|
||
#: ../../CHANGES.rst:766 c8cf3465674b4ecb94bf3a4548fc5601
|
||
msgid "[0.0.2] - 2021-01-06"
|
||
msgstr "[0.0.2] - 2021-01-06"
|
||
|
||
#: ../../CHANGES.rst:771 a52712c92f57496f9cbaf32727c9a2df
|
||
msgid "Login page is responsive. :issue:`1`"
|
||
msgstr "La page de connexion est réactive. :issue:`1`"
|
||
|
||
#: ../../CHANGES.rst:772 3e40e18b9ffa4afd9036177b6d1a0393
|
||
msgid "Adapt mobile keyboards to login page fields. :issue:`2`"
|
||
msgstr ""
|
||
"Adaptation des claviers mobiles sur les champs de la page de connexion. :"
|
||
"issue:`2`"
|
||
|
||
#: ../../CHANGES.rst:773 cf124fc4d201473f9a1d604b092c8c0a
|
||
msgid "Password recovery interface. :issue:`3`"
|
||
msgstr "Interface de réinitialisation des mots de passe. :issue:`3`"
|
||
|
||
#: ../../CHANGES.rst:774 6a024dfd785b44f09e231f0f3b6a1bdd
|
||
msgid "User profile interface. :issue:`4`"
|
||
msgstr "Interface de gestion des profiles utilisateur. :issue:`4`"
|
||
|
||
#: ../../CHANGES.rst:775 295718a0674c41749936c9ee63d895b2
|
||
msgid "Renamed the project *Canaille*. :issue:`5`"
|
||
msgstr "Renommage du projet en *Canaille*. :issue:`5`"
|
||
|
||
#: ../../CHANGES.rst:776 5572ba58f8934db484ed5914858c1f61
|
||
msgid "Command to remove old tokens. :issue:`17`"
|
||
msgstr "Commande pour supprimer les jetons expirés. :issue:`17`"
|
||
|
||
#: ../../CHANGES.rst:777 da0ebb8c52d34d209bbbc13ec7a1902a
|
||
msgid "Improved password recovery email. :issue:`14` :issue:`26`"
|
||
msgstr ""
|
||
"Améliorations sur le courriel de réinitialisation de mot de passe. :issue:"
|
||
"`14` :issue:`26`"
|
||
|
||
#: ../../CHANGES.rst:778 2eca9a011ae64f8788ff5b22428f2b63
|
||
msgid ""
|
||
"Use Flask `SERVER_NAME` configuration variable instead of `URL`. :issue:`24`"
|
||
msgstr ""
|
||
"Utilisation du paramètre de configuration Flask ``SERVER_NAME`` à la place "
|
||
"d’``URL``. :issue:`24`"
|
||
|
||
#: ../../CHANGES.rst:779 42eb9a40233047e4a8d632b8b60a4220
|
||
msgid "Improved consents page. :issue:`27`"
|
||
msgstr "Améliorations sur la page de consentement. :issue:`27`"
|
||
|
||
#: ../../CHANGES.rst:780 4511807efd4b4f6ea558d2632d914cae
|
||
msgid "Admin user page. :issue:`8`"
|
||
msgstr "Page d’administration des utilisateurs. :issue:`8`"
|
||
|
||
#: ../../CHANGES.rst:781 9928a9d6301649a2bb80e54f26506c4e
|
||
msgid "Project logo. :pr:`29`"
|
||
msgstr "Logo pour le projet. :pr:`29`"
|
||
|
||
#: ../../CHANGES.rst:782 4403f90b28a249c2b38248bf0c9f77f7
|
||
msgid ""
|
||
"User account self-deletion can be enabled in the configuration with "
|
||
"`SELF_DELETION`. :issue:`35`"
|
||
msgstr ""
|
||
"L’auto-suppression des comptes est configurable avec le paramètre de "
|
||
"configuration ``SELF_DELETION``. :issue:`35`"
|
||
|
||
#: ../../CHANGES.rst:783 21fd51a849844a03b830dc97bc05ab0c
|
||
msgid "Admins can impersonate users. :issue:`39`"
|
||
msgstr ""
|
||
"Les administrateurs peuvent prendre l’identité des utilisateurs. :issue:`39`"
|
||
|
||
#: ../../CHANGES.rst:784 31d73c9489164e0e92e62ac84bc8c22a
|
||
msgid "Forgotten page UX improvement. :pr:`43`"
|
||
msgstr ""
|
||
"Améliorations sur l’interface utilisateur de la page des mots de passe "
|
||
"oubliés. :pr:`43`"
|
||
|
||
#: ../../CHANGES.rst:785 2b400ada80514bc68dd82d954fff040d
|
||
msgid "Admins can remove clients. :pr:`45`"
|
||
msgstr "Les administrateurs peuvent supprimer des clients. :pr:`45`"
|
||
|
||
#: ../../CHANGES.rst:786 2355c3ec7d674d50ace6ac3ad2065627
|
||
msgid ""
|
||
"Option `HIDE_INVALID_LOGIN` that can be unactivated to let the user know if "
|
||
"the login he attempt to sign in with exists or not. :pr:`48`"
|
||
msgstr ""
|
||
"Le paramètre de configuration ``HIDE_INVALID_LOGIN`` peut-être utilisé pour "
|
||
"laisser ou non les utilisateurs savoir si le compte avec lequel ils tentent "
|
||
"de se connecter existe ou pas. :pr:`48`"
|
||
|
||
#: ../../CHANGES.rst:788 ad8e32ede8504576b73db0b8b7bf303a
|
||
msgid "Password initialization mail. :pr:`51`"
|
||
msgstr "Courriels d’initialisation des mots de passe. :pr:`51`"
|
||
|
||
#: ../../CHANGES.rst:793 0f2d8650e76545438f92a8ca420e65e9
|
||
msgid "Form translations. :issue:`19` :issue:`23`"
|
||
msgstr "Traductions des formulaires. :issue:`19` :issue:`23`"
|
||
|
||
#: ../../CHANGES.rst:794 6f367157d7464c9492c0f8a528dbd11f
|
||
msgid "Avoid to use Google Fonts. :issue:`21`"
|
||
msgstr "Utilisations d’autres polices que celles de Google Fonts. :issue:`21`"
|
||
|
||
#: ../../CHANGES.rst:799 ae2646eead6a4983998e7b76396f3862
|
||
msgid "'My tokens' page. :issue:`22`"
|
||
msgstr "Page « Mes jetons ». :issue:`22`"
|
||
|
||
#: ../../CHANGES.rst:802 b2a9ee20e0214e2eb650a3c0c80c6a8f
|
||
msgid "[0.0.1] - 2020-10-21"
|
||
msgstr "[0.0.1] - 2020-10-21"
|
||
|
||
#: ../../CHANGES.rst:807 974217beadfa4205ad58a4fff852a8d4
|
||
msgid "Initial release."
|
||
msgstr "Publication initiale."
|
||
|
||
#: ../../CONTRIBUTING.rst:2 a96f68b7ad98474ba59c1cc935c2fab4
|
||
msgid "Contributions"
|
||
msgstr "Contributions"
|
||
|
||
#: ../../CONTRIBUTING.rst:4 f190f6b5c4a1498eadcb7fae2bcdf493
|
||
msgid "Contributions are welcome!"
|
||
msgstr "Les contributions sont bienvenues !"
|
||
|
||
#: ../../CONTRIBUTING.rst:6 26f13dddd093492789f21e4db847d7a9
|
||
msgid ""
|
||
"The repository is hosted at `gitlab.com/yaal/canaille <https://gitlab.com/"
|
||
"yaal/canaille>`_."
|
||
msgstr ""
|
||
"Le dépôt de code est hébergé sur `gitlab.com/yaal/canaille <https://gitlab."
|
||
"com/yaal/canaille>`_."
|
||
|
||
#: ../../CONTRIBUTING.rst:9 25361fdaed76435db19183cb37a4ee83
|
||
msgid "Discuss"
|
||
msgstr "Discuter"
|
||
|
||
#: ../../CONTRIBUTING.rst:11 b8e752ea3b8f4591a9c8616ed7f0d9af
|
||
msgid ""
|
||
"If you want to implement a feature or a bugfix, please start by discussing "
|
||
"it with us on the `bugtracker <https://gitlab.com/yaal/canaille/-/issues>`_ "
|
||
"or the `matrix room <https://matrix.to/#/#canaille-discuss:yaal.coop>`_."
|
||
msgstr ""
|
||
"Si vous souhaitez développer une fonctionnalité ou corriger un "
|
||
"dysfonctionnement, veuillez commencer par en discuter sur `l’outil de "
|
||
"gestion de ticket <https://gitlab.com/yaal/canaille/-/issues>`_ ou bien sur "
|
||
"le `salon Matrix <https://matrix.to/#/#canaille-discuss:yaal.coop>`_."
|
||
|
||
#: ../../CONTRIBUTING.rst:16 5e0c1113f29742f89b251b5903f73e36
|
||
msgid "Development environment"
|
||
msgstr "Environnement de développement"
|
||
|
||
#: ../../CONTRIBUTING.rst:18 710016d6c25b4193925b83445146a358
|
||
msgid "You can either run the demo locally or with Docker."
|
||
msgstr ""
|
||
"Vous pouvez exécuter l’instance de démonstration localement ou bien à l’aide "
|
||
"de Docker."
|
||
|
||
#: ../../CONTRIBUTING.rst:20 62ee7de4d731446fa1b2df4e3805803b
|
||
msgid ""
|
||
"The only tool required for local development is `uv`. Make sure to have uv "
|
||
"`installed on your computer <https://docs.astral.sh/uv/getting-started/"
|
||
"installation/>`_ to be able to hack Canaille."
|
||
msgstr ""
|
||
"Le seul outil requis pour développer localement est `uv`. Assurez-vous "
|
||
"d’avoir uv `installé sur votre système <https://docs.astral.sh/uv/getting-"
|
||
"started/installation/>`_ afin de pouvoir développer Canaille."
|
||
|
||
#: ../../CONTRIBUTING.rst:24 b95dab6a28fb472bba445e43148ff6bc
|
||
msgid "Initialize your development environment with:"
|
||
msgstr "Initialisez votre environnement de développement avec :"
|
||
|
||
#: ../../CONTRIBUTING.rst:26 8724e2b7dec24128988b2a3ffb199a4d
|
||
msgid ""
|
||
"``uv sync --extra front --extra oidc`` to have a minimal working development "
|
||
"environment. This will allow you to run the tests with ``uv pytest --backend "
|
||
"memory``."
|
||
msgstr ""
|
||
"``uv sync --extra front --extra oidc`` pour obtenir un environnement de "
|
||
"développement minimal. Cela vous permettra d’exécuter les tests avec ``uv "
|
||
"pytest --backend memory``."
|
||
|
||
#: ../../CONTRIBUTING.rst:27 ef925e13845f4ec1abf9cae0f0e64140
|
||
msgid ""
|
||
"``uv sync --extra front --extra oidc --extra sqlite`` to have a minimal "
|
||
"working development environment with SQLite backend support. This will allow "
|
||
"you to run the tests with ``uv pytest --backend sql``."
|
||
msgstr ""
|
||
"``uv sync --extra front --extra oidc --extra sqlite`` pour obtenir un "
|
||
"environnement de développement minimal avec le support des bases de données "
|
||
"SQLite. Cela vous permettra d’exécuter les tests avec ``uv pytest --backend "
|
||
"sql``."
|
||
|
||
#: ../../CONTRIBUTING.rst:28 2a07d0fc832b4178be5633d02a0f1d07
|
||
msgid ""
|
||
"``uv sync --extra front --extra oidc --extra ldap`` to have a minimal "
|
||
"working development environment with LDAP backend support. This will allow "
|
||
"you to run the tests with ``uv pytest --backend ldap``."
|
||
msgstr ""
|
||
"``uv sync --extra front --extra oidc --extra ldap`` pour obtenir un "
|
||
"environnement de développement minimal avec le support pour les bases de "
|
||
"données LDAP. Cela vous permettra d’exécuter les tests avec ``uv pytest --"
|
||
"backend ldap``."
|
||
|
||
#: ../../CONTRIBUTING.rst:29 77b8e98fabe140a28382d44b936baa18
|
||
msgid ""
|
||
"``uv sync --all-extras`` if you want to have everything at your fingertips. "
|
||
"Note that it may compile some Python dependencies that would expect things "
|
||
"to be installed on your system; Some dependencies of Canaille might need to "
|
||
"be compiled, so you probably want to check that `GCC` and `cargo` are "
|
||
"available on your computer."
|
||
msgstr ""
|
||
"``uv sync --all-extras`` si vous souhaitez avoir tout à portée de main. "
|
||
"Notez que cela requerra peut-être de compiler certaines dépendances Python, "
|
||
"qui nécessiterons l’installation de certaines bibliothèques sur votre "
|
||
"système ; Certaines dépendances de Canaille auront peut-être besoin d’être "
|
||
"compilées, vous voudrez probablement vérifier que `GCC` et `cargo` sont "
|
||
"installés sur votre système."
|
||
|
||
#: ../../CONTRIBUTING.rst:32 a69af4c344d546e4abf52e4a3aa35cf8
|
||
msgid "After having launched the demo you have access to several services:"
|
||
msgstr ""
|
||
"Après avoir lancé l’instance de démonstration, vous avec accès à plusieurs "
|
||
"services :"
|
||
|
||
#: ../../CONTRIBUTING.rst:34 dda88353032541b9a70440211ee1a89b
|
||
msgid "A canaille server at `localhost:5000 <http://localhost:5000>`_"
|
||
msgstr ""
|
||
"Un serveur Canaille à l’adresse `localhost:5000 <http://localhost:5000>`_"
|
||
|
||
#: ../../CONTRIBUTING.rst:35 5d2493dbe0924c578cbce67b64f80d14
|
||
msgid "A dummy client at `localhost:5001 <http://localhost:5001>`_"
|
||
msgstr ""
|
||
"Un client factice à l’adresse `localhost:5001 <http://localhost:5001>`_"
|
||
|
||
#: ../../CONTRIBUTING.rst:36 595602fe39c040259d1e0346e45efdb7
|
||
msgid "Another dummy client at `localhost:5002 <http://localhost:5002>`_"
|
||
msgstr ""
|
||
"Un autre client factice à l’adresse `localhost:5002 <http://localhost:5002>`_"
|
||
|
||
#: ../../CONTRIBUTING.rst:38 6de7e48182d648f89fe8b2c0b30634fd
|
||
msgid "The canaille server has some default users:"
|
||
msgstr "Le serveur Canaille embarque quelques utilisateurs par défaut :"
|
||
|
||
#: ../../CONTRIBUTING.rst:40 05cc64bd64b3425f8c727e448bac1904
|
||
msgid "A regular user which login and password are **user**;"
|
||
msgstr ""
|
||
"Un utilisateur de base dont l’identifiant et le mot de passe sont **user** ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:41 526ece6f767c4728a86ccc832ed77f3e
|
||
msgid "A moderator user which login and password are **moderator**;"
|
||
msgstr ""
|
||
"Un modérateur dont l’identifiant et le mot de passe sont **moderator** ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:42 bb69c0dfc3e64ceeba0152302e50d5d2
|
||
msgid "An admin user which admin and password are **admin**;"
|
||
msgstr ""
|
||
"Un administrateur dont l’identifiant et le mot de passe sont **admin** ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:43 c188d453c64c47869a6c1bba24c32639
|
||
msgid ""
|
||
"A new user which login is **james**. This user has no password yet, and his "
|
||
"first attempt to log-in would result in sending a password initialization "
|
||
"email (if a smtp server is configured)."
|
||
msgstr ""
|
||
"Un nouvel utilisateur dont l’identifiant est **james**. Cet utilisateur n’a "
|
||
"pas de mot de passe défini, et sa première tentative de connexion résultera "
|
||
"en l'envoi d’un email d’initialisation de mot de pass (si un serveur SMTP "
|
||
"est configuré)."
|
||
|
||
#: ../development/specifications.rst:62 ../../CONTRIBUTING.rst:48
|
||
#: f9d8d16e7fd1478ea154c65fddc0c109 30174a5d8c1f479eaf739cfb67550caa
|
||
msgid "Backends"
|
||
msgstr "Bases de données"
|
||
|
||
#: ../../CONTRIBUTING.rst:50 0ec216a61a0f4d0c81ef8859f4b8e775
|
||
msgid "Canaille comes with several backends:"
|
||
msgstr "Canaille peut se connecter à plusieurs types de bases de données :"
|
||
|
||
#: ../../CONTRIBUTING.rst:52 d49ccb7bb5d349b3b97dcb367e9f50db
|
||
msgid "a lightweight test purpose `memory` backend"
|
||
msgstr "une base de données très légère `memory` à fins de tests"
|
||
|
||
#: ../../CONTRIBUTING.rst:53 2b5961e3d4d34b41a03f5f4e1b305f14
|
||
msgid "a `sql` backend, based on sqlalchemy"
|
||
msgstr "une base de données `SQL`, utilsant SQLAlchemy"
|
||
|
||
#: ../../CONTRIBUTING.rst:54 3db6bec104534cbbb972fef81e090786
|
||
msgid "a production-ready `LDAP` backend"
|
||
msgstr "une base de données `LDAP` prête à l’emploi"
|
||
|
||
#: ../../CONTRIBUTING.rst:57 b800e3599701462b8ad5f4449e0a62b4
|
||
msgid "Docker environment"
|
||
msgstr "Environnement Docker"
|
||
|
||
#: ../../CONTRIBUTING.rst:59 39ea2b50603a473cb167b4e1a6a135ca
|
||
msgid ""
|
||
"If you want to develop with docker, your browser needs to be able to reach "
|
||
"the `canaille` container. The docker-compose file exposes the right ports, "
|
||
"but front requests are from outside the docker network: the `canaille` url "
|
||
"that makes sense for docker, points nowhere from your browser. As exposed "
|
||
"ports are on `localhost`, you need to tell your computer that `canaille` url "
|
||
"means `localhost`."
|
||
msgstr ""
|
||
"Si vous souhaitez développer avec Docker, votre navigateur doit être en "
|
||
"mesure de joindre le conteneur `canaille`. Le fichier docker-compose expose "
|
||
"les bons ports, mais les requêtes viendront de l’extérieur du réseau "
|
||
"Docker : l'URL `canaille` a un sens à l’intérieur du réseau Docker, mais ne "
|
||
"désigne rien pour votre navigateur. Comme les ports sont exposés sur "
|
||
"`localhost`, vous devez configurer votre ordinateur pour que `canaille` "
|
||
"pointe vers `localhost`."
|
||
|
||
#: ../../CONTRIBUTING.rst:64 dd86e0f0a4204a77ba9927f1768aa33e
|
||
msgid "To do that, you can add the following line to your `/etc/hosts`:"
|
||
msgstr ""
|
||
"Pour effectuer ceci, vous pouvez ajouter la ligne suivante à `/etc/hosts` :"
|
||
|
||
#: ../../CONTRIBUTING.rst:70 5572861cc5114b9b9e7f520fee49b975
|
||
msgid "To launch containers, use:"
|
||
msgstr "Pour lancer les conteneurs, utilisez :"
|
||
|
||
#: ../development/specifications.rst:64 ../tutorial/databases.rst:16
|
||
#: ../../CONTRIBUTING.rst:73 ../../CONTRIBUTING.rst:106
|
||
#: 7a0d8968fcbe4d8693ac6cf593f51106 fafde474a9ed41dab483dfb87f46dda3
|
||
#: f210968f704646b2a4b35d9f6a5baa90 e8a3d979968c4e05ab1fb5630eb8fc6b
|
||
msgid "SQL"
|
||
msgstr "SQL"
|
||
|
||
#: ../../CONTRIBUTING.rst:74 ../../CONTRIBUTING.rst:107
|
||
#: a1183f0e179942889b697fccf6fde014 f12297286ea648a7a4f8723cd900dd74
|
||
msgid ""
|
||
"With the SQL backend, the demo instance will load and save data in a local "
|
||
"sqlite database."
|
||
msgstr ""
|
||
"Avec la base de données SQL, l’instance de démonstration chargera et "
|
||
"enregistrera les données dans un fichier sqlite local."
|
||
|
||
#: ../../CONTRIBUTING.rst:76 ../../CONTRIBUTING.rst:109
|
||
#: 2f256843b3974bfe82ebbd54b22758a0 03535ba511ef42feb8d6fb77934fb88b
|
||
msgid "Run the demo instance with the SQL backend"
|
||
msgstr "Lancer l’instance de démonstration avec la base de données SQL"
|
||
|
||
#: ../tutorial/databases.rst:8 ../../CONTRIBUTING.rst:83
|
||
#: ../../CONTRIBUTING.rst:115 3216b8433f1847809573eaaa434fe9a7
|
||
#: 6323f7ec77464e2ba7d399f7ccc6f590 d63a7ad080eb47be9529226d4685cf76
|
||
msgid "Memory"
|
||
msgstr "En-mémoire"
|
||
|
||
#: ../../CONTRIBUTING.rst:84 ../../CONTRIBUTING.rst:116
|
||
#: 96e1856006aa4151b406b7f7922e84ff 74b6ac7aa3c144f9be537b2c60010548
|
||
msgid "With the memory backend, all data is lost when Canaille stops."
|
||
msgstr ""
|
||
"Avec la base de données en mémoire, toutes les données sont perdues lorsque "
|
||
"Canaille s'arrête."
|
||
|
||
#: ../../CONTRIBUTING.rst:86 ../../CONTRIBUTING.rst:118
|
||
#: 6751970e321642cb9cfabd3395bdf82b b4933b104b004ed39073970b595e9b5f
|
||
msgid "Run the demo instance with the memory backend"
|
||
msgstr "Lancer l’instance de démonstration avec la base de données en mémoire"
|
||
|
||
#: ../development/specifications.rst:64 ../tutorial/databases.rst:32
|
||
#: ../../CONTRIBUTING.rst:93 ../../CONTRIBUTING.rst:124
|
||
#: fdfa320e4c4445e5a0c5443e647c0835 44d5d5bd5737458d81975f70b3477b17
|
||
#: bbe1b4e1618b44fb9651929f4e459099 2794653a6dd64b5f8a13bc552aa7acc9
|
||
msgid "LDAP"
|
||
msgstr "LDAP"
|
||
|
||
#: ../../CONTRIBUTING.rst:94 ../../CONTRIBUTING.rst:125
|
||
#: c8a1e8a894ef4fa9a4ea60027c3b73a1 8733bd5bbf5b4744ab8896570d709291
|
||
msgid "With the LDAP backend, all data is lost when Canaille stops."
|
||
msgstr "Avec LDAP, toutes les données sont perdues lorsque Canaille s’arrête."
|
||
|
||
#: ../../CONTRIBUTING.rst:96 ../../CONTRIBUTING.rst:127
|
||
#: ac813d37940b4d189a3957eeba2ffb08 73ef2cc1d55f45acbe1568f8da59c158
|
||
msgid "Run the demo instance with the LDAP backend"
|
||
msgstr "Lancer l’instance de démo avec le support de LDAP"
|
||
|
||
#: ../../CONTRIBUTING.rst:103 80000162aaf447eda038a20ae12973c7
|
||
msgid "Local environment"
|
||
msgstr "Environnement local"
|
||
|
||
#: ../../CONTRIBUTING.rst:133 8b346e3f0ae84b289a7e819279283718
|
||
msgid ""
|
||
"If you want to run the demo locally with the LDAP backend, you need to have "
|
||
"`OpenLDAP <https://www.openldap.org/>`_ installed on your system. It is "
|
||
"generally shipped under the ``slapd`` or ``openldap`` package name."
|
||
msgstr ""
|
||
"Si vous souhaitez exécuter l’instance de démonstration localement avec le "
|
||
"support pour LDAP, vous devez avoir `OpenLDAP <https://www.openldap.org/>`_ "
|
||
"installé sur votre système. OpenLDAP est généralement fourni via les paquets "
|
||
"nommés ``slapd`` ou ``openldap``."
|
||
|
||
#: ../../CONTRIBUTING.rst:138 ad84a2866902456b8f29498783fd665b
|
||
msgid ""
|
||
"On Debian or Ubuntu systems, the OpenLDAP `slapd` binary usage might be "
|
||
"restricted by apparmor, and thus makes the tests and the demo fail. This can "
|
||
"be mitigated by removing apparmor restrictions on `slapd`."
|
||
msgstr ""
|
||
"Si vous souhaitez apporter une correction ou développer une fonctionnalité, "
|
||
"veuillez commencer par en discuter sur l’`outil de gestion de tickets "
|
||
"<https://gitlab.com/yaal/canaille/-/issues>`_ ou le `salon Matrix <https://"
|
||
"matrix.to/#/#canaille-discuss:yaal.coop>`_."
|
||
|
||
#: ../../CONTRIBUTING.rst:148 cdab025ce1dc48fa97161a955423b957
|
||
msgid "Populate the database"
|
||
msgstr "Remplissage de la base de données"
|
||
|
||
#: ../../CONTRIBUTING.rst:150 319a37a58be44aac8e617f300e3c3afb
|
||
msgid ""
|
||
"The demo database comes populated with some random users and groups. If you "
|
||
"need more, you can generate users and groups with the ``populate`` command:"
|
||
msgstr ""
|
||
"La base de donnée de démonstration est remplie avec des utilisateurs et des "
|
||
"groupes générés aléatoirement. Si vous avez besoin de plus, vous pouvez "
|
||
"générer des utilisateurs et des groupes avec la commande ``populate`` :"
|
||
|
||
#: ../../CONTRIBUTING.rst:161 4bf45406e18a4505999dca7b84c4e8f0
|
||
msgid ""
|
||
"Adapt to use either the `ldap` or the `sql` configuration file. Note that "
|
||
"this will not work with the memory backend."
|
||
msgstr ""
|
||
"Adaptez pour utiliser le fichier de configuration `ldap` ou `sql`. Notez que "
|
||
"cela ne fonctionnera pas avec la base de données en mémoire."
|
||
|
||
#: ../../CONTRIBUTING.rst:164 62c234c473324a82a1038d3f4610a338
|
||
msgid "Unit tests"
|
||
msgstr "Tests unitaires"
|
||
|
||
#: ../../CONTRIBUTING.rst:166 314f0cc4c01c47f4bca6c87e7460b03b
|
||
msgid ""
|
||
"To run the tests, you just can run `uv run pytest` and/or `uv run tox` to "
|
||
"test all the supported python environments. Everything must be green before "
|
||
"patches get merged."
|
||
msgstr ""
|
||
"Pour exécuter les tests, vous pouvez simplement lancer la commande `uv run "
|
||
"pytest`et/ou `uv run tox`pour tester tous les environnements Python "
|
||
"supportés. Tout doit être au vert avant que les contributions soient "
|
||
"fusionnées."
|
||
|
||
#: ../../CONTRIBUTING.rst:169 b9dc93b982bf4fc98eddf47c5730b09c
|
||
msgid ""
|
||
"To test a specific backend you can pass ``--backend memory``, ``--backend "
|
||
"sql`` or ``--backend ldap`` to pytest and tox."
|
||
msgstr ""
|
||
"Pour tester une base de données en particulier, vous pouvez passer les "
|
||
"argumentes ``--backend memory``, ``--backend sql`` ou ``--backend ldap`` à "
|
||
"pytest et tox."
|
||
|
||
#: ../../CONTRIBUTING.rst:171 13c7913d62db412bb4e66637a79cd789
|
||
msgid ""
|
||
"The test coverage is 100%, patches won't be accepted if not entirely "
|
||
"covered. You can check the test coverage with ``uv run pytest --cov --cov-"
|
||
"report=html`` or ``uv run tox -e coverage -- --cov-report=html``. You can "
|
||
"check the HTML coverage report in the newly created `htmlcov` directory."
|
||
msgstr ""
|
||
"La couverture de code est de 100%, les contributions ne seront acceptées que "
|
||
"si leur code est entièrement couvert. Vous pouvez vérifier la couverture "
|
||
"avec ``uv run pytest --cov --cov-report=html``ou ``uv run tox -e coverage -- "
|
||
"--cov-report=html`. Vous pouvez ensuite consulter le rapport de couverture "
|
||
"HTML dans le dossier `htmlcov` nouvellement créé."
|
||
|
||
#: ../../CONTRIBUTING.rst:176 6a901706012a4004b1dbb87ef68c803a
|
||
msgid "Code style"
|
||
msgstr "Style de code"
|
||
|
||
#: ../../CONTRIBUTING.rst:178 9fa3a042eca848fe9b9af832c325142c
|
||
msgid ""
|
||
"We use `ruff <https://docs.astral.sh/ruff/>`_ along with other tools to "
|
||
"format our code. Please run ``uv run tox -e style`` on your patches before "
|
||
"submitting them. In order to perform a style check and correction at each "
|
||
"commit you can use our `pre-commit <https://pre-commit.com/>`_ configuration "
|
||
"with ``uv run pre-commit install``."
|
||
msgstr ""
|
||
"Canaille utilise `ruff <https://docs.astral.sh/ruff/>`_ ainsi que d’autres "
|
||
"outils pour formater le code. Veuillez exécuter ``uv run tox -e style`` "
|
||
"avant de soumettre une contribution. Afin d’effectuer les vérifications de "
|
||
"style à chaque commit, vous pouvez utiliser la configuration `pre-commit "
|
||
"<https://pre-commit.com/>`_ avec ``uv run pre-commit install``."
|
||
|
||
#: ../../CONTRIBUTING.rst:184 831a60fcf8ee4e37828421e71b2931c0
|
||
msgid "Front"
|
||
msgstr "Interface utilisateur"
|
||
|
||
#: ../../CONTRIBUTING.rst:186 f9ab478278ef4d39bee37c056fb937f2
|
||
msgid ""
|
||
"The interface is built upon the `Fomantic UI <https://fomantic-ui.com/>`_ "
|
||
"CSS framework. The dynamical parts of the interface use `htmx <https://htmx."
|
||
"org/>`_."
|
||
msgstr ""
|
||
"L’interface utilisateur est construite avec `Fomantic UI <https://fomantic-"
|
||
"ui.com/>`_. Les parties dynamiques utilisent `HTMX <https://htmx.org/>`_."
|
||
|
||
#: ../../CONTRIBUTING.rst:189 115550e00eb74a80828b6acae2948606
|
||
msgid ""
|
||
"Using Javascript in the interface is tolerated, but the whole website MUST "
|
||
"be accessible for browsers without Javascript support, and without any "
|
||
"feature loss."
|
||
msgstr ""
|
||
"L’utilisation de Javascript dans l’interface est tolérée, mais l’ensemble de "
|
||
"l’application DOIT pouvoir être utilisé par des navigateurs sans support "
|
||
"Javascript, et sans perte de fonctionnalité."
|
||
|
||
#: ../../CONTRIBUTING.rst:191 4d3ab5a48a9d49a6aaef6c5c583e938d
|
||
msgid ""
|
||
"Because of Fomantic UI we have a dependency to jQuery, however new "
|
||
"contributions should not depend on jQuery at all. See the `related issue "
|
||
"<https://gitlab.com/yaal/canaille/-/issues/130>`_."
|
||
msgstr ""
|
||
"À cause de Fomantic UI, Canaille a une dépendance vers jQuery, cependant les "
|
||
"nouvelles contributions ne devraient pas utiliser jQuery. Lisez le `ticket à "
|
||
"ce sujet<https://gitlab.com/yaal/canaille/-/issues/130>`_."
|
||
|
||
#: ../index.rst:71 ../../CONTRIBUTING.rst:196 03d0d76bba134693bed77e50d1911dd9
|
||
#: 84410d2758484c01b8b48461c40d0a7c
|
||
msgid "Documentation"
|
||
msgstr "Documentation"
|
||
|
||
#: ../../CONTRIBUTING.rst:198 5eb4ba179d0444fd9647504055935495
|
||
msgid "The documentation is generated when the tests run:"
|
||
msgstr "La documentation est générée lors de l’exécution des tests :"
|
||
|
||
#: ../../CONTRIBUTING.rst:204 7f28cb743dcb44d9b66a31febcc8a6d0
|
||
msgid ""
|
||
"You can also run sphinx by hand, that should be faster since it avoids the "
|
||
"tox environment initialization:"
|
||
msgstr ""
|
||
"Vous pouvez aussi exécuter `sphinx` à la main, cela devrait être plus rapide "
|
||
"puisque cela évite l’initialisation des environnements tox :"
|
||
|
||
#: ../../CONTRIBUTING.rst:210 4e73e6c26d164591bd5edf84fc921cc4
|
||
msgid "The generated documentation is located at ``build/sphinx/html/en``."
|
||
msgstr "La documentation générée se situe à ``build/sphinx/html/en``."
|
||
|
||
#: ../../CONTRIBUTING.rst:213 3fd3b7e2ec184cf8b2a81f87177f48fb
|
||
msgid "Code translation"
|
||
msgstr "Traduction du code"
|
||
|
||
#: ../../canaille/translations/README.rst:1 3f134d116261469d8e6e9a05b5c47b47
|
||
msgid ""
|
||
"Translations are done with `Weblate <https://hosted.weblate.org/projects/"
|
||
"canaille/canaille>`__."
|
||
msgstr ""
|
||
"Les traductions s’effectuent sur `Weblate <https://hosted.weblate.org/"
|
||
"projects/canaille/canaille>`_."
|
||
|
||
#: ../../canaille/translations/README.rst:3 f5045b02a67f426188352a5d6ff207e1
|
||
msgid ""
|
||
"The following commands are there as documentation, only the message "
|
||
"extraction is needed for contributors. All the other steps are automatically "
|
||
"done with Weblate."
|
||
msgstr ""
|
||
"Les commandes suivantes sont présentées à titre de documentation, seule "
|
||
"l’extraction des messages est utile aux contributeurs. Toutes les autres "
|
||
"étapes sont effectuées automatiquement par Weblate."
|
||
|
||
#: readme.rst:6 ../../canaille/translations/README.rst:8
|
||
#: 24b270040aba498184edc6fd3b60c94e 2056f7130ccd40b7b3b34c0c572a6578
|
||
#: 41a918a2d4a74a5b9b2817c613ca08f4
|
||
msgid "Message extraction"
|
||
msgstr "Extraction des messages"
|
||
|
||
#: readme.rst:8 ../../canaille/translations/README.rst:10
|
||
#: 3d0d46dbb4b849429d1b20c8d4655b71 ca03937bab89437aaca273df6d905a44
|
||
#: 5743021622e04712918dcadbabc6c7f7
|
||
msgid ""
|
||
"After you have edited translatable strings, you should extract the messages "
|
||
"with:"
|
||
msgstr ""
|
||
"Après avoir édité des chaînes de caractères traductibles, vous pouvez "
|
||
"extraire les messages avec :"
|
||
|
||
#: readme.rst:15 ../../canaille/translations/README.rst:17
|
||
#: 33a52dea69f84cdd8031217438609b01 1bdb41af37fb4b29970caa32ceb9f68e
|
||
#: fcdbb11edc8c403dba19ddcc30f0c74a
|
||
msgid "Language addition"
|
||
msgstr "Ajout de langues"
|
||
|
||
#: readme.rst:17 ../../canaille/translations/README.rst:19
|
||
#: 85155247ccbe4cdda3c379b515fd2413 04039c23ea56483b9ccf96d20f26f2bd
|
||
#: ba0855443a6f465d9274426f59f251de
|
||
msgid ""
|
||
"You can add a new language manually with the following command, however this "
|
||
"should not be needed as Weblate takes car of this:"
|
||
msgstr ""
|
||
"Vous pouvez ajouter une nouvelle langue manuellement avec la commande "
|
||
"suivante, cependant cela ne devrait pas être nécessaire puisque Weblate s'en "
|
||
"occupe automatiquement :"
|
||
|
||
#: ../../canaille/translations/README.rst:26 d186ca49fae24bbd9d3c28120601a60e
|
||
msgid "Catalog update"
|
||
msgstr "Mise à jour des catalogues"
|
||
|
||
#: ../../canaille/translations/README.rst:28 0ed1087f30a74059b6c7e0e06de6573d
|
||
msgid ""
|
||
"You can update the catalogs with the following command, however this should "
|
||
"not be needed as Weblate automatically update language catalogs when it "
|
||
"detects new strings or when someone translate some existing strings. Weblate "
|
||
"pushes happen every 24h."
|
||
msgstr ""
|
||
"Vous pouvez mettre à jour les catalogues avec la commande suivante, "
|
||
"cependant cela ne devrait pas être nécessaire puisque Weblate met à jour "
|
||
"automatiquement les catalogues lorsqu’il détecte de nouvelles chaînes de "
|
||
"caractères ou lorsque quelqu’un traduit des chaînes de caractères "
|
||
"existantes. Weblate pousse ses modifications toutes les 24 heures."
|
||
|
||
#: ../../canaille/translations/README.rst:36 ddf0e21cf51b4dc79d6250343d97b0d1
|
||
msgid "Catalog compilation"
|
||
msgstr "Compilation des catalogues"
|
||
|
||
#: ../../canaille/translations/README.rst:38 6ef8340ccc2c46ea99f8d0de91ee483a
|
||
msgid ""
|
||
"You can compile the catalogs with the following command, however this should "
|
||
"not be needed as catalogs are automatically compiled before running the unit "
|
||
"tests, before launching the demo and before compiling the Canaille python "
|
||
"package:"
|
||
msgstr ""
|
||
"Vous pouvez compiler les catalogues avec la commande suivante, cependant "
|
||
"cela ne devrait pas être nécessaire puisque les catalogues sont "
|
||
"automatiquement compilés avant le lancement des tests unitaires, avant le "
|
||
"lancement de l’instance de démonstration et avant la compilation du paquet "
|
||
"Python de Canaille :"
|
||
|
||
#: ../../CONTRIBUTING.rst:219 1de2a285415949c49cad5e827186884c
|
||
msgid "Documentation translation"
|
||
msgstr "Traduction de la documentation"
|
||
|
||
#: readme.rst:1 3f134d116261469d8e6e9a05b5c47b47
|
||
#: 82307c31bbd04c86b438e8a4e005cbfd
|
||
msgid ""
|
||
"Translations are done with `Weblate <https://hosted.weblate.org/projects/"
|
||
"canaille/documentation>`__."
|
||
msgstr ""
|
||
"Les traductions s’effectuent sur `Weblate <https://hosted.weblate.org/"
|
||
"projects/canaille/documentation>`__."
|
||
|
||
#: readme.rst:3 e68bab4e55074d099971067e8585e7bc
|
||
#: 36d72bb59c6442f0ac0078ec35cff7db
|
||
msgid ""
|
||
"The following commands are there as documentation, only the message "
|
||
"extraction and the language addition is needed for contributors."
|
||
msgstr ""
|
||
"Les commandes suivantes sont montrées à titre de documentation, seules "
|
||
"l’extraction de message et l’ajout de langues de traduction sont utiles aux "
|
||
"contributeurs."
|
||
|
||
#: readme.rst:24 2249c8bd3ebb4123b1b85e55d501a414
|
||
#: 592956cc63d849ad8f23d530a03daa2a
|
||
msgid "Build the documentation in another language"
|
||
msgstr "Construire la documentation dans une autre langue"
|
||
|
||
#: ../../CONTRIBUTING.rst:224 ccb55b67aa5c4d8baf4a4a56eb19fe8c
|
||
msgid "Publish a new release"
|
||
msgstr "Publier une nouvelle version"
|
||
|
||
#: ../../CONTRIBUTING.rst:226 a2df8944754246d4a92c6e7f76b8273a
|
||
msgid ""
|
||
"Check that dependencies are up to date with ``uv sync --all-extras --"
|
||
"upgrade`` and update dependencies accordingly in separated commits;"
|
||
msgstr ""
|
||
"Vérifiez que les dépendances sont à jour avec ``uv sync --all-extras --"
|
||
"upgrade`` et mettez à jour chaque dépendance dans un commit séparé ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:227 4d2be841e11345a7a9f62a7f7e0d46b3
|
||
msgid ""
|
||
"Check that tests are still green for every supported python version, and "
|
||
"that coverage is still at 100%, by running ``uv run tox``;"
|
||
msgstr ""
|
||
"Vérifiez que les tests sont toujours verts pour chaque version supportée de "
|
||
"Python, et que la couverture de code est toujours de 100%, en lançant ``uv "
|
||
"run tox`` ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:228 69338c8be69e45659eada1ffe5c0f67c
|
||
msgid ""
|
||
"Check that the demo environments are still working, both the local and the "
|
||
"Docker one;"
|
||
msgstr ""
|
||
"Vérifiez que les instances de démonstration sont toujours fonctionnelles, à "
|
||
"la fois en local et avec Docker ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:229 8bba3fab5e164ade8916c47fb38a9c19
|
||
msgid ""
|
||
"Check that the :ref:`development/changelog:Release notes` section is "
|
||
"correctly filled up;"
|
||
msgstr ""
|
||
"Vérifiez que les :ref:`development/changelog:notes de versioin` sont "
|
||
"correctement renseignées ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:230 7be3604476174714a93fb5c8673febf7
|
||
msgid "Increase the version number in ``pyproject.toml``;"
|
||
msgstr "Incrémentez le numéro de version dans ``pyproject.toml`` ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:231 e8b5c52d84d94d809eb6fd08e9a61939
|
||
msgid "Commit with ``git commit``;"
|
||
msgstr "Commitez avec ``git commit`` ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:232 70de3f18c0d144c8b5e6ad264629491e
|
||
msgid "Build with ``uv build``;"
|
||
msgstr "Construisez le paquet avec ``uv build`` ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:233 54bbdc2762b14df98894d94d760597b9
|
||
msgid ""
|
||
"Publish on test PyPI with ``uv publish --publish-url https://test.pypi.org/"
|
||
"legacy/``;"
|
||
msgstr ""
|
||
"Publiez le paquet sur l’instance de test de PyPI avec ``uv publish --publish-"
|
||
"url https://test.pypi.org/legacy/`` ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:234 327a4abb66b14f95821cf861312ff6be
|
||
msgid ""
|
||
"Install the test package somewhere with ``pip install --extra-index-url "
|
||
"https://test.pypi.org/simple --upgrade canaille``. Check that everything "
|
||
"looks fine;"
|
||
msgstr ""
|
||
"Installez le paquet dans un projet quelconque avec ``pip install --extra-"
|
||
"index-url https://test.pypi.org/simple --upgrade canaille``. Vérifiez que "
|
||
"l’installation s’est bien passée ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:235 270ce1780553422780cddbbca1791bbd
|
||
msgid "Publish on production PyPI ``uv publish``;"
|
||
msgstr "Publiez sur l’instance de production de PyPI avec ``uv publish`` ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:236 35cf31b173f34bb2b6ffc0d5cb0931a9
|
||
msgid "Tag the commit with ``git tag XX.YY.ZZ``;"
|
||
msgstr "Étiquetez le commit avec ``git tag XX.YY.ZZ`` ;"
|
||
|
||
#: ../../CONTRIBUTING.rst:237 673bf114db3945dbbe806b281a6bc1d6
|
||
msgid ""
|
||
"Push the release commit and the new tag on the repository with ``git push --"
|
||
"tags``."
|
||
msgstr ""
|
||
"Poussez le commit de publication avec la nouvelle étiquette avec ``git push "
|
||
"--tags``."
|
||
|
||
#: ../development/index.rst:2 82f9846032eb48449059b9b21039acf3
|
||
msgid "Development"
|
||
msgstr "Développement"
|
||
|
||
#: ../development/specifications.rst:2 68b9e4a665f74983994ec7f7820a6555
|
||
msgid "Specifications"
|
||
msgstr "Normes"
|
||
|
||
#: ../development/specifications.rst:4 a91f12df80654d7a9159894525f0a1fa
|
||
msgid ""
|
||
"This page details which specifications are implemented in Canaille, and "
|
||
"compares Canaille with other well-known identity providers."
|
||
msgstr ""
|
||
"Cette page détaille les spécifications implémentées dans Canaille, et "
|
||
"compare Canaille avec d’autres serveurs d’identité renommés."
|
||
|
||
#: ../development/specifications.rst:7 798ff9024fa049a5889c4e9f725985f4
|
||
msgid "State of the specs in Canaille"
|
||
msgstr "L’état des spécifications dans Canaille"
|
||
|
||
#: ../development/specifications.rst:10 faec5be28e9d4a0380914450cb563d74
|
||
msgid "OAuth2"
|
||
msgstr "OAuth2"
|
||
|
||
#: ../development/specifications.rst:12 bc158a2abfdf4e669db0bf71ac12e539
|
||
msgid ""
|
||
"✅ `RFC6749: OAuth 2.0 Framework <https://tools.ietf.org/html/rfc6749>`_"
|
||
msgstr ""
|
||
"✅ `RFC6749: OAuth 2.0 Framework <https://tools.ietf.org/html/rfc6749>`_"
|
||
|
||
#: ../development/specifications.rst:13 41aacf25a278469488576916b0dc1100
|
||
msgid ""
|
||
"✅ `RFC6750: OAuth 2.0 Bearer Tokens <https://tools.ietf.org/html/rfc6750>`_"
|
||
msgstr ""
|
||
"✅ `RFC6750: OAuth 2.0 Bearer Tokens <https://tools.ietf.org/html/rfc6750>`_"
|
||
|
||
#: ../development/specifications.rst:14 c84b09e12da74d1e9bb498f4abd41cef
|
||
msgid ""
|
||
"✅ `RFC7009: OAuth 2.0 Token Revocation <https://tools.ietf.org/html/"
|
||
"rfc7009>`_"
|
||
msgstr ""
|
||
"✅ `RFC7009: OAuth 2.0 Token Revocation <https://tools.ietf.org/html/"
|
||
"rfc7009>`_"
|
||
|
||
#: ../development/specifications.rst:15 319878f12ee94c71bcd20839b8e9cdf2
|
||
msgid ""
|
||
"❌ `RFC7523: JWT Profile for OAuth 2.0 Client Authentication and "
|
||
"Authorization Grants <https://tools.ietf.org/html/rfc7523>`_"
|
||
msgstr ""
|
||
"❌ `RFC7523: JWT Profile for OAuth 2.0 Client Authentication and "
|
||
"Authorization Grants <https://tools.ietf.org/html/rfc7523>`_"
|
||
|
||
#: ../development/specifications.rst:16 7c8c430d14b04548a82b1f6c5b41edef
|
||
msgid ""
|
||
"✅ `RFC7591: OAuth 2.0 Dynamic Client Registration Protocol <https://tools."
|
||
"ietf.org/html/rfc7591>`_"
|
||
msgstr ""
|
||
"✅ `RFC7591: OAuth 2.0 Dynamic Client Registration Protocol <https://tools."
|
||
"ietf.org/html/rfc7591>`_"
|
||
|
||
#: ../development/specifications.rst:17 a0eeca49247d4d0a858fbd68b8feae7a
|
||
msgid ""
|
||
"✅ `RFC7592: OAuth 2.0 Dynamic Client Registration Management Protocol "
|
||
"<https://tools.ietf.org/html/rfc7592>`_"
|
||
msgstr ""
|
||
"✅ `RFC7592: OAuth 2.0 Dynamic Client Registration Management Protocol "
|
||
"<https://tools.ietf.org/html/rfc7592>`_"
|
||
|
||
#: ../development/specifications.rst:18 6ba8732c85c743c3ac3f63b40fbf3aa2
|
||
msgid ""
|
||
"✅ `RFC7636: Proof Key for Code Exchange by OAuth Public Clients <https://"
|
||
"tools.ietf.org/html/rfc7636>`_"
|
||
msgstr ""
|
||
"✅ `RFC7636: Proof Key for Code Exchange by OAuth Public Clients <https://"
|
||
"tools.ietf.org/html/rfc7636>`_"
|
||
|
||
#: ../development/specifications.rst:19 338bb06b2df547edbe50a150b4d8c146
|
||
msgid ""
|
||
"✅ `RFC7662: OAuth 2.0 Token Introspection <https://tools.ietf.org/html/"
|
||
"rfc7662>`_"
|
||
msgstr ""
|
||
"✅ `RFC7662: OAuth 2.0 Token Introspection <https://tools.ietf.org/html/"
|
||
"rfc7662>`_"
|
||
|
||
#: ../development/specifications.rst:20 1663509c8aa249af8ec326ae877e7044
|
||
msgid ""
|
||
"✅ `RFC8414: OAuth 2.0 Authorization Server Metadata <https://tools.ietf.org/"
|
||
"html/rfc8414>`_"
|
||
msgstr ""
|
||
"✅ `RFC8414: OAuth 2.0 Authorization Server Metadata <https://tools.ietf.org/"
|
||
"html/rfc8414>`_"
|
||
|
||
#: ../development/specifications.rst:21 37a881c253ff4c87b340587a85546041
|
||
msgid ""
|
||
"❌ `RFC8428: OAuth 2.0 Device Authorization Grant <https://tools.ietf.org/"
|
||
"html/rfc8428>`_"
|
||
msgstr ""
|
||
"❌ `RFC8428: OAuth 2.0 Device Authorization Grant <https://tools.ietf.org/"
|
||
"html/rfc8428>`_"
|
||
|
||
#: ../development/specifications.rst:22 5398a841990f4e6ea8b40b97e9a32097
|
||
msgid ""
|
||
"❌ `RFC8693: OAuth 2.0 Token Exchange <https://tools.ietf.org/html/rfc8693>`_"
|
||
msgstr ""
|
||
"❌ `RFC8693: OAuth 2.0 Token Exchange <https://tools.ietf.org/html/rfc8693>`_"
|
||
|
||
#: ../development/specifications.rst:23 2045b4c2c1bf4d808e03894e4b365fb8
|
||
msgid ""
|
||
"❌ `RFC8705: OAuth 2.0 Mutual-TLS Client Authentication and Certificate-"
|
||
"Bound Access Tokens <https://tools.ietf.org/html/rfc8705>`_"
|
||
msgstr ""
|
||
"❌ `RFC8705: OAuth 2.0 Mutual-TLS Client Authentication and Certificate-"
|
||
"Bound Access Tokens <https://tools.ietf.org/html/rfc8705>`_"
|
||
|
||
#: ../development/specifications.rst:24 107a0959842641af8fa7f1382928f2e1
|
||
msgid ""
|
||
"❌ `RFC8707: Resource Indicators for OAuth 2.0 <https://tools.ietf.org/html/"
|
||
"rfc8707>`_"
|
||
msgstr ""
|
||
"❌ `RFC8707: Resource Indicators for OAuth 2.0 <https://tools.ietf.org/html/"
|
||
"rfc8707>`_"
|
||
|
||
#: ../development/specifications.rst:25 b6b8eaed434f47bfb07f5d077c670b22
|
||
msgid ""
|
||
"❌ `RFC9068: JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens "
|
||
"<https://tools.ietf.org/html/rfc9068>`_"
|
||
msgstr ""
|
||
"❌ `RFC9068: JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens "
|
||
"<https://tools.ietf.org/html/rfc9068>`_"
|
||
|
||
#: ../development/specifications.rst:26 48f411a150274d74b09dd3111d70d4ef
|
||
msgid ""
|
||
"❌ `RFC9101: OAuth 2.0 JWT-Secured Authorization Request (JAR) <https://"
|
||
"tools.ietf.org/html/rfc9101>`_"
|
||
msgstr ""
|
||
"❌ `RFC9101: OAuth 2.0 JWT-Secured Authorization Request (JAR) <https://"
|
||
"tools.ietf.org/html/rfc9101>`_"
|
||
|
||
#: ../development/specifications.rst:27 68ff3ad36aa1400e85a6f6703f5d75ae
|
||
msgid ""
|
||
"❌ `RFC9126: OAuth 2.0 Pushed Authorization Requests <https://tools.ietf.org/"
|
||
"html/rfc9126>`_"
|
||
msgstr ""
|
||
"❌ `RFC9126: OAuth 2.0 Pushed Authorization Requests <https://tools.ietf.org/"
|
||
"html/rfc9126>`_"
|
||
|
||
#: ../development/specifications.rst:28 312945002b5f49a5ac6e6d797e9322d0
|
||
msgid ""
|
||
"❌ `RFC9207: OAuth 2.0 Authorization Server Issuer Identification <https://"
|
||
"tools.ietf.org/html/rfc9207>`_"
|
||
msgstr ""
|
||
"❌ `RFC9207: OAuth 2.0 Authorization Server Issuer Identification <https://"
|
||
"tools.ietf.org/html/rfc9207>`_"
|
||
|
||
#: ../development/specifications.rst:29 6f0f83d947a3442c84f44b67f11184b3
|
||
msgid ""
|
||
"❌ `RFC9394: OAuth 2.0 Rich Authorization Requests <https://www.rfc-editor."
|
||
"org/rfc/rfc9396.html>`_"
|
||
msgstr ""
|
||
"❌ `RFC9394: OAuth 2.0 Rich Authorization Requests <https://www.rfc-editor."
|
||
"org/rfc/rfc9396.html>`_"
|
||
|
||
#: ../development/specifications.rst:30 f11bf858bc1342a781c9139f05938eae
|
||
msgid ""
|
||
"❌ `OAuth2 Multiple Response Types <https://openid.net/specs/oauth-v2-"
|
||
"multiple-response-types-1_0.html>`_"
|
||
msgstr ""
|
||
"❌ `OAuth2 Multiple Response Types <https://openid.net/specs/oauth-v2-"
|
||
"multiple-response-types-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:31 d2e5d74b4dd94d85a5d431f60f875dbc
|
||
msgid ""
|
||
"❌ `OAuth2 Form Post Response Mode <https://openid.net/specs/oauth-v2-form-"
|
||
"post-response-mode-1_0.html>`_"
|
||
msgstr ""
|
||
"❌ `OAuth2 Form Post Response Mode <https://openid.net/specs/oauth-v2-form-"
|
||
"post-response-mode-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:34 ../features.rst:212
|
||
#: 8f72523ff51c4575b94efb2d3ce15f6b f36365f798bf4a29a1c762d3d984b773
|
||
msgid "OpenID Connect"
|
||
msgstr "OpenID Connect"
|
||
|
||
#: ../development/specifications.rst:36 cf8887ca156c4c1c9888a84fc8065530
|
||
msgid ""
|
||
"✅ `OpenID Connect Core <https://openid.net/specs/openid-connect-core-1_0."
|
||
"html>`_"
|
||
msgstr ""
|
||
"✅ `OpenID Connect Core <https://openid.net/specs/openid-connect-core-1_0."
|
||
"html>`_"
|
||
|
||
#: ../development/specifications.rst:37 5c4310f0f040430fbc2a843183e96fd8
|
||
msgid ""
|
||
"✅ `OpenID Connect Discovery <https://openid.net/specs/openid-connect-"
|
||
"discovery-1_0.html>`_"
|
||
msgstr ""
|
||
"✅ `OpenID Connect Discovery <https://openid.net/specs/openid-connect-"
|
||
"discovery-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:38 5d5801df6b9c4bf4a6a02e97b8ced460
|
||
msgid ""
|
||
"✅ `OpenID Connect Dynamic Client Registration <https://openid.net/specs/"
|
||
"openid-connect-registration-1_0.html>`_"
|
||
msgstr ""
|
||
"✅ `OpenID Connect Dynamic Client Registration <https://openid.net/specs/"
|
||
"openid-connect-registration-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:39 7d48e73edb044c8e85e6210edc4c327b
|
||
msgid ""
|
||
"✅ `OpenID Connect RP Initiated Logout <https://openid.net/specs/openid-"
|
||
"connect-rpinitiated-1_0.html>`_"
|
||
msgstr ""
|
||
"✅ `OpenID Connect RP Initiated Logout <https://openid.net/specs/openid-"
|
||
"connect-rpinitiated-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:40 cdef4546f7dc4de8865f7a1302d4ba5d
|
||
msgid ""
|
||
"❌ `OpenID Connect Session Management <https://openid.net/specs/openid-"
|
||
"connect-session-1_0.html>`_"
|
||
msgstr ""
|
||
"❌ `OpenID Connect Session Management <https://openid.net/specs/openid-"
|
||
"connect-session-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:41 21aa2648b1f64ffeabe2a6123a75c27d
|
||
msgid ""
|
||
"❌ `OpenID Connect Front Channel Logout <https://openid.net/specs/openid-"
|
||
"connect-frontchannel-1_0.html>`_"
|
||
msgstr ""
|
||
"❌ `OpenID Connect Front Channel Logout <https://openid.net/specs/openid-"
|
||
"connect-frontchannel-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:42 dac849b7b0ae48afb3e07330a4155e85
|
||
msgid ""
|
||
"❌ `OpenID Connect Back Channel Logout <https://openid.net/specs/openid-"
|
||
"connect-backchannel-1_0.html>`_"
|
||
msgstr ""
|
||
"❌ `OpenID Connect Back Channel Logout <https://openid.net/specs/openid-"
|
||
"connect-backchannel-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:43 9465d51e2c23461486052de55942bbea
|
||
msgid ""
|
||
"❌ `OpenID Connect Back Channel Authentication Flow <https://openid.net/"
|
||
"specs/openid-client-initiated-backchannel-authentication-core-1_0.html>`_"
|
||
msgstr ""
|
||
"❌ `OpenID Connect Back Channel Authentication Flow <https://openid.net/"
|
||
"specs/openid-client-initiated-backchannel-authentication-core-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:44 b4f2991cded34e7190e7e7185828536c
|
||
msgid ""
|
||
"❌ `OpenID Connect Core Error Code unmet_authentication_requirements "
|
||
"<https://openid.net/specs/openid-connect-unmet-authentication-"
|
||
"requirements-1_0.html>`_"
|
||
msgstr ""
|
||
"❌ `OpenID Connect Core Error Code unmet_authentication_requirements "
|
||
"<https://openid.net/specs/openid-connect-unmet-authentication-"
|
||
"requirements-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:45 1cb0fe5d644c49b2a1c6c7af780c407a
|
||
msgid ""
|
||
"✅ `Initiating User Registration via OpenID Connect 1.0 <https://openid.net/"
|
||
"specs/openid-connect-prompt-create-1_0.html>`_"
|
||
msgstr ""
|
||
"✅ `Initiating User Registration via OpenID Connect 1.0 <https://openid.net/"
|
||
"specs/openid-connect-prompt-create-1_0.html>`_"
|
||
|
||
#: ../development/specifications.rst:48 ../development/specifications.rst:64
|
||
#: 81a42181f7ed4f43b5fc6af1bae15e65 15e8049b1557446680584e87930c2dc5
|
||
msgid "SCIM"
|
||
msgstr "SCIM"
|
||
|
||
#: ../development/specifications.rst:50 aefb1b937f7a4e35a4eae6d8648c6303
|
||
msgid ""
|
||
"❌ `RFC7642: System for Cross-domain Identity Management: Definitions, "
|
||
"Overview, Concepts, and Requirements <https://www.rfc-editor.org/rfc/"
|
||
"rfc7642>`_"
|
||
msgstr ""
|
||
"❌ `RFC7642: System for Cross-domain Identity Management: Definitions, "
|
||
"Overview, Concepts, and Requirements <https://www.rfc-editor.org/rfc/"
|
||
"rfc7642>`_"
|
||
|
||
#: ../development/specifications.rst:51 6193cd6fb48643e99f0e2018dbdaba83
|
||
msgid ""
|
||
"❌ `RFC7643: System for Cross-domain Identity Management: Core Schema "
|
||
"<https://www.rfc-editor.org/rfc/rfc7642>`_"
|
||
msgstr ""
|
||
"❌ `RFC7643: System for Cross-domain Identity Management: Core Schema "
|
||
"<https://www.rfc-editor.org/rfc/rfc7642>`_"
|
||
|
||
#: ../development/specifications.rst:52 9b124b409b3041f5bdefedf9b0593d06
|
||
msgid ""
|
||
"❌ `RFC7644: System for Cross-domain Identity Management: Protocol <https://"
|
||
"www.rfc-editor.org/rfc/rfc7642>`_"
|
||
msgstr ""
|
||
"❌ `RFC7644: System for Cross-domain Identity Management: Protocol <https://"
|
||
"www.rfc-editor.org/rfc/rfc7642>`_"
|
||
|
||
#: ../development/specifications.rst:55 efa9edcb4c094b339af9010d82b9f505
|
||
msgid "Comparison with other providers"
|
||
msgstr "Comparaison avec d’autres serveurs d’identité"
|
||
|
||
#: ../development/specifications.rst:57 cb82439c48684c8d919147a88247f36f
|
||
msgid "Here is a feature comparison with other OpenID Connect server software."
|
||
msgstr ""
|
||
"Voici une comparaison de fonctionnalités avec d’autres serveurs d’identité."
|
||
|
||
#: ../development/specifications.rst:59 47f5af9436b14ce8afaae2e08adceb8d
|
||
msgid ""
|
||
"Canaille voluntarily only implements the OpenID Connect protocol to keep its "
|
||
"codebase simple."
|
||
msgstr ""
|
||
"Afin de garder la base de code réduite, Canaille n’implémente que le "
|
||
"protocole OpenID Connect."
|
||
|
||
#: ../development/specifications.rst:62 230957da07d14930aac58e75241f769b
|
||
msgid "Software"
|
||
msgstr "Logiciel"
|
||
|
||
#: ../development/specifications.rst:62 1e53a394ee3f4824ac843953a1c6f6a4
|
||
msgid "Project"
|
||
msgstr "Projet"
|
||
|
||
#: ../development/specifications.rst:62 da7a2a26dbfb494abca9e21b3178087e
|
||
msgid "Protocols implementations"
|
||
msgstr "Protocoles implémentés"
|
||
|
||
#: ../development/specifications.rst:64 54e482c6722046fc9cad9abdf6501ebf
|
||
msgid "FLOSS"
|
||
msgstr "Libre"
|
||
|
||
#: ../development/specifications.rst:64 27466fe335f14fc58651275455bc3b85
|
||
msgid "Language"
|
||
msgstr "Langage"
|
||
|
||
#: ../development/specifications.rst:64 a62b0ccd1e3642f1922043446575891c
|
||
msgid "LOC"
|
||
msgstr "LOC"
|
||
|
||
#: ../development/specifications.rst:64 8a0ae563aeb34a48afdd436dfb90bdfb
|
||
msgid "OIDC"
|
||
msgstr "OIDC"
|
||
|
||
#: ../development/specifications.rst:64 988a35af2eef476299eb83b8ae5a3849
|
||
msgid "SAML"
|
||
msgstr "SAML"
|
||
|
||
#: ../development/specifications.rst:64 32c77efb6cff4149868aa5ae1ea6e9d4
|
||
msgid "CAS"
|
||
msgstr "CAS"
|
||
|
||
#: ../development/specifications.rst:66 f48994303e73429c9073af002d2cbe8b
|
||
msgid "Canaille"
|
||
msgstr "Canaille"
|
||
|
||
#: ../development/specifications.rst:66 ../development/specifications.rst:68
|
||
#: ../development/specifications.rst:70 ../development/specifications.rst:72
|
||
#: ../development/specifications.rst:74 ../development/specifications.rst:76
|
||
#: ../development/specifications.rst:78 ../development/specifications.rst:80
|
||
#: ../development/specifications.rst:82 ../development/specifications.rst:84
|
||
#: ../development/specifications.rst:86 ../development/specifications.rst:88
|
||
#: cecfeb6d9fb7420ca837b206d1d6764c 1bf9058c7b5140cfb942a261bc1d5fb4
|
||
#: f20a686626324145b1062186686d2ee8 1584d21e10ac44db89804752041377c1
|
||
#: c739a882a4924ee6b74aae11f9ac4f70 7921d737ae024139a45a81a95c0de37d
|
||
#: 2081e5cb2e704eca831f4b88c63719a5 3e58cc7801d24e09a5d0ca85b3151d90
|
||
#: d9e49d514c5e4fd5a9c88c87adb60131 531dd2150dbf4e22bb89a9febb4e4d3c
|
||
#: e6161702f7d0483abeb299b2abf7ed01 4384675732a44a5699eadf3db840ea68
|
||
#: f6e2f76646f54a1e835df2a5b32db7af 6ece4298037042d183800662fc6d7730
|
||
#: 386cf18f38064e489e8c88d6d3166e20 a2b336de60474811a85371ac9b8fc936
|
||
#: a0c55d79ed23441b9a2081434bf2ec16 17be8bbb60b9415aa7c928d1c385758a
|
||
#: a5340472ac864f2da34b666cfd10013e 823015fb7cd34ec890b163c25499e88a
|
||
#: f1e4ba474c2545f788b426e174b25269 4d0a5e236e9c4ca68d1b5ff222e6d5b2
|
||
#: 2e6f5a41bc4a4b66a9c8761101baf641 45623bf338bb42e8b4a3f1276d08dbf8
|
||
#: 60459c90052d4c2892d17142e74355b2 b1c9f70c22e54552a662b1e20de0cf11
|
||
#: d993414221d04d9cb7f42e1f1df885f7 5c1d5b1b5b9947169a6512526bf1354c
|
||
#: bca0227caf0541afac9dde2ef357f96a 34d81b7015ef42098eeb90a4c97c7574
|
||
#: 99c49b778a0248848dc909e7e9de6327 ac54e974ffc04684889d2d439f69bfc8
|
||
#: 6a564012257e451b9a5feee09526dff0 646e26dbbb6d4c158ff400b6c7ac4752
|
||
#: 348497e0085840b497537393ccf1232b 594f21bbff0b4d92b9b6b503c064a272
|
||
#: 047de5aa45d14d57a0f7c65c16a25060 374cb94f40a9471e95364d0dca1f9a0c
|
||
#: 726b27f2dcf347c0b5421f3e41bf3dba 3f3124894e83434daf0a6af56c281803
|
||
#: 5a2f5313c9a642a584991f80f54f6e2c 9fc1f509353c4f6cab3f7c3b21883cf6
|
||
#: eea6bc914188401e8e132b973e250a62 4b48b1cbe78d47449fa5bbbd9d7f7ab1
|
||
#: 6a258a1e0e65408d9dbfa2bbd0280e2b 41c352bade1d4f998ccbb014be0700f6
|
||
#: ed5ad7a13d4f410091f42610b879a17a d0d8145310fd4bad961ac397da7f369a
|
||
#: 92e87b99f7a1479aaa8dbca7200356e4 6f79ec5e229a4675b9b9a8c0d2700567
|
||
#: aa6616697ba245eca8c38349d3db5daf cdd868b8d08c488f9f47c95e0acf3f1b
|
||
#: a1cf6631636741719ad05edd1ed1142c b36371c9f8004f0788446980ea23685a
|
||
#: fc2c732457544aeab7c028832e170afd 47f38426ae2d4daf866ba55ca0fb065c
|
||
#: 27dfdf836dc74d26b1347dfa2d96e7b1 764feb42eb4f4c218bc5764f8d1076f3
|
||
#: 9c5315804b3c46b79b68c6a16fa1796f a5c930dccddc4499a5700bf80cd15c53
|
||
#: a80e2f550fd842f3bdf85a6b83f985cd 7a385969942f4c15af443d5fad275e3b
|
||
#: d2a83a7da92c4f599843afcaacff9727
|
||
msgid "✅"
|
||
msgstr "✅"
|
||
|
||
#: ../development/specifications.rst:66 ../development/specifications.rst:72
|
||
#: c38bff66a17c471fabb1344102a537ea 24a7b6b572334fca88cdc4e1a09afb49
|
||
msgid "Python"
|
||
msgstr "Python"
|
||
|
||
#: ../development/specifications.rst:66 2898d3796e7c4b88b8b7a9f519d2fc45
|
||
msgid "10k"
|
||
msgstr "10k"
|
||
|
||
#: ../development/specifications.rst:66 ../development/specifications.rst:68
|
||
#: ../development/specifications.rst:70 ../development/specifications.rst:72
|
||
#: ../development/specifications.rst:74 ../development/specifications.rst:76
|
||
#: ../development/specifications.rst:78 ../development/specifications.rst:82
|
||
#: ../development/specifications.rst:86 ../development/specifications.rst:88
|
||
#: 3a76f65f9cc740a5ac8954efd498ae76 ee8058c9659d4522af86baa0d44521db
|
||
#: 7067b91d5b034b88af327b419fe8ea19 b22fca8933ac4977886c37e5770c959b
|
||
#: 666fb77031f64ed7ae5a5d0b8c6b6550 5b45662d4826451ebdacb465b7d683f8
|
||
#: c6233909a9bc4e3284b963e1fb52a6c3 5fa99110d40b4fbc97e8e758718ced85
|
||
#: cb6c92749e67443fa98487d347f69b6b fd392afb027d4bd283a6e1f097fd9bf3
|
||
#: b42f4f5688f24e4fad61c6ab45d54904 590061afc6414325919082432a939071
|
||
#: bd96709d387a4855b03d79a3a2c4488f d60b6d8859424a948660d0866563a3b2
|
||
#: 45155350fd7c4a4daab67edcc35ed1a0 fff8dea44f12432098ca99ba6d1b5c2e
|
||
#: f7205f328a5147fc9de435ea6cc60941 cc99c8a90acc44c4a0365af86582388d
|
||
#: 358ad064d07f4a12bf2e933b1cb10b01
|
||
msgid "❌"
|
||
msgstr "❌"
|
||
|
||
#: ../development/specifications.rst:68 d9d78032f92a41c7bf30d755415a3cbb
|
||
msgid "`Auth0`_"
|
||
msgstr "`Auth0`_"
|
||
|
||
#: ../development/specifications.rst:68 ../development/specifications.rst:78
|
||
#: ../development/specifications.rst:80 ../development/specifications.rst:88
|
||
#: 517701d2d9ae411db882f60fd1747fd0 672b1686e4dc46048d2ab5b2e8a1898c
|
||
#: cf6d4aa407464d01bfc90dbf3c0cf042 9d875d1cb8164dab82c2e1e6d901a7ab
|
||
#: 3af85fa640dc4120bbc32407a4c1c7bc 9d5d95c8c1c04c69ab16020652349a76
|
||
#: 131d2ad4ffab4b8ca0b06cdcc7c4365f 3e4058105eb742dfb589d273ec4b94c6
|
||
#: 06b3d4362a834f9d831db89cbd8ac961
|
||
msgid "❔"
|
||
msgstr "❔"
|
||
|
||
#: ../development/specifications.rst:70 1682bb5887184cd9bff0b61796d76876
|
||
msgid "`Authelia`_"
|
||
msgstr "`Authelia`_"
|
||
|
||
#: ../development/specifications.rst:70 ../development/specifications.rst:74
|
||
#: ../development/specifications.rst:82 d82982be3ee7475a983ce04e39624c7b
|
||
#: 6ed6387905f44170a97cde7665ca83d5 7a3147d487ba4f96bfc7c7d3af467f57
|
||
msgid "Go"
|
||
msgstr "Go"
|
||
|
||
#: ../development/specifications.rst:70 ../development/specifications.rst:82
|
||
#: 44c24ba16cb6419abd4d3af84403a709 73882f9c7ba44c7ebda0e245b69a5643
|
||
msgid "50k"
|
||
msgstr "50k"
|
||
|
||
#: ../development/specifications.rst:72 9110311d7f6e48b38ba0b32706d706e8
|
||
msgid "`Authentic2`_"
|
||
msgstr "`Authentic2`_"
|
||
|
||
#: ../development/specifications.rst:72 d5b5b77fa7e544278f1e017ebe7b9b73
|
||
msgid "65k"
|
||
msgstr "65k"
|
||
|
||
#: ../development/specifications.rst:74 0f7c8328ceb74a3286d140ea99595441
|
||
msgid "`Authentik`_"
|
||
msgstr "`Authentik`_"
|
||
|
||
#: ../development/specifications.rst:74 9b22f0bb6f364ffba33f4906e6bca29d
|
||
msgid "55k"
|
||
msgstr "55k"
|
||
|
||
#: ../development/specifications.rst:76 935dcdae37fe48a68e5dfb04ab8f64f8
|
||
msgid "`CAS`_"
|
||
msgstr "`CAS`_"
|
||
|
||
#: ../development/specifications.rst:76 ../development/specifications.rst:80
|
||
#: ../development/specifications.rst:84 a9de8918cec743a1a9d325a74233ece4
|
||
#: 02e355d30b3f4867afe0791f475d3894 901209d3a4b74c7184c8360d12864d6a
|
||
msgid "Java"
|
||
msgstr "Java"
|
||
|
||
#: ../development/specifications.rst:76 fd1f63cd853f44e885dd67b3a6094f9a
|
||
msgid "360k"
|
||
msgstr "360k"
|
||
|
||
#: ../development/specifications.rst:78 f10eb07a326744518a2f6b631cb88d15
|
||
msgid "`Connect2id`_"
|
||
msgstr "`Connect2id`_"
|
||
|
||
#: ../development/specifications.rst:80 4c26496dd0e544ef97d8d345c3d9169f
|
||
msgid "`Gluu`_"
|
||
msgstr "`Gluu`_"
|
||
|
||
#: ../development/specifications.rst:82 b505e8661bf24fe287f1fc77d1326ab2
|
||
msgid "`Hydra`_"
|
||
msgstr "`Hydra`_"
|
||
|
||
#: ../development/specifications.rst:84 53abb4819cbf4fb7ad273fa25556814e
|
||
msgid "`Keycloak`_"
|
||
msgstr "`Keycloak`_"
|
||
|
||
#: ../development/specifications.rst:84 5d8e6ef889ba4715986a7a237b753297
|
||
msgid "600k"
|
||
msgstr "600k"
|
||
|
||
#: ../development/specifications.rst:86 30fe26bf61584e29ac73c07d679ba6a5
|
||
msgid "`LemonLDAP`_"
|
||
msgstr "`LemonLDAP`_"
|
||
|
||
#: ../development/specifications.rst:86 12a5b8832f2b4831a41af30522055343
|
||
msgid "Perl"
|
||
msgstr "Perl"
|
||
|
||
#: ../development/specifications.rst:86 42f8e0deef9246a5a4f9a3cb69a5966f
|
||
msgid "130k"
|
||
msgstr "130k"
|
||
|
||
#: ../development/specifications.rst:88 8bcf4b8cde474ff49b0e8bbc96e52986
|
||
msgid "`Okta`_"
|
||
msgstr "`Okta`_"
|
||
|
||
#: ../features.rst:9 f057b88a8b504465b8ed8e332fd5a830
|
||
msgid "Features"
|
||
msgstr "Fonctionnalités"
|
||
|
||
#: ../features.rst:11 ede71f0291474638a54b3c73dbf2e4bf
|
||
msgid ""
|
||
"Here are the different features that Canaille provides. You can enable any "
|
||
"of those features with the :doc:`configuration <references/configuration>` "
|
||
"to fit any :doc:`use cases <usecases>` you may meet. Check our :ref:"
|
||
"`roadmap <features:Roadmap>` to see what is coming next."
|
||
msgstr ""
|
||
"Voici les différentes fonctionnalités que Canaille propose. Vous pouvez "
|
||
"activer n’importe laquelle de ces fonctionnalités avec la :doc:"
|
||
"`configuration <references/configuration>` pour que Canaille s’adapte au :"
|
||
"doc:`cas d’usage <usecases>` que vous rencontrez. Jetez un œil à notre :ref:"
|
||
"`feuille de route <features:Roadmap>` pour savoir ce qui arrive dans le "
|
||
"futur."
|
||
|
||
#: ../features.rst:15 cf814f15959a43cfaa0392cd83755fce
|
||
msgid ""
|
||
"Users can interact with Canaille through its :ref:`web interface <features:"
|
||
"Web interface>` and administrators can also use its :ref:`command line "
|
||
"interface <feature_cli>`. Canaille can handle data stored in different :ref:"
|
||
"`database backends <feature_databases>`."
|
||
msgstr ""
|
||
"Les utilisateurs peuvent interagir avec Canaille grâce à son :ref:`web "
|
||
"interface <features:interface web>` et les administrateurs peuvent aussi "
|
||
"utiliser son :ref:`interface en ligne de commande <feature_cli>`. Canaille "
|
||
"peut enregistrer les données dans différentes :ref:`bases de données "
|
||
"<feature_databases>`."
|
||
|
||
#: ../features.rst:19 02e100abc6e44fe49224f9e4046dc49e
|
||
msgid "User and group management"
|
||
msgstr "Gestion d’utilisateurs et de groupes"
|
||
|
||
#: ../features.rst:21 09d69566150048b4a17d192bfc4d5112
|
||
msgid ""
|
||
"Canaille web interface can be used either in :doc:`production environments "
|
||
"<tutorial/deployment>` or locally for development purposes."
|
||
msgstr ""
|
||
"L'interface web de Canaille web interface peut être utilisé dans des :doc:`"
|
||
"environnements de production <tutorial/deployment>` ou localement pour "
|
||
"permettre les développements."
|
||
|
||
#: ../features.rst:26 ../index.rst:27 4a8e8cfdbaaf4d86a28840ef0939d7d9
|
||
#: 947ce49c0ff9406fb81b5e3cc5329c24
|
||
msgid "Profile management"
|
||
msgstr "Gestion de profil"
|
||
|
||
#: ../features.rst:28 ../features.rst:220 d4de0b07d24e47b9aba16e48ed9cbe27
|
||
#: 542fdff284144a8c805b4824d03d6b76
|
||
msgid "Profile"
|
||
msgstr "Profil"
|
||
|
||
#: ../features.rst:33 c59d37a518514008bc2c6f2c18dd6326
|
||
msgid "Canaille provides an interface to manage user profiles."
|
||
msgstr "Canaille fournit une interface pour gérer les profils utilisateur."
|
||
|
||
#: ../features.rst:35 8b67e3a00af440328b615d2921dc27a6
|
||
msgid ""
|
||
"The exact list of displayed fields, and whether they are :attr:`writable "
|
||
"<canaille.core.configuration.ACLSettings.WRITE>` or :attr:`read-only "
|
||
"<canaille.core.configuration.ACLSettings.READ>` depends on the user :class:"
|
||
"`Access Control List settings (ACL) <canaille.core.configuration."
|
||
"ACLSettings>`."
|
||
msgstr ""
|
||
"La liste exacte des champs affichés ainsi que s'ils sont accessible en "
|
||
":attr:`écriture <canaille.core.configuration.ACLSettings.WRITE>` ou en "
|
||
":attr:`lecture seule <canaille.core.configuration.ACLSettings.READ>` dépend "
|
||
"du paramètre utilisateur :class:`liste de contrôle d'accès (ACL) <canaille."
|
||
"core.configuration.ACLSettings>`."
|
||
|
||
#: ../features.rst:37 eb4ca5b563c44281aefc8d4ad4c549e8
|
||
msgid ""
|
||
"Depending on their ACL :class:`permissions <canaille.core.configuration."
|
||
"Permission>`, users can either be allowed to edit their own profile, edit "
|
||
"any user profile, or do nothing at all."
|
||
msgstr ""
|
||
"Selon les :class:`droits <canaille.core.configuration.Permission>` de leur "
|
||
"liste de contrôle d'accès (ACL) , les utilisateurs peuvent soit modifier "
|
||
"leur profil, modifier le profil de n'importe quel utilisateur ou ne rien "
|
||
"faire du tout."
|
||
|
||
#: ../features.rst:42 e4d34befed5941bab9161eb3c0330fad
|
||
msgid "Email confirmation"
|
||
msgstr "Confirmation de l'e-mail"
|
||
|
||
#: ../features.rst:44 28a9397d838e4ffaaf5c8f8558416355
|
||
msgid ""
|
||
"If the :attr:`email confirmation feature <canaille.core.configuration."
|
||
"CoreSettings.EMAIL_CONFIRMATION>` is enabled, any modification or addition "
|
||
"of a profile email will send a confirmation mail to the new address. The "
|
||
"mail will contain a link that users will need to click on to confirm their "
|
||
"email address."
|
||
msgstr ""
|
||
"Si la :attr:`fonctionnalité de confirmation d'e-mail <canaille.core."
|
||
"configuration.CoreSettings.EMAIL_CONFIRMATION>` est activée, toute "
|
||
"modification ou ajout de profil enverra un e-mail de confirmation à la "
|
||
"nouvelle adresse. L'e-mail contiendra un lien sur lequel l'utilisateur devra "
|
||
"cliquer pour confirmer son adresse."
|
||
|
||
#: ../features.rst:46 d3563178a13d42268ae8a3f0cb15b90f
|
||
msgid ""
|
||
"Users with :attr:`user management permission <canaille.core.configuration."
|
||
"Permission.MANAGE_USERS>` can set user emails without confirmation though."
|
||
msgstr ""
|
||
"Les utilisateurs avec le :attr:`droit de gérer les utilisateurs <canaille."
|
||
"core.configuration.Permission.MANAGE_USERS>` peut paramétrer les e-mails des "
|
||
"utilisateurs sans confirmation."
|
||
|
||
#: ../features.rst:51 280cf35bfcbe4a25b39bb567780bafdb
|
||
msgid "Group management"
|
||
msgstr "Gestion de groupes"
|
||
|
||
#: ../features.rst:53 ../features.rst:140 1d74522e450c43f5adec93c195b5a356
|
||
#: ca799065d4684b54940c65062bed411b
|
||
msgid "Group edition"
|
||
msgstr "Édition de groupes"
|
||
|
||
#: ../features.rst:58 1471f707ae604de8b2b0222ca43eb2c2
|
||
msgid ""
|
||
"In a similar fashion than :ref:`profile management "
|
||
"<feature_profile_management>` Canaille provides an interface to manage user "
|
||
"groups."
|
||
msgstr ""
|
||
"De manière similaire à la :ref:`gestion de profil "
|
||
"<feature_profile_management>`, Canaille fournit une interface pour gérer les "
|
||
"groupes d'utilisateur."
|
||
|
||
#: ../features.rst:60 08eb7bac987947149589e0b40c938b0c
|
||
msgid ""
|
||
"The group management is quite simple at the moment and consists in a group "
|
||
"name and description, and the list of its members. Group membership can be "
|
||
"use as :attr:`ACL Filter <canaille.core.configuration.ACLSettings.FILTER>` "
|
||
"to define user permissions."
|
||
msgstr ""
|
||
"La gestion de groupe est assez simple actuellement et consiste en un nom de "
|
||
"groupe, une description et la liste de ses membres. Appartenir au groupe "
|
||
"peut être utilisé comme :attr:`filtre ACL <canaille.core.configuration."
|
||
"ACLSettings.FILTER>` pour définir les droits utilisateur."
|
||
|
||
#: ../features.rst:63 ../features.rst:83 ../features.rst:149
|
||
#: ../tutorial/deployment.rst:13 4ca7b990ff9c429aa56f1ec0ab57aef9
|
||
#: 2cf4c2bbf0ab431f857b4fe0f7b840a0 1382b05cef654b76b8fb57324f33b950
|
||
#: 757f761fb4724713bdc1308505431bfb
|
||
msgid "Todo"
|
||
msgstr "À faire"
|
||
|
||
#: ../features.rst:64 89199041503f41d3b7cad73267f4cf96
|
||
msgid ""
|
||
"At the moment adding an user to a group can only be achieved by the user "
|
||
"settings page, but we are :issue:`working to improve this <192>`."
|
||
msgstr ""
|
||
"Actuellement, l'ajout d'utilisateur dans un groupe ne peut être fait que "
|
||
"depuis la page de paramètre de l'utilisateur, mais nous :issue:`travaillons "
|
||
"à améliorer cela <192>`."
|
||
|
||
#: ../features.rst:66 fcdf9f9d5f1e4723b46a2ca1fc89539e
|
||
msgid ""
|
||
"Group management can be enable with a :attr:`dedicated user permission "
|
||
"<canaille.core.configuration.Permission.MANAGE_GROUPS>`."
|
||
msgstr ""
|
||
"La gestion de groupe peut être activée avec un :attr:`droit utilisateur "
|
||
"dédié <canaille.core.configuration.Permission.MANAGE_GROUPS>`."
|
||
|
||
#: ../features.rst:69 95eff978c7994138a3200e090c84471d
|
||
msgid ""
|
||
"Due to limitations in the :ref:`LDAP backend <tutorial/databases:LDAP>`, "
|
||
"groups must have at least one member. Thus it is not possible to remove the "
|
||
"last user of a group without removing the group."
|
||
msgstr ""
|
||
"À cause d'une contrainte dans :ref:`LDAP <tutorial/databases:LDAP>`, les "
|
||
"groupes doivent avoir au moins un membre. Il n'est donc pas possible de "
|
||
"supprimer le dernier utilisateur d'un groupe sans supprimer le groupe."
|
||
|
||
#: ../features.rst:75 ../index.rst:34 177c53d2c6094d43875d87ca2a55ed98
|
||
#: 937baa96f2514cdaad76f4d28816abe7
|
||
msgid "User authentication"
|
||
msgstr "Authentification utilisateur"
|
||
|
||
#: ../features.rst:77 d461efae4b9d41e4b7dba32a75588df0
|
||
msgid ""
|
||
"Unless their account is :ref:`locked <feature_account_locking>`, users can "
|
||
"authenticate with a login and a password."
|
||
msgstr ""
|
||
"Sauf si leur compte est :ref:`verrouillé <feature_account_locking>`, les "
|
||
"utilisateurs peuvent s'authentifier avec un identifiant et un mot de passe."
|
||
|
||
#: ../features.rst:81 3c53cd1507ce48c780297457fc4efd97
|
||
msgid ""
|
||
"For security reasons, it won't be told to users if they try to sign in with "
|
||
"an unexisting logging, unless explicitly :attr:`set in the configuration "
|
||
"<canaille.core.configuration.CoreSettings.HIDE_INVALID_LOGINS>`."
|
||
msgstr ""
|
||
"Pour des raisons de sécurité, si un utilisateur essaie de se connecter avec "
|
||
"un identifiant inexistant, cela ne sera pas précisé, sauf :attr:`paramétrage "
|
||
"explicite dans la configuration <canaille.core.configuration.CoreSettings."
|
||
"HIDE_INVALID_LOGINS>`."
|
||
|
||
#: ../features.rst:83 80eee19145c64fbc9ea0c26464fab965
|
||
msgid ""
|
||
":ref:`LDAP backend <tutorial/databases:LDAP>` users can define which :class:"
|
||
"`user field <canaille.core.models.User>` should be used as the login (such "
|
||
"as :attr:`~canaille.core.models.User.user_name` or :attr:`~canaille.core."
|
||
"models.User.emails`) using a :attr:`configuration parameter <canaille."
|
||
"backends.ldap.configuration.LDAPSettings.USER_FILTER>`, but other backends "
|
||
"can only login using :attr:`~canaille.core.models.User.user_name`. We are :"
|
||
"issue:`working to improve this <196>`."
|
||
msgstr ""
|
||
"Les utilisateurs :ref:`basé sur LDAP <tutorial/databases:LDAP>` peuvent "
|
||
"définir quel :class:`champ utilisateur <canaille.core.models.User>` doit "
|
||
"être utilisé comme identifiant (tel que :attr:`~canaille.core.models.User."
|
||
"user_name` ou :attr:`~canaille.core.models.User.emails`) en utilisant un "
|
||
":attr:`paramètre de configuration <canaille.backends.ldap.configuration."
|
||
"LDAPSettings.USER_FILTER>`, mais les autres backends peuvent seulement se "
|
||
"connecter avec :attr:`~canaille.core.models.User.user_name`. Nous :issue:`"
|
||
"travaillons à améliorer cette situation <196>`."
|
||
|
||
#: ../features.rst:88 560be09061014d5485f75f3c90d3790c
|
||
msgid "User registration"
|
||
msgstr "Enregistrement d'un utilisateur"
|
||
|
||
#: ../features.rst:90 4780fab4d36744c6991df9ae3919e4a0
|
||
msgid ""
|
||
"Users can create accounts on Canaille if the feature :attr:`registration "
|
||
"feature <canaille.core.configuration.CoreSettings.ENABLE_REGISTRATION>` is "
|
||
"enabled. They will be able to fill a registration form with the fields "
|
||
"detailed in the default :class:`ACL settings <canaille.core.configuration."
|
||
"ACLSettings>`."
|
||
msgstr ""
|
||
"Les utilisateurs peuvent créer des comptes sur Canaille si la fonctionnalité "
|
||
":attr:`d'enregistrement <canaille.core.configuration.CoreSettings."
|
||
"ENABLE_REGISTRATION>` est activée. Ils pourront remplir un formulaire "
|
||
"d'enregistrement contenant les champs détaillés dans les :class:`paramètres "
|
||
"ACL <canaille.core.configuration.ACLSettings>` par défaut."
|
||
|
||
#: ../features.rst:92 f1e0991feda34f918887bf7653c16801
|
||
msgid ""
|
||
"If :attr:`email confirmation <canaille.core.configuration.CoreSettings."
|
||
"EMAIL_CONFIRMATION>` is also enabled, users will be sent a confirmation link "
|
||
"to their email address, on which they will need to click in order to "
|
||
"finalize their registration."
|
||
msgstr ""
|
||
"Si la :attr:` confirmation par e-mail <canaille.core.configuration."
|
||
"CoreSettings.EMAIL_CONFIRMATION>` est aussi activée, les utilisateurs "
|
||
"recevront un lien de confirmation sur leur adresse e-mail. Ils devront "
|
||
"cliquer dessus pour valider la création du compte."
|
||
|
||
#: ../features.rst:97 ../features.rst:99 6edf18a1ecff4430baaed61db6717c23
|
||
#: a2293ea9f6564b6b8bc9c02c5a8f0f40
|
||
msgid "User invitation"
|
||
msgstr "Invitation d'utilisateur"
|
||
|
||
#: ../features.rst:104 7f4e56bdbb9842beba1644e2fabad41f
|
||
msgid ""
|
||
"If a :class:`mail server <canaille.core.configuration.SMTPSettings>` is "
|
||
"configured, users with :attr:`user management permission <canaille.core."
|
||
"configuration.Permission.MANAGE_USERS>` can create an invitation link for "
|
||
"one user."
|
||
msgstr ""
|
||
"Si un :class:`serveur e-mail <canaille.core.configuration.SMTPSettings>` est "
|
||
"configuré, les utilisateurs avec le :attr:`droit de gérer les utilisateurs "
|
||
"<canaille.core.configuration.Permission.MANAGE_USERS>` peuvent créer un lien "
|
||
"d'invitation pour un autre utilisateur."
|
||
|
||
#: ../features.rst:106 05145189cce34c4d80a56aa785cee5f5
|
||
msgid ""
|
||
"The link goes to a registration form, even if regular :ref:`user "
|
||
"registration <feature_user_registration>` is disabled."
|
||
msgstr ""
|
||
"Le lien pointe vers le formulaire d'neregistrement, même si :ref:`"
|
||
"l'enregistrement d'utilisateur <feature_user_registration>` est désactivée."
|
||
|
||
#: ../features.rst:108 24a4d13134934174aaedf461e03f2363
|
||
msgid "It can be automatically sent by email to the new user."
|
||
msgstr "Il peut être envoyé automatiquement par e-mail au nouvel utilisateur."
|
||
|
||
#: ../features.rst:113 a05444b5846248f9aebaa28b316be1b8
|
||
msgid "Account locking"
|
||
msgstr "Verrouillage des comptes"
|
||
|
||
#: ../features.rst:115 1c40bbaf596c4a28993904e4aab8b076
|
||
msgid ""
|
||
"If Canaille is plugged to a :ref:`backend <feature_databases>` that supports "
|
||
"it, user accounts can be locked by users with :attr:`user management "
|
||
"permission <canaille.core.configuration.Permission.MANAGE_USERS>`. The lock "
|
||
"date can be set instantly or at a given date in the future."
|
||
msgstr ""
|
||
"Si Canaille est branché à un :ref:`backend <feature_databases>` supportant "
|
||
"cette fonctionnalité, les comptes utilisateurs peuvent être verrouillés avec "
|
||
"la :attr:`permission de gestion des utilisateurs <canaille.core.configuration"
|
||
".Permission.MANAGE_USERS>`. La date de verrouillage du compte peut être "
|
||
"immédiate, ou bien effective à une date future définie."
|
||
|
||
#: ../features.rst:118 e6053c7a0e4c4feabd77b2aa14c50018
|
||
msgid "At the moment a user account is locked:"
|
||
msgstr "Au moment où un compte utilisateur est verrouillé :"
|
||
|
||
#: ../features.rst:120 1614c2a9020a4da58427064a8b480050
|
||
msgid "their open sessions will be closed;"
|
||
msgstr "leurs sessions ouvertes seront fermées ;"
|
||
|
||
#: ../features.rst:121 bd083a39c3e94f20b0ca06eb45a6ee68
|
||
msgid "they won't be able to sign in again;"
|
||
msgstr "ils ne pourront plus se connecter à nouveau ;"
|
||
|
||
#: ../features.rst:122 3f671916358b469d91fb687a638b5c39
|
||
msgid "no new OIDC token will be issued;"
|
||
msgstr "aucun nouveau token OIDC ne sera émis ;"
|
||
|
||
#: ../features.rst:124 2cc679d736b341e4bde79d159d806618
|
||
msgid ""
|
||
"User accounts must be manually unlocked by an administrator for the users to "
|
||
"regain access to those actions."
|
||
msgstr ""
|
||
"Les comptes utilisateur doivent être déverrouillés manuellement par un "
|
||
"administrateur pour que les utilisateurs concernés récupèrent l'accès à ces "
|
||
"actions."
|
||
|
||
#: ../features.rst:129 fb080216984840ba99f095aece85255d
|
||
msgid "Account deletion"
|
||
msgstr "Suppression des comptes"
|
||
|
||
#: ../features.rst:131 1339699fc6974a4e8e1ab03633a79a69
|
||
msgid ""
|
||
"Users with the :attr:`account deletion permission <canaille.core."
|
||
"configuration.Permission.DELETE_ACCOUNT>` are allowed to delete their own "
|
||
"account."
|
||
msgstr ""
|
||
"Les utilisateurs avec la :attr:`permission de suppression de compte <canaille"
|
||
".core.configuration.Permission.DELETE_ACCOUNT>` peuvent supprimer leur "
|
||
"propre compte."
|
||
|
||
#: ../features.rst:133 65b2e1806f3a437aa8b5238f022e0352
|
||
msgid ""
|
||
"Users that also have the :attr:`user management permission <canaille.core."
|
||
"configuration.Permission.MANAGE_USERS>` are also allowed to delete other "
|
||
"users accounts."
|
||
msgstr ""
|
||
"Les utilisateurs qui ont additionnellement la :attr:`permission de gestion "
|
||
"des utilisateurs <canaille.core.configuration.Permission.MANAGE_USERS>` "
|
||
"peuvent également supprimer les comptes d'autres utilisateurs."
|
||
|
||
#: ../features.rst:138 278ed12bce6b4b318f677aa6d22138f5
|
||
msgid "Password recovery"
|
||
msgstr "Récupération de mot de passe"
|
||
|
||
#: ../features.rst:145 c2409768ec7a46d584ed1ed235e7a4d0
|
||
msgid ""
|
||
"If a :class:`mail server <canaille.core.configuration.SMTPSettings>` is "
|
||
"configured and the :attr:`password recovery feature <canaille.core."
|
||
"configuration.CoreSettings.ENABLE_PASSWORD_RECOVERY>` is enabled, then users "
|
||
"can ask for a password reset email if they cannot remember their password."
|
||
msgstr ""
|
||
"Si un :class:`serveur e-mail <canaille.core.configuration.SMTPSettings>` est "
|
||
"configuré, et la :attr:`fonctionnalité de récupération de mot de passe "
|
||
"<canaille.core.configuration.CoreSettings.ENABLE_PASSWORD_RECOVERY>` est "
|
||
"activée, les utilisateurs peuvent demander l'envoi d'un e-mail de "
|
||
"réinitialisation de mot de passe s'ils ont oublié leur mot de passe."
|
||
|
||
#: ../features.rst:147 7dbfa07474cd40c7a7c17748fbb21a07
|
||
msgid ""
|
||
"The email will be sent to the email addresses filled in their profile, and "
|
||
"will contain a link that will allow them to choose a new password. ."
|
||
msgstr ""
|
||
"L'e-mail sera envoyé à l'adresse e-mail saisie dans leur profil, et "
|
||
"contiendra un lien leur permettant de choisir un nouveau mot de passe."
|
||
|
||
#: ../features.rst:151 410c54a611eb4b1c8a372b80f744f941
|
||
msgid "Check that password recovery is disabled on locked accounts."
|
||
msgstr ""
|
||
"Vérifie que la récupération de mot de passe est désactivée pour les comptes "
|
||
"verrouillés."
|
||
|
||
#: ../features.rst:156 2c4f6c64da0c42eab5520711fca1dc46
|
||
msgid "Password reset"
|
||
msgstr "Réinitialisation des mots de passe"
|
||
|
||
#: ../features.rst:158 383eb7a045cd41f0909ad9aad2601065
|
||
msgid ""
|
||
"If a :class:`mail server <canaille.core.configuration.SMTPSettings>` is "
|
||
"configured, :attr:`user management permission <canaille.core.configuration."
|
||
"Permission.MANAGE_USERS>` can send password reset mails to users. The mails "
|
||
"contains a link that allow users to choose a new password without having to "
|
||
"retrieve the old one."
|
||
msgstr ""
|
||
"Si un :class:`serveur e-mail <canaille.core.configuration.SMTPSettings>` est "
|
||
"configuré, la :attr:`permission de gestion des utilisateurs <canaille.core."
|
||
"configuration.Permission.MANAGE_USERS>` permet d'envoyer des e-mails de "
|
||
"réinitialisation de mot de passe aux utilisateurs. Les e-mails contiennent "
|
||
"un lien qui permet aux utilisateurs de choisir un nouveau mot de passe sans "
|
||
"avoir besoin de retrouver l'ancien."
|
||
|
||
#: ../features.rst:164 7be9af4a393e4203b3da626d93d71d69
|
||
msgid "Password initialization"
|
||
msgstr "Initialisation des mots de passe"
|
||
|
||
#: ../features.rst:166 02bd8f9a76fd4b66a8f803288246c0ef
|
||
msgid ""
|
||
"User :attr:`passwords <canaille.core.models.User.password>` are optional. If "
|
||
"a :class:`mail server <canaille.core.configuration.SMTPSettings>` is "
|
||
"configured, when users with no password attempt to sign in, they are invited "
|
||
"to click a button that will send them a password initialization mail. The "
|
||
"mail contains a link that leads to a form that allows users to choose a "
|
||
"password."
|
||
msgstr ""
|
||
"Les :attr:`mots de passe <canaille.core.models.User.password>` utilisateur "
|
||
"sont optionnels. Si un :class:`serveur e-mail <canaille.core.configuration."
|
||
"SMTPSettings>` est configuré, quand un utilisateur sans mot de passe tente "
|
||
"de se connecter, il est invité à cliquer sur un bouton déclenchant l'envoi "
|
||
"d'un e-mail de réinitialisation de mot de passe. Cet e-mail contient un lien "
|
||
"dirigeant vers un formulaire permettant à l'utilisateur de choisir un mot de "
|
||
"passe."
|
||
|
||
#: ../features.rst:173 4f60c7a56e5544afa1bbaee9df0805e0
|
||
msgid "Password compromission check"
|
||
msgstr "Vérification de la compromission du mot de passe"
|
||
|
||
#: ../features.rst:175 3dc13b94cd014d6f976426da9840a3d6
|
||
msgid ""
|
||
"If :attr:`password compromission check feature <canaille.core.configuration."
|
||
"CoreSettings.ENABLE_PASSWORD_COMPROMISSION_CHECK>` is enabled, Canaille will "
|
||
"check for password compromise on HIBP (https://haveibeenpwned.com/) every "
|
||
"time a new password is register. You will need to set an :attr:`admin email "
|
||
"<canaille.core.configuration.CoreSettings.ADMIN_EMAIL>`."
|
||
msgstr ""
|
||
"Si l' :attr:`option de vérification de compromission du mot de passe "
|
||
"<canaille.core.configuration.CoreSettings."
|
||
"ENABLE_PASSWORD_COMPROMISSION_CHECK>` est activée, Canaille va vérifier la "
|
||
"compromission du mot de passe sur HIBP (https://haveibeenpwned.com/) à "
|
||
"chaque fois qu'un nouveau mot de passe est saisi. La configuration d'un "
|
||
":attr:`e-mail administrateur <canaille.core.configuration.CoreSettings."
|
||
"ADMIN_EMAIL>` est nécessaire."
|
||
|
||
#: ../features.rst:178 a9118911f6a341a3b529fd8882c4e3e4
|
||
msgid "Web interface"
|
||
msgstr "Interface web"
|
||
|
||
#: ../features.rst:183 277603f8de354f15857ad0068f148115
|
||
msgid "Internationalization"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:185 6bc7d90be4bf486d8a2e84a48cc76b66
|
||
msgid "Translation state"
|
||
msgstr "État de la traduction"
|
||
|
||
#: ../features.rst:190 a1f40124b57e452a85abf8af401dc2b1
|
||
msgid ""
|
||
"Canaile will display in your :attr:`preferred language <canaille.core.models."
|
||
"User.preferred_language>` if available, or your browser language if "
|
||
"available (and if it is not you can :ref:`help us with the translation "
|
||
"<development/contributing:Code translation>`). If you prefer, you can also :"
|
||
"attr:`force a language <canaille.core.configuration.CoreSettings.FAVICON>` "
|
||
"for every users."
|
||
msgstr ""
|
||
"Canaille va s'afficher dans votre :attr:`langue préférée <canaille.core."
|
||
"models.User.preferred_language>` si disponible, ou la langue de votre "
|
||
"navigateur si disponible (si elle ne l'est pas, vous pouvez :ref:`noud aider "
|
||
"à la traduire <development/contributing:Code translation>`). Si vous le "
|
||
"souhaitez, vous pouvez également :attr:`forcer une langue <canaille.core."
|
||
"configuration.CoreSettings.FAVICON>` pour tous les utilisateurs."
|
||
|
||
#: ../features.rst:196 8bf0ddac3fee4b4f931bd704bbb167dc
|
||
msgid "Lightweight"
|
||
msgstr "Léger"
|
||
|
||
#: ../features.rst:198 3774910a87b34b9dba3b6c28a1e6ba68
|
||
msgid ""
|
||
"The web interface is lightweight, so everything should load quickly. There "
|
||
"is a few Javascript here and there to smooth the experience, but no "
|
||
"Javascript at all is needed to use Canaille."
|
||
msgstr ""
|
||
"L'interface web est légère, donc tout devrait se charger rapidement. Il y a "
|
||
"un peu de Javascript ici et là pour lisser l'expérience, mais aucun "
|
||
"Javascript n'est absolument nécessaire à l'utilisation de Canaille."
|
||
|
||
#: ../features.rst:202 0da766448075460d9360204e6975a0f4
|
||
msgid "Customizable"
|
||
msgstr "Personnalisable"
|
||
|
||
#: ../features.rst:204 737f45bc79a542ee903e8349947c3b5f
|
||
msgid ""
|
||
"The default theme should be good enough for most usages. It has a dark "
|
||
"theme, display well on mobile, and let you choose a :attr:`logo <canaille."
|
||
"core.configuration.CoreSettings.LOGO>` and a :attr:`favicon <canaille.core."
|
||
"configuration.CoreSettings.FAVICON>`."
|
||
msgstr ""
|
||
"Le thème par défaut devrait suffir à la plupart des usages. Il dispose d'un "
|
||
"thème sombre, s'affiche bien sur mobile, et vous laissez choisir un :attr:`"
|
||
"logo <canaille.core.configuration.CoreSettings.LOGO>` et un :attr:`favicon "
|
||
"<canaille.core.configuration.CoreSettings.FAVICON>`."
|
||
|
||
#: ../features.rst:207 36b615461b0c49e9aca81c65a60c3308
|
||
msgid ""
|
||
"If you need more you can also use a :attr:`custom theme <canaille.core."
|
||
"configuration.CoreSettings.THEME>`."
|
||
msgstr ""
|
||
"Si vous avez besoin de plus, vous pouvez utiliser un :attr:`thème "
|
||
"personnalisé <canaille.core.configuration.CoreSettings.THEME>`."
|
||
|
||
#: ../features.rst:214 02908b4590a0462cac7afbc2fd17d7f6
|
||
#, fuzzy
|
||
msgid ""
|
||
"Canaille implements a :ref:`subset<development/specifications:State of the "
|
||
"specs in Canaille>` of the OAuth2/OpenID Connect specifications . This "
|
||
"allows to provide :abbr:`SSO (Single Sign-On)` and :abbr:`SLO (Single Log-"
|
||
"On)` to applications plugged to Canaille."
|
||
msgstr ""
|
||
"Canaille implémente un :ref:`sous-ensemble<development/specifications:State "
|
||
"of the specs in Canaille>` de la spécification de OAuth2/OpenID Connect. "
|
||
"Cela permet d'avoir la :abbr:`SSO (Single Sign-On)` et la :abbr:`SLO (Single "
|
||
"Log-On)` aux applications branchées à Canaille."
|
||
|
||
#: ../features.rst:218 f8c59847b97049d19a13ccaa6539f863
|
||
msgid "Consent management"
|
||
msgstr "Gestion des autorisations"
|
||
|
||
#: ../features.rst:226 8e7afe2e2e6943feb664ab03ae9da770
|
||
msgid ""
|
||
"Users can give their consent to application requesting access to their "
|
||
"personal information, and then revoke those consent at their will."
|
||
msgstr ""
|
||
"Les utilisateurs peuvent donner leur autorisation aux applications qui "
|
||
"demandent un accès à leurs informations personnelles, et révoquer ces "
|
||
"autorisations lorsqu'ils le souhaitent."
|
||
|
||
#: ../features.rst:230 c7a8da519165448ebc4e1c53eb25f207
|
||
msgid "Application management"
|
||
msgstr "Gestion des applications"
|
||
|
||
#: ../features.rst:232 2e65c0c497da4a77bc85c9500a074047
|
||
msgid ""
|
||
"Users with the right :attr:`permission <canaille.core.configuration."
|
||
"Permission.MANAGE_OIDC>` can manager OIDC clients through the web interface."
|
||
msgstr ""
|
||
"Les utilisateurs ayant la :attr:`permission <canaille.core.configuration."
|
||
"Permission.MANAGE_OIDC>` nécessaire peuvent gérer les clients OIDC depuis "
|
||
"l'interface web."
|
||
|
||
#: ../features.rst:234 bafe35db98f749d99557feec3ceaf4e7
|
||
msgid ""
|
||
"In some cases, it might be useful to avoid the consent page for some trusted "
|
||
"applications, so clients can be pre-consented."
|
||
msgstr ""
|
||
"Dans certains cas, il peut être utile d'éviter la page d'autorisation pour "
|
||
"certaines applications de confiance, pour que des clients puissent être "
|
||
"pré-autorisés."
|
||
|
||
#: ../features.rst:237 76b48b09fc1c44038a697dfa816afbcc
|
||
msgid "Discovery"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:239 f251fff6b3374ecd9fde5bdebced6313
|
||
msgid ""
|
||
"Canaille implements the :doc:`Discovery specifications <development/"
|
||
"specifications>` so most of the applications plugged to Canaille can auto-"
|
||
"configure themselves."
|
||
msgstr ""
|
||
|
||
#: ../features.rst:242 4fac1fe3bcd346aeb34e8c600df0d542
|
||
msgid "Dynamic Client Registration"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:244 f53321a9a89d40c0b7fdc48be51240a4
|
||
msgid ""
|
||
"Canaille implements the :doc:`Dynamic Client Registration specifications "
|
||
"<development/specifications>`, so when the :attr:`feature is enabled "
|
||
"<canaille.oidc.configuration.OIDCSettings."
|
||
"DYNAMIC_CLIENT_REGISTRATION_OPEN>`, clients can register themselves on "
|
||
"Canaille without an administrator intervention."
|
||
msgstr ""
|
||
|
||
#: ../features.rst:247 ec8846e6d8404a8185860b509814e54c
|
||
msgid "System administration"
|
||
msgstr "Administration système"
|
||
|
||
#: ../features.rst:252 ../references/commands.rst:2
|
||
#: 511d3810fbd4411dbf14065b1f014256 a07ec9235c4347858a3f9dd667ade4b6
|
||
msgid "Command Line Interface"
|
||
msgstr "Interface en ligne de commande"
|
||
|
||
#: ../features.rst:254 446a668dea4548ffb184afa168ed6115
|
||
msgid ""
|
||
"Canaille comes with a :abbr:`CLI (Command Line Interface)` to help "
|
||
"administrators in hosting and management."
|
||
msgstr ""
|
||
"Canaille est équipé d'un :abbr:`CLI (Command Line Interface)`, ou interface "
|
||
"en ligne de commande, pour aider les administrateurs à l'hébergement et à la "
|
||
"gestion."
|
||
|
||
#: ../features.rst:256 1b76ec06f2f841ccb8396a5345014ffd
|
||
msgid ""
|
||
"There are tools to :ref:`check your configuration <cli_check>` or to :ref:"
|
||
"`install missing parts <cli_install>`. You can use the CLI to :ref:`create "
|
||
"<cli_create>`, :ref:`read <cli_get>`, :ref:`update <cli_set>` and :ref:"
|
||
"`delete <cli_delete>` models such as :class:`users <canaille.core.models."
|
||
"User>`, :class:`groups <canaille.core.models.Group>` or :class:`OIDC "
|
||
"clients <canaille.oidc.basemodels.Client>`."
|
||
msgstr ""
|
||
"L'interface en ligne de commande dispose d'outils pour :ref:`vérifier votre "
|
||
"configuration <cli_check>` ou pour :ref:`installer des éléments manquants "
|
||
"<cli_install>`. Vous pouvez utiliser le CLI pour :ref:`créer <cli_create>`, "
|
||
":ref:`lire <cli_get>`, :ref:`mettre à jour <cli_set>` et :ref:`supprimer "
|
||
"<cli_delete>` des modèles comme les :class:`utilisateurs <canaille.core."
|
||
"models.User>`, :class:`groupes <canaille.core.models.Group>` ou les :class:`"
|
||
"clients OIDC <canaille.oidc.basemodels.Client>`."
|
||
|
||
#: ../features.rst:259 9f10d5a6354c4cda8b1a4e652c129231
|
||
msgid ""
|
||
"There are also tools to :ref:`fill your database <cli_populate>` with random "
|
||
"objects, for tests purpose for instance."
|
||
msgstr ""
|
||
"Elle dispose également d'outils pour :ref:`remplir votre base de données "
|
||
"<cli_populate>` avec des objets aléatoires, par exemple à des fins de test."
|
||
|
||
#: ../features.rst:264 ../tutorial/databases.rst:2
|
||
#: 3f06ed32b21149799d58c75cad1db5ff fbfabda71be84552b6583acdaa13af3e
|
||
msgid "Databases"
|
||
msgstr "Bases de données"
|
||
|
||
#: ../features.rst:266 004f29ea7eb74ee2912627a929e87f1c
|
||
msgid ""
|
||
"Canaille can handle data from the most :ref:`common SQL databases <tutorial/"
|
||
"databases:SQL>` such as PostgreSQL, MariaDB or SQLite, as well as :ref:"
|
||
"`OpenLDAP <tutorial/databases:LDAP>`. It also comes with a no-dependency :"
|
||
"ref:`in-memory database <tutorial/databases:Memory>` that can be used in "
|
||
"unit tests suites."
|
||
msgstr ""
|
||
"Canaille peut manipuler de la donnée depuis des :ref:`bases de données SQL <"
|
||
"tutorial/databases:SQL>` les plus communes, telles que PostgreSQL, MariaDB "
|
||
"ou SQLite, ainsi que depuis :ref:`OpenLDAP <tutorial/databases:LDAP>`. "
|
||
"Canaille dispose également d'une :ref:`base de données en mémoire <tutorial/"
|
||
"databases:Memory>` sans dépendances qui peut être utilisée dans des tests "
|
||
"unitaires."
|
||
|
||
#: ../features.rst:272 8add6581a16b4877a66ba7c8827152ca
|
||
msgid "Logging"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:274 1179b565c1de4b11a03ca824cce52977
|
||
msgid ""
|
||
"Canaille writes :attr:`logs <canaille.core.configuration.CoreSettings."
|
||
"LOGGING>` for every important event happening, to help administrators "
|
||
"understand what is going on and debug funky situations."
|
||
msgstr ""
|
||
|
||
#: ../features.rst:276 a6282bdfca0b4e2c8ecfd02478d3623d
|
||
msgid ""
|
||
"The following security events are logged with the tag [SECURITY] for easy "
|
||
"retrieval :"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:278 49f7ec7627e7414aa616f1060c33d110
|
||
msgid "Authentication attempt"
|
||
msgstr "Tentative d'authentification"
|
||
|
||
#: ../features.rst:279 a26713f492ff4f14a2e3a881e7ab19f1
|
||
msgid "Password update"
|
||
msgstr "Mise à jour du mot de passe"
|
||
|
||
#: ../features.rst:280 ca7c103705f14293950cc12dedd96378
|
||
msgid "Email update"
|
||
msgstr "Mise à jour de l'e-mail"
|
||
|
||
#: ../features.rst:281 0e01ba62ff054e4e849ae1d4c1f6fdee
|
||
msgid "Forgotten password mail sent to user"
|
||
msgstr "Mail d'oubli de mot de passe envoyé à l'utilisateur"
|
||
|
||
#: ../features.rst:282 8f4e5a1567114749b944d391c43ad2bb
|
||
msgid "Token emission"
|
||
msgstr "Emission de jeton"
|
||
|
||
#: ../features.rst:283 04cf77b4e9514ab7805b4f4156209cff
|
||
msgid "Token refresh"
|
||
msgstr "Rafraichissement de jeton"
|
||
|
||
#: ../features.rst:284 ec6501d110694e58b6181468d6154bda
|
||
msgid "Token revokation"
|
||
msgstr "Révocation des jetons"
|
||
|
||
#: ../features.rst:285 76f7ecd101a541d3a1dbb7b3090db868
|
||
msgid "New consent given for client application"
|
||
msgstr "Nouvelle autorisation donnée pour l'application client"
|
||
|
||
#: ../features.rst:286 100d9e39db3644c78ed000b9d27342a4
|
||
msgid "Consent revokation"
|
||
msgstr "Révocation de l'autorisation"
|
||
|
||
#: ../features.rst:291 267852d80a8f4235af2ca961f8de8f09
|
||
msgid "Development and testing tool"
|
||
msgstr "Outil de développement et de test"
|
||
|
||
#: ../features.rst:296 3dd5b1afcdf74705a07096fb3d7fd788
|
||
msgid "Unit-testing tool"
|
||
msgstr "Outil de test unitaire"
|
||
|
||
#: ../features.rst:298 8c74a6c31d294bcb85e4fd0db0bb40fd
|
||
msgid ""
|
||
"Thanks to its lightweight :ref:`in-memory database <tutorial/databases:"
|
||
"Memory>` and its curated :ref:`dependency list <tutorial/install:Get the "
|
||
"code>`, Canaille can be used in the unit test suite of your application, so "
|
||
"you can check how it behaves against a real world OpenID Connect server. If "
|
||
"you work with python you might want to check :doc:`pytest-iam:index`."
|
||
msgstr ""
|
||
"Grâce à sa :ref:`base de données en mémoire <tutorial/databases:Memory>`"
|
||
"légère et sa :ref:`liste de dépendances <tutorial/install:Get the code>`, "
|
||
"Canaille peut être utilisé dans la suite de tests unitaires de votre "
|
||
"application, pour que vous puissiez vérifier comment l'application se "
|
||
"comporte face à un vrai serveur OpenID Connect. Si vous travaillez en "
|
||
"python, vous pourriez être intéressé par :doc:`pytest-iam:index`."
|
||
|
||
#: ../features.rst:301 197c22656e1b44b89c3587f95b3bb5c8
|
||
msgid "Development server"
|
||
msgstr "Serveur de développement"
|
||
|
||
#: ../features.rst:303 5f930c719ffe484d9680e8d7f3169e54
|
||
msgid ""
|
||
"It can also being launched in your development environment, if you find that "
|
||
"launching a Keycloak in a Docker container is too heavy for your little web "
|
||
"application."
|
||
msgstr ""
|
||
"Canaille peut également être lancé dans votre environnement de "
|
||
"développement, si vous trouvez que lancer un Keycloak dans un conteneur "
|
||
"Docker est trop lourd pour votre application web."
|
||
|
||
#: ../features.rst:308 e9cc836cf3d54a32ad7b1d691826bc39
|
||
msgid "Continuous Integration tools"
|
||
msgstr "Outils d'intégration continue"
|
||
|
||
#: ../features.rst:310 a4c714c1c0d44b7ab7a10dff7105a725
|
||
msgid ""
|
||
"It also fits well in continuous integration scenarios. Thanks to its :ref:"
|
||
"`CLI <feature_cli>`, you can prepare data in Canaille, let your application "
|
||
"interact with it, and then check the side effects."
|
||
msgstr ""
|
||
"Canaille s'intègre également bien dans des scénarios d'intégration continue. "
|
||
"Grâce à son :ref:`CLI <feature_cli>`, vous pouvez préparer la donnée dans "
|
||
"Canaille, laisser votre application interagir avec, puis observer les effets "
|
||
"secondaires."
|
||
|
||
#: ../features.rst:313 cef90af6922045ccb06933f9c96c6f6e
|
||
msgid "Roadmap"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:316 35efac03aaf843308e6941fa96ff921b
|
||
msgid "Bêta version"
|
||
msgstr "Version bêta"
|
||
|
||
#: ../features.rst:318 390267ac81744daf95a62fffcd0af834
|
||
msgid ""
|
||
"To go out of the current Alpha version we want to achieve the following "
|
||
"tasks:"
|
||
msgstr ""
|
||
"Pour sortir de la version Alpha actuelle, nous voulons réaliser les taches "
|
||
"suivantes :"
|
||
|
||
#: ../features.rst:320 16cbac25ee2f420abda2992cd351559c
|
||
msgid ":issue:`Configuration validation using pydantic <138>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:323 9f7d9a2a96974645bd8fc63a44d1a2c8
|
||
msgid "Stable version"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:325 2736b944f850403f9592ba3265b6f986
|
||
msgid ""
|
||
"Before we push Canaille in stable version we want to achieve the following "
|
||
"tasks:"
|
||
msgstr ""
|
||
"Avant de déployer Canaille en version stable, nous voulons réaliser les "
|
||
"taches suivantes :"
|
||
|
||
#: ../features.rst:328 4a9ef596fb13405185ef106cd2dda007
|
||
msgid "Security"
|
||
msgstr "Sécurité"
|
||
|
||
#: ../features.rst:330 a09c2af5ad3e424eba893efd02faf213
|
||
msgid ":issue:`Password hashing configuration <175>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:331 3001ee87077c4479b3f3c8b3b5aecd33
|
||
msgid ":issue:`Authentication logging policy <177>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:332 e4387f0454dd483eb1c33ce14ef1d9ea
|
||
msgid ":issue:`Intruder lockout <173>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:333 e38560428a8f48528d9f02a5e00197fb
|
||
msgid ":issue:`Password expiry policy <176>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:334 de013ed91c4443d190d9783c5cff060a
|
||
msgid ":issue:`Multi-factor authentication: Email <47>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:335 d0049b96f7c1401a91d968aa93715930
|
||
msgid ":issue:`Multi-factor authentication: SMS <47>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:336 e5e2f43901ae4d00bd1c675076fb846d
|
||
msgid ":issue:`Multi-factor authentication: OTP <47>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:339 277364ce7ca04a169409ad5acf68d075
|
||
msgid "Packaging"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:341 dece9c7d75d441cdbdce48eb7a4bebcf
|
||
msgid ":issue:`Nix package <190>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:342 a53f52a497344bb6b889fa63de7d9c26
|
||
msgid ":issue:`Docker / OCI package <59>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:345 6a738414fcb944ac9c4d5b61a53f0d11
|
||
msgid "And beyond"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:347 66a95c24a32940118517f6bb3bf27838
|
||
msgid ":issue:`OpenID Connect certification <182>`"
|
||
msgstr ""
|
||
|
||
#: ../features.rst:348 73307b368d454e338ff4bbd05657bbcc
|
||
msgid ":issue:`SCIM support <116>`"
|
||
msgstr ""
|
||
|
||
#: ../index.rst:15 8d018998cb4b4ff38d92f2a73326716e
|
||
msgid "Lightweight Identity and Authorization Management"
|
||
msgstr "Serveur d’identité et d'autorisations ultra-léger"
|
||
|
||
#: ../index.rst:19 55ed7b7eb88e42f78ef42eb5b55a3555
|
||
msgid ""
|
||
"**Canaille** is a French word meaning *rascal*. It is roughly pronounced "
|
||
"**Can I?**, as in *Can I access your data?* Canaille is a lightweight "
|
||
"identity and authorization management software. It aims to be very light, "
|
||
"simple to install and simple to maintain. Its main features are :"
|
||
msgstr ""
|
||
|
||
#: ../index.rst:31 d12af997fa5e48da987d2ecfcb4f149f
|
||
msgid "User profile and groups management, Basic permissions"
|
||
msgstr "Gestion de profils utilisateur et de groupes, permissions simples"
|
||
|
||
#: ../index.rst:38 ea53cfd918924c97a6726cfd357f5ce5
|
||
msgid ""
|
||
"Authentication, registration, email confirmation, \"I forgot my password\" "
|
||
"emails"
|
||
msgstr ""
|
||
"Authentification, inscription, confirmation par e-mail, e-mails \"J'ai "
|
||
"oublié mon mot de passe\""
|
||
|
||
#: ../index.rst:40 127cca0af1054bf08a8ce05d1c55d539
|
||
msgid "SSO"
|
||
msgstr ""
|
||
|
||
#: ../index.rst:44 f4b6d7b278ba480da9d7c964849ba988
|
||
msgid "OpenID Connect identity provider"
|
||
msgstr ""
|
||
|
||
#: ../index.rst:46 be1ff5f7d2ca468fa300f595696d9c10
|
||
msgid "Multi-database support"
|
||
msgstr ""
|
||
|
||
#: ../index.rst:50 92a7a7f6ee474890bf705bd67945dd9e
|
||
msgid "PostgreSQL, Mariadb and OpenLDAP first-class citizenship"
|
||
msgstr ""
|
||
|
||
#: ../index.rst:52 b1569cdc9eef44d68ed3b52496ef75b3
|
||
msgid "Customization"
|
||
msgstr "Personnalisation"
|
||
|
||
#: ../index.rst:56 68415646dbfa4be79d953583749246fe
|
||
msgid "Put Canaille at yours colors by choosing a logo or use a custom theme!"
|
||
msgstr ""
|
||
"Mettez Canaille à vos couleurs en choisissant un logo ou en utilisant un "
|
||
"thème personnalisé !"
|
||
|
||
#: ../index.rst:58 2a6a4e752e494f65b7766a082624d1a4
|
||
msgid "Developers friendliness"
|
||
msgstr ""
|
||
|
||
#: ../index.rst:62 42693164646349bcbe9f680b08cd904b
|
||
msgid ""
|
||
"Canaille can easily fit in your unit tests suite or in your Continuous "
|
||
"Integration."
|
||
msgstr ""
|
||
"Canaille peut s'intégrer facilement dans votre suite de tests unitaires ou "
|
||
"dans votre Intégration Continue."
|
||
|
||
#: ../index.rst:66 bc563a309b784f2cbc15399c3ad8f51c
|
||
msgid ":doc:`Full feature list <features>` :doc:`Common use cases <usecases>`"
|
||
msgstr ""
|
||
":doc:`Liste complète des fonctionnalités <features>` :doc:`Cas d'usage "
|
||
"<usecases>`"
|
||
|
||
#: ../references/commands.rst:4 aebb427c91ed41da9c0b7ecdfcaf590a
|
||
msgid ""
|
||
"Canaille provide several commands to help administrator manage their data."
|
||
msgstr ""
|
||
"Canaille dispose de plusieurs commandes pour aider les administrateurs à "
|
||
"gérer leurs données."
|
||
|
||
#: ../references/commands.rst:6 b907889f6d0d4dabb1a963c60758fedf
|
||
msgid ""
|
||
"Generally, some configuration has to be loaded by `Canaille`. This can be "
|
||
"achieved by :ref:`configuration loading method<references/configuration:Load "
|
||
"the configuration>` available, but most of the time a ``CONFIG`` environment "
|
||
"variable is used. For the sake of readability, it is omitted in the "
|
||
"following examples."
|
||
msgstr ""
|
||
|
||
#: ../../canaille check:1 e48a730fe9c94efcb41a272f5478ed19
|
||
msgid "Test the configuration file."
|
||
msgstr ""
|
||
|
||
#: ../../canaille check:1 41aae9c8d46743aba9e79f57c079d0c7
|
||
msgid ""
|
||
"Attempt to reach the database and the SMTP server with the provided "
|
||
"credentials."
|
||
msgstr ""
|
||
|
||
#: ../../canaille clean:1 e4dceb9281e14cf0adbd56154fffbc04
|
||
msgid "Remove expired tokens and authorization codes."
|
||
msgstr ""
|
||
|
||
#: ../../canaille install:1 fade86f4801a403dab35e0e1cf5bb2a9
|
||
msgid "Installs canaille elements from the configuration."
|
||
msgstr ""
|
||
|
||
#: ../../canaille install:1 59f7082a6fc74329965dacbbd4b29d74
|
||
msgid ""
|
||
"For instance, depending on the configuration, this can generate OIDC keys or "
|
||
"install LDAP schemas."
|
||
msgstr ""
|
||
|
||
#: ../../canaille populate:1 10dd1f2f8dfd4382ba79586e84d228b6
|
||
msgid "Populate the database with generated random data."
|
||
msgstr ""
|
||
|
||
#: ../references/commands.rst:0 eef93c8f7efa4bcca26a9984edfec552
|
||
#: ab621caa7a2c4d8fa849e7797625d3ba f8d114457ca741bf800ee8c4b3f942a1
|
||
#: 6fbad5feee934277bdbbbd04f071fe34 b61fa1c2360748b999a9aced4bd164ab
|
||
#: 7c65f97affff43a2a78f72e6d2a8b2bf 20f752045a96446387d44095a57eca5c
|
||
#: 14304e9889da477c8a93cf9b9dd6c1e5 bb0e8261f2454b65aa180dd68ad176d8
|
||
#: 16a6ff9805e447789f9cee87d357b936 a7c4100a940e41fe9440ad6b0bbd28dd
|
||
#: 296c95633a584e4e924f2f36676c1c2f e0d5e5ab4bf9456aa3c194dbb343ffd8
|
||
#: 230b27138fe641e19ac2bda6f21d1507 682d03c24b1349d1be236737cf9c8478
|
||
#: 0201087fa2f8445c9c291d4cc4ba3700 a537cbb030a84e5b96ca899c18aaef63
|
||
#: aa0eedc786284ae49d37dab255457175 1715de5f32c34e7cab8f1379549071f9
|
||
#: f9c437d0c28c4079995fd7bc83ed2ec9
|
||
msgid "Options"
|
||
msgstr ""
|
||
|
||
#: ../../canaille populate:1 94ba9e16305a484ea1415b3237723cf1
|
||
msgid "Number of items to create"
|
||
msgstr ""
|
||
|
||
#: ../../canaille populate groups:1 379afc690fa147acb76c519bccb010a6
|
||
msgid "Populate the database with generated random groups."
|
||
msgstr ""
|
||
|
||
#: ../../canaille populate groups:1 da4cf29b95b846119a772e8d9f73f96b
|
||
msgid "The maximum number of users that will randomly be affected in the group"
|
||
msgstr ""
|
||
|
||
#: ../../canaille populate users:1 b87d2b5df82a46e0a11fccb84a997ab9
|
||
msgid "Populate the database with generated random users."
|
||
msgstr ""
|
||
|
||
#: ../../canaille get:1 ce45ebf26cf149d3b0fd406e1ed2b5a9
|
||
msgid "Read information about models."
|
||
msgstr ""
|
||
|
||
#: ../../canaille get:1 00dbea345e914dafb4a736214b895b1c
|
||
msgid "Options can be used to filter models::"
|
||
msgstr ""
|
||
|
||
#: ../../canaille get:1 43207b9c3af4494e9714cbf6ff2c473d
|
||
msgid "Displays the matching models in JSON format in the standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille get authorizationcode:1 8f0d2152f80d49e8be0e904a850cacdd
|
||
msgid "Search for authorizationcodes and display the matching models as JSON."
|
||
msgstr ""
|
||
|
||
#: ../../canaille get client:1 bef20cbd666c49ff993234428725ddd3
|
||
msgid "Search for clients and display the matching models as JSON."
|
||
msgstr ""
|
||
|
||
#: ../../canaille get consent:1 173ac74323844b969fdb2ce7bb9632c7
|
||
msgid "Search for consents and display the matching models as JSON."
|
||
msgstr ""
|
||
|
||
#: ../../canaille get group:1 8cc4308278af4625bc3d625a22ea5aa3
|
||
msgid "Search for groups and display the matching models as JSON."
|
||
msgstr ""
|
||
|
||
#: ../../canaille get token:1 5307294d0c7a49d6ad21d0d505f11aab
|
||
msgid "Search for tokens and display the matching models as JSON."
|
||
msgstr ""
|
||
|
||
#: ../../canaille get user:1 db01fd1777f4431793d3885c834b7680
|
||
msgid "Search for users and display the matching models as JSON."
|
||
msgstr ""
|
||
|
||
#: ../../canaille set:1 cec2b45a156b461faacc323380171e6f
|
||
msgid "Update models."
|
||
msgstr ""
|
||
|
||
#: ../../canaille set:1 e5fc377719b04495a57faa42a87be86a
|
||
msgid "The command takes an model ID and edit one or several attributes::"
|
||
msgstr ""
|
||
|
||
#: ../../canaille set:1 4e8bb50216e741f0bb44ecc365265370
|
||
msgid "Displays the edited model in JSON format in the standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille set authorizationcode:1 03d1eebac72e42b58b3aef5a429dee1b
|
||
msgid ""
|
||
"Update a authorizationcode and display the edited model in JSON format in "
|
||
"the standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete authorizationcode:1 set
|
||
#: ddbdb0447cd34e59b5e1c6f9f852c619 4abf794613df4e5c8472ce2a6e7dc989
|
||
msgid "IDENTIFIER should be a authorizationcode id or authorization_code_id"
|
||
msgstr ""
|
||
|
||
#: ../references/commands.rst:0 f2adfafce0754af79d2770a34dae5309
|
||
#: 283f0c7412de4a97bb4e7954f008ff3e 46a35e9dcc73463db8ff772da3638b31
|
||
#: fae552d2703d4a2186332c0847506798 4fafb5c0151f445c9c573b6472b4d0f5
|
||
#: 3115c2cba5f04f9094165896feac1cc9 e3c459094f734f6382847753305e76aa
|
||
#: 4e8a2cd6e1224733b644484774cf0621 6f97567dcca64c4a92c0b869a6ce337d
|
||
#: fea5ce77581940eabec5498e9347643b 7b57a6d1d40d40eaa51b6bba807602b5
|
||
#: 0c5b1219cf2c4d97bc0cf7717c7b4ef3
|
||
msgid "Arguments"
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete authorizationcode:1 client:1 consent:1 group:1 token:1
|
||
#: user:1 set c0f3d574bd3640aca180dbe7695f53e9 61c7448c4a41497a8b923a636124b2be
|
||
#: e523b87636874d088f2ef6e7c2d8c79a 3e12bc882bce4c71928c127525ee8358
|
||
#: ef0be6baac8a4a44bd4a317601ea2018 f60f6b4edba24b98a79df93768b3041f
|
||
#: c1192e9d2ddc429f911056db63d54e6c 4e3ae120210c4d62bfd1cc1d7c199f7a
|
||
#: 3b9c5a9904f74f9e8308a21d4ee8da42 a6ecc5cf2bb54dfe98d8553f7f49c5d6
|
||
#: 6492e2a92bac400c990cc3182c8b1cb0 ca2ec2ca915e40438b1b18eb27c46670
|
||
msgid "Required argument"
|
||
msgstr ""
|
||
|
||
#: ../../canaille set client:1 f2b0a1421fdf46d684fbe616a1771b62
|
||
msgid ""
|
||
"Update a client and display the edited model in JSON format in the standard "
|
||
"output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete client:1 set 04f98ee9b5254ad58f59cba6824a2ef0
|
||
#: db9ef2c5ffc342fe858b000bc05fbcc8
|
||
msgid "IDENTIFIER should be a client id or client_id"
|
||
msgstr ""
|
||
|
||
#: ../../canaille set consent:1 d8dbf4d59a0e4afcac26174972d6804c
|
||
msgid ""
|
||
"Update a consent and display the edited model in JSON format in the standard "
|
||
"output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete consent:1 set ecded87087fb4018854b4d14a277df8f
|
||
#: bfebd623b59243cb8efe4178994c8209
|
||
msgid "IDENTIFIER should be a consent id or consent_id"
|
||
msgstr ""
|
||
|
||
#: ../../canaille set group:1 1f36d3e6d60343989097aac3e4424ed4
|
||
msgid ""
|
||
"Update a group and display the edited model in JSON format in the standard "
|
||
"output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete group:1 set 772ff82f2ff54593b9ef8dc8e0af8d4f
|
||
#: f5e84ce4a1dc4bcdbf5a660209e2d7d9
|
||
msgid "IDENTIFIER should be a group id or display_name"
|
||
msgstr ""
|
||
|
||
#: ../../canaille set token:1 6534c48546d94e76a03c8ea1521c5cd4
|
||
msgid ""
|
||
"Update a token and display the edited model in JSON format in the standard "
|
||
"output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete token:1 set edecbc4f0f9946c48834bf53a5fbf0f8
|
||
#: 3dacc05a5d1240ea812eb792ed737810
|
||
msgid "IDENTIFIER should be a token id or token_id"
|
||
msgstr ""
|
||
|
||
#: ../../canaille set user:1 da1f8e5fba5f40ad8f20a017e886aa02
|
||
msgid ""
|
||
"Update a user and display the edited model in JSON format in the standard "
|
||
"output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete user:1 set bf3b446f2eda4b26a9ef702f4c6dd0b9
|
||
#: 881aab67b4fb4777a160e9affc77be0c
|
||
msgid "IDENTIFIER should be a user id or user_name"
|
||
msgstr ""
|
||
|
||
#: ../../canaille create:1 563f23f330bc43ed951ca8812fa0c2fc
|
||
msgid "Create models."
|
||
msgstr ""
|
||
|
||
#: ../../canaille create:1 9d4c06295f304ac093848a3de8b716bb
|
||
msgid "The model attributes can be passed as command options::"
|
||
msgstr ""
|
||
|
||
#: ../../canaille create:1 63735ef4eb924ae1ab2a244a018dc3be
|
||
msgid "Displays the created model in JSON format in the standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille create authorizationcode:1 a96e7d0b6bed4a7bb8e0257b08600be1
|
||
msgid ""
|
||
"Create a new authorizationcode and display the created model in JSON format "
|
||
"in the standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille create client:1 41428e12aeae44479602c0f92a840d2c
|
||
msgid ""
|
||
"Create a new client and display the created model in JSON format in the "
|
||
"standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille create consent:1 994455a2e844478bbffe389520751a33
|
||
msgid ""
|
||
"Create a new consent and display the created model in JSON format in the "
|
||
"standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille create group:1 c3b6e110307b45c4b7e8ce07a66a4cf9
|
||
msgid ""
|
||
"Create a new group and display the created model in JSON format in the "
|
||
"standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille create token:1 3774f3cf8635474fb6ba63ac1b57aa1b
|
||
msgid ""
|
||
"Create a new token and display the created model in JSON format in the "
|
||
"standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille create user:1 ae4b9357629c41f2bd3443048f12f734
|
||
msgid ""
|
||
"Create a new user and display the created model in JSON format in the "
|
||
"standard output."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete:1 416fbf5d468742f6af7aa3afe222389c
|
||
msgid "Delete models."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete:1 05ea570bc20b42c9943f9073f58c19f9
|
||
msgid "The command takes a model ID and deletes it::"
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete authorizationcode:1 e73a91f3f9d347d082621014cb60fd7f
|
||
msgid "Delete a authorizationcode."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete client:1 d376d0088bff46ca817210c0ae84ccec
|
||
msgid "Delete a client."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete consent:1 2cd2f844ba974bbaa3c2a84cd7fa1a68
|
||
msgid "Delete a consent."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete group:1 bf80244164a54ae887b7caadf7914dc1
|
||
msgid "Delete a group."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete token:1 3bf34916fadf48139dbcf439545c4276
|
||
msgid "Delete a token."
|
||
msgstr ""
|
||
|
||
#: ../../canaille delete user:1 22a78b7140094b6ebe34988f5b37fec3
|
||
msgid "Delete a user."
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:2 e23c84272ce74d1d87f815825cb4a488
|
||
msgid "Configuration"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:5 90eeb71ed1294fd7bc6bf7f8c8ed5c8c
|
||
msgid "Load the configuration"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:7 f2621ade958b4ffb9815fa8322ca64e5
|
||
msgid ""
|
||
"Canaille can be configured either by a environment variables, environment "
|
||
"file, or by a configuration file."
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:10 37d9f514da104c6aa15bf83cb6303487
|
||
msgid "Configuration file"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:12 88467c2beaea43a19228f85c1f398494
|
||
msgid ""
|
||
"The configuration can be written in `toml` configuration file which path is "
|
||
"passed in the :envvar:`CONFIG` environment variable."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/app/configuration.py:docstring of
|
||
#: canaille.app.configuration.RootSettings:11
|
||
#: ../references/configuration.rst:14 ../references/configuration.rst:94
|
||
#: ../tutorial/databases.rst:23 ../tutorial/databases.rst:37
|
||
#: 1b8aaa7b767b49eb9a81d6663fb6c1e8 bb4c8f23d29248f5abfd0d96af2d80bf
|
||
#: ee90ce99e8a4449fbb7cb28d559147b5 84cfcdaa79ef439cb013e00e3c4cd792
|
||
#: cb517d061c4a4d16ae4a868999611801
|
||
msgid "config.toml"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:26 4f4e3b14ad79434b93659ff0d99e92d5
|
||
msgid ""
|
||
"You can have a look at the :ref:`example file <references/configuration:"
|
||
"Example file>` for inspiration."
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:29 52e72a243eda4c6d8c20601ec11d21ea
|
||
msgid "Environment variables"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:31 5a5db358ab214e86b11ce341a71a4abb
|
||
msgid ""
|
||
"In addition, parameters that have not been set in the configuration file can "
|
||
"be read from environment variables. The way environment variables are parsed "
|
||
"can be read from the `pydantic-settings documentation <https://docs.pydantic."
|
||
"dev/latest/concepts/pydantic_settings/#parsing-environment-variable-"
|
||
"values>`_."
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:36 9c85a8e682a74e9d9d8c3aa79e2d02ba
|
||
msgid ""
|
||
"For environment vars, the separator between sections and variables is a "
|
||
"double underscore: ``__``. For instance, the ``NAME`` var in the "
|
||
"``CANAILLE`` section shown above is ``CANAILLE__NAME``."
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:40 26c9129f81c54386966cffd31c323f14
|
||
msgid "Environment file"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:42 54056c93ac3b40e882bf20789d72fded
|
||
msgid ""
|
||
"Any environment variable can also be written in an environment file, which "
|
||
"path should be passed in the ``ENV_FILE`` environment variable. For "
|
||
"instance, set ``ENV_FILE=.env`` to load a ``.env`` file."
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:45 ba796d7f6bdb4ef5a32865f844ead63e
|
||
msgid ".env"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:63 3c2136aab27c4650acf0d25ced3636e2
|
||
msgid "Configuration methods priority"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:65 6e85c7ec407f4fc68adff17adb6652b2
|
||
msgid ""
|
||
"If a same configuration option is defined by different ways, here is how "
|
||
"Canaille will choose which one to use:"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:67 8857be48d8f54be7aa8d350d5346887a
|
||
msgid ""
|
||
"environment vars have priority over the environment file and the "
|
||
"configuration file;"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:68 d946c715e1c34f55acfe97acc96cab68
|
||
msgid "environment file will have priority over the configuration file."
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:71 369d25ff21b042fbabf703be7b66e138
|
||
msgid "Parameters"
|
||
msgstr ""
|
||
|
||
#: ../../canaille/app/configuration.py:docstring of
|
||
#: canaille.app.configuration.RootSettings:1 2226ecd0f90440d58a4089df736be757
|
||
msgid ""
|
||
"The top-level namespace contains holds the configuration settings unrelated "
|
||
"to Canaille."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/app/configuration.py:docstring of
|
||
#: canaille.app.configuration.RootSettings:4 f53fd6edbc9148c781006d112688f022
|
||
msgid "The configuration paramateres from the following libraries can be used:"
|
||
msgstr ""
|
||
|
||
#: ../../canaille/app/configuration.py:docstring of
|
||
#: canaille.app.configuration.RootSettings:6 0a1ba7d3d9d24c598640a87301549190
|
||
msgid ":doc:`Flask <flask:config>`"
|
||
msgstr ""
|
||
|
||
#: ../../canaille/app/configuration.py:docstring of
|
||
#: canaille.app.configuration.RootSettings:7 6288bee773454f6fb13d7c3c43c0acfe
|
||
msgid ":doc:`Flask-WTF <flask-wtf:config>`"
|
||
msgstr ""
|
||
|
||
#: ../../canaille/app/configuration.py:docstring of
|
||
#: canaille.app.configuration.RootSettings:8 8dc449c88676405aa689c232c0c17eaa
|
||
msgid ":doc:`Flask-Babel <flask-babel:index>`"
|
||
msgstr ""
|
||
|
||
#: ../../canaille/app/configuration.py:docstring of
|
||
#: canaille.app.configuration.RootSettings:9 f0f21a8b4661490ea85203669e05fe2a
|
||
msgid ":doc:`Authlib <authlib:flask/2/authorization-server>`"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.app.configuration.RootSettings.DEBUG:1
|
||
#: aee2c3dead184d3ab7655e0df3b9f66c
|
||
msgid "The Flask :external:py:data:`DEBUG` configuration setting."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.app.configuration.RootSettings.DEBUG:3
|
||
#: da1c3a1146284b0597c12fab8ac713a9
|
||
msgid "This enables debug options."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.app.configuration.RootSettings.DEBUG:7
|
||
#: 22813fdeb3ad46729bf6d91f1a6a799b
|
||
msgid ""
|
||
"This is useful for development but should be absolutely avoided in "
|
||
"production environments."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.app.configuration.RootSettings.PREFERRED_URL_SCHEME:1
|
||
#: 8d9650f0f1c34ab7b888fce27cfcc459
|
||
msgid ""
|
||
"The Flask :external:py:data:`PREFERRED_URL_SCHEME` configuration setting."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.app.configuration.RootSettings.PREFERRED_URL_SCHEME:4
|
||
#: 33538d7dda284e2da14720d9ecf5b81f
|
||
msgid "This sets the url scheme by which canaille will be served."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.app.configuration.RootSettings.SECRET_KEY:1
|
||
#: ca299cb1b21a4aff913e478725dee516
|
||
msgid "The Flask :external:py:data:`SECRET_KEY` configuration setting."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.app.configuration.RootSettings.SECRET_KEY:3
|
||
#: e0e842ea56e7409da386c9fa3b44f45f
|
||
msgid "You MUST change this."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.app.configuration.RootSettings.SERVER_NAME:1
|
||
#: 8aaa9ab83eb245a996e82b25f47a18be
|
||
msgid "The Flask :external:py:data:`SERVER_NAME` configuration setting."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.app.configuration.RootSettings.SERVER_NAME:3
|
||
#: a7a33ff93b6d471e9395fffab55b8497
|
||
msgid "This sets domain name on which canaille will be served."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/configuration.py:docstring of
|
||
#: canaille.core.configuration.CoreSettings:1 49b29a899f644466acba509b0b3e9f00
|
||
msgid "The settings from the ``CANAILLE`` namespace."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/configuration.py:docstring of
|
||
#: canaille.core.configuration.CoreSettings:3 63104b7fc45e4ef39f55f96c7a093f33
|
||
msgid ""
|
||
"Those are all the configuration parameters that controls the behavior of "
|
||
"Canaille."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.ACL:1
|
||
#: 1c134db317ea498d8b595a7a3b2f610e
|
||
msgid ""
|
||
"Mapping of permission groups. See :class:`ACLSettings` for more details."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.ACL:3
|
||
#: c2f72f20b39c4706b4e5ba01db79eb2c
|
||
msgid "The ACL name can be freely chosen. For example::"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.ADMIN_EMAIL:1
|
||
#: da428b02fcc6465ca83593370a8c52c1
|
||
msgid "Administration email contact."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.ADMIN_EMAIL:3
|
||
#: 80265b26992742b4a55529bb9514ef19
|
||
msgid ""
|
||
"In certain special cases (example : questioning about password corruption), "
|
||
"it is necessary to provide an administration contact email."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.EMAIL_CONFIRMATION:1
|
||
#: aae582f58bfa47f2a6f5b32a1b5c3ead
|
||
msgid ""
|
||
"If :py:data:`True`, users will need to click on a confirmation link sent by "
|
||
"email when they want to add a new email."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.EMAIL_CONFIRMATION:4
|
||
#: 35bd824b2f8d4040898ed4dbdb7e599d
|
||
msgid ""
|
||
"By default, this is true if ``SMTP`` is configured, else this is false. If "
|
||
"explicitly set to true and ``SMTP`` is disabled, the email field will be "
|
||
"read-only."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.ENABLE_PASSWORD_COMPROMISSION_CHECK:1
|
||
#: 2bb9ee1a4a1f4c3dac7cd54259173873
|
||
msgid ""
|
||
"If :py:data:`True`, Canaille will check if passwords appears in "
|
||
"compromission databases such as `HIBP <https://haveibeenpwned.com>`_ when "
|
||
"users choose a new one."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.ENABLE_PASSWORD_RECOVERY:1
|
||
#: 9b83a2bb7e5a45358efb53447ed21cda
|
||
msgid ""
|
||
"If :py:data:`False`, then users cannot ask for a password recovery link by "
|
||
"email."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.ENABLE_REGISTRATION:1
|
||
#: ad8746125fae4336a86e7a5a47949ea4
|
||
msgid ""
|
||
"If :py:data:`True`, then users can freely create an account at this instance."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.ENABLE_REGISTRATION:4
|
||
#: 4519e48effe84001a82418bf3a2da190
|
||
msgid ""
|
||
"If email verification is available, users must confirm their email before "
|
||
"the account is created."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.FAVICON:1
|
||
#: ad1dce6bc9dd49608f1556cebf0f44fe
|
||
msgid "You favicon."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.FAVICON:3
|
||
#: 36086dc79c1b485fa6594ef442028011
|
||
msgid "If unset and :attr:`LOGO` is set, then the logo will be used."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.HIDE_INVALID_LOGINS:1
|
||
#: 15d696ce895d4517964f6a9fe0269d30
|
||
msgid ""
|
||
"If :py:data:`True`, when users try to sign in with an invalid login, a "
|
||
"message is shown indicating that the password is wrong, but does not give a "
|
||
"clue whether the login exists or not."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.HIDE_INVALID_LOGINS:5
|
||
#: 8203d7591b394141b0beec099e5a0c8d
|
||
msgid ""
|
||
"If :py:data:`False`, when a user tries to sign in with an invalid login, a "
|
||
"message is shown indicating that the login does not exist."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.HTMX:1
|
||
#: fca447a64b184732b6664c3c20ade0ce
|
||
msgid "Accelerates webpages loading with asynchronous requests."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.INVITATION_EXPIRATION:1
|
||
#: c3295518c8ce46359cb5fc8012267002
|
||
msgid "The validity duration of registration invitations, in seconds."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.INVITATION_EXPIRATION:3
|
||
#: cca98367f271454987d915c9da1deecc
|
||
msgid "Defaults to 2 days."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.JAVASCRIPT:1
|
||
#: f10d5dbbd4054185b5caff2aa7b4602c
|
||
msgid "Enables Javascript to smooth the user experience."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.LANGUAGE:1
|
||
#: caa7570c19d343d8a5350b38ab890a08
|
||
msgid "If a language code is set, it will be used for every user."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.LANGUAGE:3
|
||
#: 2f02910686974fa68a6b3af15a9e1c42
|
||
msgid "If unset, the language is guessed according to the users browser."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGGING:1
|
||
#: aad50a21706943fda6f1cde1c79762fb
|
||
msgid ""
|
||
"Configures the logging output using the python logging configuration format:"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGGING:3
|
||
#: 75bb9ce97f514d3eb50ed11a5fcaf986
|
||
msgid ""
|
||
"if :py:data:`None`, everything is logged in the standard error output the "
|
||
"log level is :py:data:`~logging.DEBUG` if the :attr:`~canaille.app."
|
||
"configuration.RootSettings.DEBUG` setting is :py:data:`True`, else this is :"
|
||
"py:data:`~logging.INFO`"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGGING:6
|
||
#: a8552f90740e4287bd06aab66b4dc85d
|
||
msgid ""
|
||
"if this is a :class:`dict`, it is passed to :func:`logging.config."
|
||
"dictConfig`:"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGGING:7
|
||
#: 1987a5781d6e42af97e3df073b29599b
|
||
msgid ""
|
||
"if this is a :class:`str`, it is expected to be a file path that will be "
|
||
"passed to :func:`logging.config.fileConfig`"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGGING:10
|
||
#: edd8ec5aad1047688bbbc5613d9896f5
|
||
msgid "For example::"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGO:1
|
||
#: 40c46d3aa7bb4e81a857540a99eb3df9
|
||
msgid ""
|
||
"The logo of your organization, this is useful to make your organization "
|
||
"recognizable on login screens."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.MAX_PASSWORD_LENGTH:1
|
||
#: 7f1980ff808c4d0682ddb5d03a50714b
|
||
msgid "Maximum length for user password."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.MAX_PASSWORD_LENGTH:3
|
||
#: a40eddffe3bc4c46ac7624a5f7d40c8f
|
||
msgid ""
|
||
"There is a technical limit with passlib used by sql database of 4096 "
|
||
"characters. If the value entered is 0 or None, or greater than 4096, then "
|
||
"4096 will be retained."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.MIN_PASSWORD_LENGTH:1
|
||
#: 2455bc17b90543f18e8d447f48d22c1f
|
||
msgid "Minimum length for user password."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.MIN_PASSWORD_LENGTH:3
|
||
#: 005b934e855440ae9fd177eb40ccb253
|
||
msgid "It is possible not to set a minimum, by entering None or 0."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.NAME:1
|
||
#: befe22deda144065bcee73d9d0404dea
|
||
msgid "Your organization name."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.NAME:3
|
||
#: 0a659d2aa1994859a59506e97a715ea7
|
||
msgid "Used for display purpose."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.CoreSettings.PASSWORD_COMPROMISSION_CHECK_API_URL:1
|
||
#: 6ab659ea03d349d88fef1b5cdc9da5f8
|
||
msgid "Have i been pwned api url for compromission checks."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.SENTRY_DSN:1
|
||
#: 42626c8f0fa24a3fbfc131099bae6302
|
||
msgid "A `Sentry <https://sentry.io>`_ DSN to collect the exceptions."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.SENTRY_DSN:3
|
||
#: b29a9995f9b04c71a953d7ea902bd1f5
|
||
msgid "This is useful for tracking errors in test and production environments."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.SMTP:1
|
||
#: 78b26880da2746c583f686747b26f179
|
||
msgid "The settings related to SMTP and mail configuration."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.SMTP:3
|
||
#: 24787179b702424697f1fe11214d1f9c
|
||
msgid ""
|
||
"If unset, mail-related features like password recovery won't be enabled."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.THEME:1
|
||
#: 65f9f8cf44c347b9b18a9bd8e3624c6b
|
||
msgid "The name of a theme in the 'theme' directory, or a path to a theme."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.THEME:3
|
||
#: a930cadcbbaf40e59f78c34a6fea099e
|
||
msgid ""
|
||
"Defaults to ``default``. Theming is done with `flask-themer <https://github."
|
||
"com/tktech/flask-themer>`_."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.TIMEZONE:1
|
||
#: 60a19e875a924f2ca2f466cc2a3de293
|
||
msgid ""
|
||
"The timezone in which datetimes will be displayed to the users (e.g. "
|
||
"``CEST``)."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.CoreSettings.TIMEZONE:4
|
||
#: 3674c492480c4bc8877913002b54efa1
|
||
msgid "If unset, the server timezone will be used."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/configuration.py:docstring of
|
||
#: canaille.core.configuration.SMTPSettings:1 0513a51a39d44f719e5bf3b7abfe7224
|
||
msgid ""
|
||
"The SMTP configuration. Belong in the ``CANAILLE.SMTP`` namespace. If unset, "
|
||
"mail related features will be disabled, such as mail verification or "
|
||
"password recovery emails."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/configuration.py:docstring of
|
||
#: canaille.core.configuration.SMTPSettings:5 2b30db6216b44d98973d7401cd778e03
|
||
msgid ""
|
||
"By default, Canaille will try to send mails from localhost without "
|
||
"authentication."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.SMTPSettings.FROM_ADDR:1
|
||
#: 60a234eca526445b86c8669fbfda12c5
|
||
msgid "The sender for Canaille mails."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.SMTPSettings.FROM_ADDR:3
|
||
#: 0ed3035ba98243e3814d51329ceac05f
|
||
msgid "Some mail provider might require a valid sender address."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.SMTPSettings.HOST:1
|
||
#: 734742323e1a40e482a2433adbed3cf9
|
||
msgid "The SMTP host."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.SMTPSettings.LOGIN:1
|
||
#: 6b56c482d9274a7d9b308055ce3d8b07
|
||
msgid "The SMTP login."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.SMTPSettings.PASSWORD:1
|
||
#: 8ca424cbdc7647a99400ae460510a183
|
||
msgid "The SMTP password."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.SMTPSettings.PORT:1
|
||
#: f581660baf5a4637974640c3d253692f
|
||
msgid "The SMTP port."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.SMTPSettings.SSL:1
|
||
#: 129075d9b7284662b50893663f3b3c74
|
||
msgid "Whether to use SSL to connect to the SMTP server."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.SMTPSettings.TLS:1
|
||
#: b34e44fef5b24697bab696419b926d6d
|
||
msgid "Whether to use TLS to connect to the SMTP server."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/configuration.py:docstring of
|
||
#: canaille.core.configuration.ACLSettings:1 ddbf39ff35684a7c8be7dd8442348d9b
|
||
msgid "Access Control List settings. Belong in the ``CANAILLE.ACL`` namespace."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/configuration.py:docstring of
|
||
#: canaille.core.configuration.ACLSettings:3 fb2bf8e9b559475fa0da8a5a9a716d1b
|
||
msgid ""
|
||
"You can define access controls that define what users can do on canaille An "
|
||
"access control consists in a :attr:`FILTER` to match users, a list of :attr:"
|
||
"`PERMISSIONS` matched users will be able to perform, and fields users will "
|
||
"be able to :attr:`READ` and :attr:`WRITE`. Users matching several filters "
|
||
"will cumulate permissions."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.ACLSettings.FILTER:1
|
||
#: 44a6412c07e74f10991a803bec3ffd5b
|
||
msgid ":attr:`FILTER` can be:"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.ACLSettings.FILTER:3
|
||
#: a46c99d48a184f8f9cbbd60fd0113bd9
|
||
msgid ""
|
||
":py:data:`None`, in which case all the users will match this access control"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.ACLSettings.FILTER:4
|
||
#: 3b80807a79704eb9b5c53f31319a334f
|
||
msgid ""
|
||
"a mapping where keys are user attributes name and the values those user "
|
||
"attribute values. All the values must be matched for the user to be part of "
|
||
"the access control."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.ACLSettings.FILTER:7
|
||
#: 53ad291e288c490abd5b1e854132a0ef
|
||
msgid ""
|
||
"a list of those mappings. If a user values match at least one mapping, then "
|
||
"the user will be part of the access control"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.ACLSettings.FILTER:10
|
||
#: eb01b4eb724941cab7f44d69c0627b1e
|
||
msgid "Here are some examples::"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.ACLSettings.PERMISSIONS:1
|
||
#: 75a4d0c394fa4aebbb48d077e63aa0f0
|
||
msgid ""
|
||
"A list of :class:`Permission` users in the access control will be able to "
|
||
"manage. For example::"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.ACLSettings.READ:1
|
||
#: d3e143b82c304e238a797124231f644f
|
||
msgid ""
|
||
"A list of :class:`~canaille.core.models.User` attributes that users in the "
|
||
"ACL will be able to read."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.ACLSettings.WRITE:1
|
||
#: cd5c4a6863b3455795388ea58d2f8ff1
|
||
msgid ""
|
||
"A list of :class:`~canaille.core.models.User` attributes that users in the "
|
||
"ACL will be able to edit."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/configuration.py:docstring of
|
||
#: canaille.core.configuration.Permission:1 d0fc68105eb54d359eb01628902767b5
|
||
msgid "The permissions that can be assigned to users."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/configuration.py:docstring of
|
||
#: canaille.core.configuration.Permission:3 8f3355f64e2c490ab0e8b4765dca8781
|
||
msgid ""
|
||
"The permissions are intended to be used in :attr:`ACLSettings <canaille.core."
|
||
"configuration.ACLSettings.PERMISSIONS>`."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.Permission.DELETE_ACCOUNT:1
|
||
#: 500cfd5a09554ac0b3efb8801a314e38
|
||
msgid "Allows users to delete their account."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.Permission.DELETE_ACCOUNT:3
|
||
#: cca431c321484569862b3a05616c7907
|
||
msgid ""
|
||
"If used with :attr:`~canaille.core.configuration.Permission.MANAGE_USERS`, "
|
||
"users can delete any account."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.Permission.EDIT_SELF:1
|
||
#: 6dc188b41f5440319e87c333aea28060
|
||
msgid "Allows users to edit their own profile."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.core.configuration.Permission.IMPERSONATE_USERS:1
|
||
#: 113e6c4d2b714be79d746c84a0bde30a
|
||
msgid "Allows users to take the identity of another user."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.Permission.MANAGE_GROUPS:1
|
||
#: 9531fd7773fe46f78f3da23f5d7e6f02
|
||
msgid "Allows group edition and creation."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.Permission.MANAGE_OIDC:1
|
||
#: 6a14ecfbecc7402b90c1f984af552750
|
||
msgid "Allows OpenID Connect client managements."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.Permission.MANAGE_USERS:1
|
||
#: 7d115497bd7e4284b71cee12f6012e06
|
||
msgid "Allows other users management."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.configuration.Permission.USE_OIDC:1
|
||
#: 5e48261fd5c9437eb453e703f93703b5
|
||
msgid "Allows OpenID Connect authentication."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/configuration.py:docstring of
|
||
#: canaille.oidc.configuration.OIDCSettings:1 63057e3d73a14c63bbe40bc95a0e4c84
|
||
msgid "OpenID Connect settings."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/configuration.py:docstring of
|
||
#: canaille.oidc.configuration.OIDCSettings:3 035105e6e931419a8302feadec577ed6
|
||
msgid "Belong in the ``CANAILLE_OIDC`` namespace."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.configuration.OIDCSettings.DYNAMIC_CLIENT_REGISTRATION_OPEN:1
|
||
#: fba0c11bf0f648909450d12e1ceffdb9
|
||
msgid ""
|
||
"Whether a token is needed for the RFC7591 dynamical client registration."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.configuration.OIDCSettings.DYNAMIC_CLIENT_REGISTRATION_OPEN:3
|
||
#: f5ba930ce26f4588b539da7703aafd4d
|
||
msgid ""
|
||
"If :py:data:`True`, no token is needed to register a client. If :py:data:"
|
||
"`False`, dynamical client registration needs a token defined in :attr:"
|
||
"`DYNAMIC_CLIENT_REGISTRATION_TOKENS`."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.configuration.OIDCSettings.DYNAMIC_CLIENT_REGISTRATION_TOKENS:1
|
||
#: 092b15419a354a5888a9f80ab6194696
|
||
msgid "A list of tokens that can be used for dynamic client registration."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.OIDCSettings.JWT:1
|
||
#: 9cd2e236fdb14317b0ffed9a3d2608bb
|
||
msgid "JSON Web Token settings."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.OIDCSettings.REQUIRE_NONCE:1
|
||
#: fa7308da6bb547ae821995b6d7995ad1
|
||
msgid "Force the nonce exchange during the authentication flows."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.OIDCSettings.REQUIRE_NONCE:3
|
||
#: 0c8ebdd95ff84eca839a0b3e755815e8
|
||
msgid "This adds security but may not be supported by all clients."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/configuration.py:docstring of
|
||
#: canaille.oidc.configuration.JWTSettings:1 37bc9fb542044bd794610b97da9255f3
|
||
msgid "JSON Web Token settings. Belong in the ``CANAILLE_OIDC.JWT`` namespace."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/configuration.py:docstring of
|
||
#: canaille.oidc.configuration.JWTSettings:3 13ef6c0a21924214b46130443a178a3b
|
||
msgid "You can generate a RSA keypair with::"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.ALG:1
|
||
#: d2bc59d1182f47bea20962eb0acc5690
|
||
msgid "The key algorithm."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.EXP:1
|
||
#: f282a838950942ea9e15a209546aece5
|
||
msgid "The time the JWT will be valid, in seconds."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.ISS:1
|
||
#: 8ad74727c039426d84a5df7154d85088
|
||
msgid "The URI of the identity provider."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.KTY:1
|
||
#: cc46bfa52a58479ebeeabc645f0efbee
|
||
msgid "The key type."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.PRIVATE_KEY:1
|
||
#: 521a0d91f9c54a45b362036aeabf476b
|
||
msgid "The private key."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.PRIVATE_KEY:3
|
||
#: canaille.oidc.configuration.JWTSettings.PUBLIC_KEY:3
|
||
#: 8f11d684881944cd8a2e7a7bcbb48c48 b8a7bf70bb9640bcb8ffd98c27129eff
|
||
msgid ""
|
||
"If :py:data:`None` and debug mode is enabled, then an in-memory key will be "
|
||
"used."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.PUBLIC_KEY:1
|
||
#: f0f19ad86cb94cc7b63447e2a6d6ef56
|
||
msgid "The public key."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/configuration.py:docstring of
|
||
#: canaille.oidc.configuration.JWTMappingSettings:1
|
||
#: 1380be8739ba4fbab5425af1c0253066
|
||
msgid "Mapping between the user model and the JWT fields."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/configuration.py:docstring of
|
||
#: canaille.oidc.configuration.JWTMappingSettings:3
|
||
#: 6f4c5c2cbd07499c972d2f1ab29ffa1e
|
||
msgid "Fields are evaluated with jinja. A ``user`` var is available."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/sql/configuration.py:docstring of
|
||
#: canaille.backends.sql.configuration.SQLSettings:1
|
||
#: 8a43c250075c4918b0ce4204fa803047
|
||
msgid "Settings related to the SQL backend."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/sql/configuration.py:docstring of
|
||
#: canaille.backends.sql.configuration.SQLSettings:3
|
||
#: 038af6ccc90c4711bf2630c27656a810
|
||
msgid "Belong in the ``CANAILLE_SQL`` namespace."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.sql.configuration.SQLSettings.DATABASE_URI:1
|
||
#: 1aacc345a8b74b12af594ae00bb018d6
|
||
msgid "The SQL server URI. For example::"
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/ldap/configuration.py:docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings:1
|
||
#: 3f3caf7b34464a66a3616e93568df5d0
|
||
msgid "Settings related to the LDAP backend."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/ldap/configuration.py:docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings:3
|
||
#: dfa0746894e344faa806b939a64e1bc4
|
||
msgid "Belong in the ``CANAILLE_LDAP`` namespace."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.BIND_DN:1
|
||
#: 6bfbb516f18341ccb29ba837eee1182e
|
||
msgid "The LDAP bind DN."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.BIND_PW:1
|
||
#: 2f6f3c3c7b4946898c03f95709e8ada4
|
||
msgid "The LDAP bind password."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.GROUP_BASE:1
|
||
#: 6d51a73361254d7b83fce929ae2b6b37
|
||
msgid "The LDAP node under which groups will be looked for and saved."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.GROUP_BASE:3
|
||
#: 59bb594131944870a7bdbffcec6cb47b
|
||
msgid "For instance `\"ou=groups,dc=mydomain,dc=tld\"`."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.GROUP_CLASS:1
|
||
#: 6ef1fa2af1cb49d48dc49e16da349186
|
||
msgid "The object class to use for creating new groups."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.GROUP_NAME_ATTRIBUTE:1
|
||
#: 6b02bb2acfa949848ac24822ba9e65a2
|
||
msgid "The attribute to use to identify a group."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.GROUP_RDN:1
|
||
#: d4b05df5c7c44d4aa00e29be5efbe08b
|
||
msgid "The attribute to identify an object in the Group DN."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.ROOT_DN:1
|
||
#: 1dfee889fb7348d39a4fd73315b92f0f
|
||
msgid "The LDAP root DN."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.TIMEOUT:1
|
||
#: bf016c8880b2441ebc1f7eb63c472e1f
|
||
msgid "The LDAP connection timeout."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.URI:1
|
||
#: f2d63d56281a4ac9bf59a566fca49efb
|
||
msgid "The LDAP server URI."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.USER_BASE:1
|
||
#: 2b9e8a84a0a741dba1b0eb8183d14a91
|
||
msgid "The LDAP node under which users will be looked for and saved."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.USER_BASE:3
|
||
#: 7e3ac032d5bd418482f13ab7c81d1515
|
||
msgid "For instance `ou=users,dc=mydomain,dc=tld`."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.USER_CLASS:1
|
||
#: 5791e76405f94f38b07650cf43719cf8
|
||
msgid "The object class to use for creating new users."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.USER_FILTER:1
|
||
#: d5ccfe3b5d7e438389f98cad6718a9d0
|
||
msgid "Filter to match users on sign in."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.USER_FILTER:3
|
||
#: 737d190e512f480a9227e6fe72f96c26
|
||
msgid ""
|
||
"For instance ``(|(uid={{ login }})(mail={{ login }}))``. Jinja syntax is "
|
||
"supported and a ``login`` variable is available, containing the value passed "
|
||
"in the login field."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.backends.ldap.configuration.LDAPSettings.USER_RDN:1
|
||
#: b7d504ef3c74424abeccc8ad35072d0f
|
||
msgid "The attribute to identify an object in the User DN."
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:90 d0a193b9740940ceac9bbb0b609c7b38
|
||
msgid "Example file"
|
||
msgstr ""
|
||
|
||
#: ../references/configuration.rst:92 380ab48a596a497789c004a25fd645c8
|
||
msgid "Here is a configuration file example:"
|
||
msgstr ""
|
||
|
||
#: ../references/index.rst:2 7aedfd273422477bb60f319eb4c1eb09
|
||
msgid "References"
|
||
msgstr ""
|
||
|
||
#: ../references/models.rst:2 40ab2b878a534ca38780473aa8c0dd24
|
||
msgid "Data models"
|
||
msgstr ""
|
||
|
||
#: ../references/models.rst:4 fc86419b230d4b3ea107617213675e38
|
||
msgid ""
|
||
"This reference details the data models used by Canaille. This is mostly "
|
||
"useful for developers."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/models.py:docstring of
|
||
#: canaille.backends.models.BackendModel:1 canaille.backends.models.Model:1
|
||
#: af7b8f2e8eae457f8451e659c3213675 0d1f4ecf6c974902b15375ec2f545d11
|
||
msgid "Bases: :py:class:`object`"
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/models.py:docstring of
|
||
#: canaille.backends.models.BackendModel:1 5c4d9070fe3a46a695c06ef143b7b3e0
|
||
msgid "The backend model abstract class."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/models.py:docstring of
|
||
#: canaille.backends.models.BackendModel:3 51d88470412841bdb28daefe752259c8
|
||
msgid ""
|
||
"It details all the methods and attributes that are expected to be "
|
||
"implemented for every model and for every backend."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/models.py:docstring of
|
||
#: canaille.backends.models.Model:1 91a5b49dc4f54e4ba3acea5e80114ad6
|
||
msgid "The model abstract class."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/models.py:docstring of
|
||
#: canaille.backends.models.Model:3 05f702c2e3324742a9840c46621f02e7
|
||
msgid "It details all the common attributes shared by every models."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.backends.models.Model.created:1
|
||
#: 55c80d78a6514379b68db68d53d08628
|
||
msgid ""
|
||
"The :class:`~datetime.datetime` that the resource was added to the service "
|
||
"provider."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.backends.models.Model.id:1
|
||
#: 6c1d3282e98e4d7b96213c626e92665a
|
||
msgid ""
|
||
"A unique identifier for a SCIM resource as defined by the service provider. "
|
||
"Id will be :py:data:`None` until the :meth:`~canaille.backends.models."
|
||
"BackendModel.save` method is called."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.backends.models.Model.id:5
|
||
#: 64c1848034b34d2086fa0d50e1b94a98
|
||
msgid ""
|
||
"Each representation of the resource MUST include a non-empty \"id\" value. "
|
||
"This identifier MUST be unique across the SCIM service provider's entire set "
|
||
"of resources. It MUST be a stable, non- reassignable identifier that does "
|
||
"not change when the same resource is returned in subsequent requests. The "
|
||
"value of the \"id\" attribute is always issued by the service provider and "
|
||
"MUST NOT be specified by the client. The string \"bulkId\" is a reserved "
|
||
"keyword and MUST NOT be used within any unique identifier value. The "
|
||
"attribute characteristics are \"caseExact\" as \"true\", a mutability of "
|
||
"\"readOnly\", and a \"returned\" characteristic of \"always\". See Section "
|
||
"9 for additional considerations regarding privacy."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/models.py:docstring of
|
||
#: canaille.backends.models.Model.identifier:1 bd6bdb35102f4e4d803a072d6c012255
|
||
msgid ""
|
||
"Returns a unique value that will be used to identify the model instance."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/backends/models.py:docstring of
|
||
#: canaille.backends.models.Model.identifier:4 3ee0208a12e4453abe733d48f8046054
|
||
msgid ""
|
||
"This value will be used in URLs in canaille, so it should be unique and "
|
||
"short."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.backends.models.Model.last_modified:1
|
||
#: 339106d4e64c4cce82c7b4eb3e783713
|
||
msgid ""
|
||
"The most recent :class:`~datetime.datetime` that the details of this "
|
||
"resource were updated at the service provider."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.backends.models.Model.last_modified:4
|
||
#: c7d7e9d90b744b41ac4899977c14174f
|
||
msgid ""
|
||
"If this resource has never been modified since its initial creation, the "
|
||
"value MUST be the same as the value of :attr:`~canaille.backends.models."
|
||
"Model.created`."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of canaille.core.models.Group:1
|
||
#: canaille.core.models.User:1 ../../canaille/oidc/basemodels.py:docstring
|
||
#: canaille.oidc.basemodels.AuthorizationCode:1
|
||
#: canaille.oidc.basemodels.Client:1 canaille.oidc.basemodels.Consent:1
|
||
#: canaille.oidc.basemodels.Token:1 d3ae97f457864dbf953ac9a3cfc043e2
|
||
#: c8d3896a864d4331a8d5532b312376db c1c3e9ca21a04c1d851e4a75082b1c90
|
||
#: 617fa31919c44666a814c7071a920963 dcf0ef56be70476ea2a10f0c1a8e0842
|
||
#: eca1a3c4db6248bab304ef1fbaf08c3a
|
||
msgid "Bases: :py:class:`~canaille.backends.models.Model`"
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of canaille.core.models.Group:1
|
||
#: fcf6434c92de4c0e9ae1790f19a43d8c
|
||
msgid ""
|
||
"User model, based on the `SCIM Group schema <https://datatracker.ietf.org/"
|
||
"doc/html/rfc7643#section-4.2>`_."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.Group.display_name:1
|
||
#: 6ae4c021384e45b3b90ca7840c9caa48
|
||
msgid "A human-readable name for the Group."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.Group.display_name:3
|
||
#: canaille.oidc.basemodels.Client.client_id:1 94bf457053a8408a80e8157f385e6127
|
||
#: 8ef14562e7c1440e89a45a65c05b07c4
|
||
msgid "REQUIRED."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.Group.members:1
|
||
#: 0b61dbdad02b48bbb9a9ace3f9ce130a
|
||
msgid "A list of members of the Group."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.Group.members:3
|
||
#: 4f5d6c5417ce40c39617fed66f507f2d
|
||
msgid ""
|
||
"While values MAY be added or removed, sub-attributes of members are "
|
||
"\"immutable\". The \"value\" sub-attribute contains the value of an \"id\" "
|
||
"attribute of a SCIM resource, and the \"$ref\" sub-attribute must be the URI "
|
||
"of a SCIM resource such as a \"User\", or a \"Group\". The intention of the "
|
||
"\"Group\" type is to allow the service provider to support nested groups. "
|
||
"Service providers MAY require clients to provide a non-empty value by "
|
||
"setting the \"required\" attribute characteristic of a sub-attribute of the "
|
||
"\"members\" attribute in the \"Group\" resource schema."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of canaille.core.models.User:1
|
||
#: ea9a3214f2fe40079b36d4acc3993d0b
|
||
msgid ""
|
||
"User model, based on the `SCIM User schema <https://datatracker.ietf.org/doc/"
|
||
"html/rfc7643#section-4.1>`_, `Entreprise User Schema Extension <https://"
|
||
"datatracker.ietf.org/doc/html/rfc7643#section-4.3>`_ and `SCIM Password "
|
||
"Management Extension <https://datatracker.ietf.org/doc/html/draft-hunt-scim-"
|
||
"password-mgmt-00.html>`_ draft. Attribute description is based on SCIM and "
|
||
"put there for information purpose. The description may not fit the current "
|
||
"implementation in Canaille."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of canaille.core.models.User.can:1
|
||
#: 50465e6a043e4772901bbc25136c15c7
|
||
msgid ""
|
||
"Whether or not the user has the :class:`~canaille.core.configuration."
|
||
"Permission` according to the :class:`configuration <canaille.core."
|
||
"configuration.ACLSettings>`."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.department:1
|
||
#: 300ebcf15c3d4ee8b50478aa38113f2f
|
||
msgid "Identifies the name of a department."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.display_name:1
|
||
#: 44d18f2b6f5147d7bb381e18daf093e3
|
||
msgid "The name of the user, suitable for display to end-users."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.display_name:3
|
||
#: c04b6da17ce14862afd1911eb9fda1fd
|
||
msgid ""
|
||
"Each user returned MAY include a non-empty displayName value. The name "
|
||
"SHOULD be the full name of the User being described, if known (e.g., \"Babs "
|
||
"Jensen\" or \"Ms. Barbara J Jensen, III\") but MAY be a username or handle, "
|
||
"if that is all that is available (e.g., \"bjensen\"). The value provided "
|
||
"SHOULD be the primary textual label by which this User is normally displayed "
|
||
"by the service provider when presenting it to end-users."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.emails:1
|
||
#: c7a7d69b175742f692f41bfdff6d3957
|
||
msgid "Email addresses for the User."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.emails:3
|
||
#: 63f46cb0c21a4fa4b8b0a720c8d14248
|
||
msgid ""
|
||
"The value SHOULD be specified according to [RFC5321]. Service providers "
|
||
"SHOULD canonicalize the value according to [RFC5321], e.g., "
|
||
"\"bjensen@example.com\" instead of \"bjensen@EXAMPLE.COM\". The \"display\" "
|
||
"sub-attribute MAY be used to return the canonicalized representation of the "
|
||
"email value. The \"type\" sub-attribute is used to provide a classification "
|
||
"meaningful to the (human) user. The user interface should encourage the use "
|
||
"of basic values of \"work\", \"home\", and \"other\" and MAY allow "
|
||
"additional type values to be used at the discretion of SCIM clients."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.employee_number:1
|
||
#: 3c9e8a305a2e45188d1991241730c384
|
||
msgid ""
|
||
"A string identifier, typically numeric or alphanumeric, assigned to a "
|
||
"person, typically based on order of hire or association with an organization."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.family_name:1
|
||
#: dd49515b6ca4486487bbb848d32ec95d
|
||
msgid ""
|
||
"The family name of the User, or last name in most Western languages (e.g., "
|
||
"\"Jensen\" given the full name \"Ms. Barbara Jane Jensen, III\")."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.formatted_address:1
|
||
#: f80305cee214421eb76ae29dd6697765
|
||
msgid ""
|
||
"The full mailing address, formatted for display or use with a mailing label."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.formatted_address:4
|
||
#: 85a0ba3e7b064d75b6bb0f9135fb23c1
|
||
msgid "This attribute MAY contain newlines."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.formatted_name:1
|
||
#: 4e458944ffe74d00bfc78e91f7f4b925
|
||
msgid ""
|
||
"The full name, including all middle names, titles, and suffixes as "
|
||
"appropriate, formatted for display (e.g., \"Ms. Barbara Jane Jensen, III\")."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.given_name:1
|
||
#: f44fded253494128a007b56f7303dc14
|
||
msgid ""
|
||
"The given name of the User, or first name in most Western languages (e.g., "
|
||
"\"Barbara\" given the full name \"Ms. Barbara Jane Jensen, III\")."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.groups:1
|
||
#: e31e09adf6404439bf17d6aab21fff32
|
||
msgid ""
|
||
"A list of groups to which the user belongs, either through direct "
|
||
"membership, through nested groups, or dynamically calculated."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.groups:4
|
||
#: c05221c0bcca4718bfa6fdb9519fe95e
|
||
msgid ""
|
||
"The values are meant to enable expression of common group-based or role-"
|
||
"based access control models, although no explicit authorization model is "
|
||
"defined. It is intended that the semantics of group membership and any "
|
||
"behavior or authorization granted as a result of membership are defined by "
|
||
"the service provider. The canonical types \"direct\" and \"indirect\" are "
|
||
"defined to describe how the group membership was derived. Direct group "
|
||
"membership indicates that the user is directly associated with the group and "
|
||
"SHOULD indicate that clients may modify membership through the \"Group\" "
|
||
"resource. Indirect membership indicates that user membership is transitive "
|
||
"or dynamic and implies that clients cannot modify indirect group membership "
|
||
"through the \"Group\" resource but MAY modify direct group membership "
|
||
"through the \"Group\" resource, which may influence indirect memberships. "
|
||
"If the SCIM service provider exposes a \"Group\" resource, the \"value\" sub-"
|
||
"attribute MUST be the \"id\", and the \"$ref\" sub-attribute must be the URI "
|
||
"of the corresponding \"Group\" resources to which the user belongs. Since "
|
||
"this attribute has a mutability of \"readOnly\", group membership changes "
|
||
"MUST be applied via the \"Group\" Resource (Section 4.2). This attribute "
|
||
"has a mutability of \"readOnly\"."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of
|
||
#: canaille.core.models.User.has_password:1 995c5dd87f84486b866861819560cddf
|
||
msgid "Check whether a password has been set for the user."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.locality:1
|
||
#: 6392444bc3f54ec2b7a2e6d76dcebfd9
|
||
msgid "The city or locality component."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.lock_date:1
|
||
#: 52b1f476fb584fa89da42a63597ba27d
|
||
msgid "A DateTime indicating when the resource was locked."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of
|
||
#: canaille.core.models.User.locked:1 11adeee0c9264a899a29f6650947d5f9
|
||
msgid "Whether the user account has been locked or has expired."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.organization:1
|
||
#: 7f2c3e4f3c354bedbccde4710263b02f
|
||
msgid "Identifies the name of an organization."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:1
|
||
#: 072e6b6f57ea480eb08da8b2014e78fc
|
||
msgid ""
|
||
"This attribute is intended to be used as a means to set, replace, or compare "
|
||
"(i.e., filter for equality) a password. The cleartext value or the hashed "
|
||
"value of a password SHALL NOT be returnable by a service provider. If a "
|
||
"service provider holds the value locally, the value SHOULD be hashed. When "
|
||
"a password is set or changed by the client, the cleartext password SHOULD be "
|
||
"processed by the service provider as follows:"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:9
|
||
#: ad7fb50b57bf4a0eaf4e0e96899afad2
|
||
msgid ""
|
||
"Prepare the cleartext value for international language comparison. See "
|
||
"Section 7.8 of [RFC7644]."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:12
|
||
#: 46d03fb43b2e40cc9f2ad6ea3dd511ff
|
||
msgid ""
|
||
"Validate the value against server password policy. Note: The definition and "
|
||
"enforcement of password policy are beyond the scope of this document."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:16
|
||
#: 72ece62774ba4f9c9ef5ddf163d12af4
|
||
msgid ""
|
||
"Ensure that the value is encrypted (e.g., hashed). See Section 9.2 for "
|
||
"acceptable hashing and encryption handling when storing or persisting for "
|
||
"provisioning workflow reasons."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:20
|
||
#: 094d9a68c6b743f3af8832f6fe75e71e
|
||
msgid ""
|
||
"A service provider that immediately passes the cleartext value on to another "
|
||
"system or programming interface MUST pass the value directly over a secured "
|
||
"connection (e.g., Transport Layer Security (TLS)). If the value needs to be "
|
||
"temporarily persisted for a period of time (e.g., because of a workflow) "
|
||
"before provisioning, then the value MUST be protected by some method, such "
|
||
"as encryption."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:28
|
||
#: a4f2fcdde65c4774a2cb672677275686
|
||
msgid ""
|
||
"Testing for an equality match MAY be supported if there is an existing "
|
||
"stored hashed value. When testing for equality, the service provider:"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:32
|
||
#: 7595e72df7db44f9b6c42796e830f12b
|
||
msgid ""
|
||
"Prepares the filter value for international language comparison. See "
|
||
"Section 7.8 of [RFC7644]."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:35
|
||
#: 61b66fa2e8814634889657f8d0edfab0
|
||
msgid ""
|
||
"Generates the salted hash of the filter value and tests for a match with the "
|
||
"locally held value."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.password:38
|
||
#: a7cfcbc3765b4f78a7155e4dd9415a1e
|
||
msgid ""
|
||
"The mutability of the password attribute is \"writeOnly\", indicating that "
|
||
"the value MUST NOT be returned by a service provider in any form (the "
|
||
"attribute characteristic \"returned\" is \"never\")."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.phone_numbers:1
|
||
#: 9c94598375724785b44ef15df37f51e4
|
||
msgid "Phone numbers for the user."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.phone_numbers:3
|
||
#: 5dd8841664b34a61b816f4809063e0c2
|
||
msgid ""
|
||
"The value SHOULD be specified according to the format defined in [RFC3966], "
|
||
"e.g., 'tel:+1-201-555-0123'. Service providers SHOULD canonicalize the "
|
||
"value according to [RFC3966] format, when appropriate. The \"display\" sub-"
|
||
"attribute MAY be used to return the canonicalized representation of the "
|
||
"phone number value. The sub- attribute \"type\" often has typical values of "
|
||
"\"work\", \"home\", \"mobile\", \"fax\", \"pager\", and \"other\" and MAY "
|
||
"allow more types to be defined by the SCIM clients."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.photo:1
|
||
#: 291043b969b54c499248e5cd4137ba46
|
||
msgid ""
|
||
"A URI that is a uniform resource locator (as defined in Section 1.1.3 of "
|
||
"[RFC3986]) that points to a resource location representing the user's image."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.photo:5
|
||
#: d20c5f4d9f154642a7e5197897542d16
|
||
msgid ""
|
||
"The resource MUST be a file (e.g., a GIF, JPEG, or PNG image file) rather "
|
||
"than a web page containing an image. Service providers MAY return the same "
|
||
"image in different sizes, although it is recognized that no standard for "
|
||
"describing images of various sizes currently exists. Note that this "
|
||
"attribute SHOULD NOT be used to send down arbitrary photos taken by this "
|
||
"user; instead, profile photos of the user that are suitable for display when "
|
||
"describing the user should be sent. Instead of the standard canonical values "
|
||
"for type, this attribute defines the following canonical values to represent "
|
||
"popular photo sizes: \"photo\" and \"thumbnail\"."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.postal_code:1
|
||
#: 43d41ad405ca4db99f51e8c857e137e3
|
||
msgid "The zip code or postal code component."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.preferred_language:1
|
||
#: c8f7b6dd86d646f191246ff0070da604
|
||
msgid ""
|
||
"Indicates the user's preferred written or spoken languages and is generally "
|
||
"used for selecting a localized user interface."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.preferred_language:4
|
||
#: 7bf574c66b664d229948814478d62a8a
|
||
msgid ""
|
||
"The value indicates the set of natural languages that are preferred. The "
|
||
"format of the value is the same as the HTTP Accept-Language header field "
|
||
"(not including \"Accept-Language:\") and is specified in Section 5.3.5 of "
|
||
"[RFC7231]. The intent of this value is to enable cloud applications to "
|
||
"perform matching of language tags [RFC4647] to the user's language "
|
||
"preferences, regardless of what may be indicated by a user agent (which "
|
||
"might be shared), or in an interaction that does not involve a user (such as "
|
||
"in a delegated OAuth 2.0 [RFC6749] style interaction) where normal HTTP "
|
||
"Accept-Language header negotiation cannot take place."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.profile_url:1
|
||
#: 1cb9deea306246f8a148e8cd469da0d8
|
||
msgid ""
|
||
"A URI that is a uniform resource locator (as defined in Section 1.1.3 of "
|
||
"[RFC3986]) and that points to a location representing the user's online "
|
||
"profile (e.g., a web page)."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.profile_url:5
|
||
#: 84b648830c3148ecb4e74a368b850c23
|
||
msgid "URIs are canonicalized per Section 6.2 of [RFC3986]."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of
|
||
#: canaille.core.models.User.readable_fields:1 58a2e21fdb434721a2f63d42d309bdf5
|
||
msgid ""
|
||
"The fields the user can read according to the :class:`configuration "
|
||
"<canaille.core.configuration.ACLSettings>` configuration."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of
|
||
#: canaille.core.models.User.readable_fields:4 13d48165549548f4b93daef3011da021
|
||
msgid ""
|
||
"This does not include the :attr:`writable <canaille.core.models.User."
|
||
"writable_fields>` fields."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.region:1
|
||
#: 6f59b77e31f04e928a5ba62b1e24e768
|
||
msgid "The state or region component."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.street:1
|
||
#: 499ca20e98174187b6a7e067dc8bb99d
|
||
msgid ""
|
||
"The full street address component, which may include house number, street "
|
||
"name, P.O."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.street:4
|
||
#: 9da29eeb9a7749388ec24a3d730cdcca
|
||
msgid ""
|
||
"box, and multi-line extended street address information. This attribute MAY "
|
||
"contain newlines."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.title:1
|
||
#: d210c0de6da84b4f8336209ae9719f87
|
||
msgid "The user's title, such as \"Vice President\"."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.user_name:1
|
||
#: 3fdb69a67da040b1bfb2682e3c8b99d4
|
||
msgid ""
|
||
"A service provider's unique identifier for the user, typically used by the "
|
||
"user to directly authenticate to the service provider."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.core.models.User.user_name:4
|
||
#: 1028aa46fd5b4dc2b9315aabf36ab31c
|
||
msgid ""
|
||
"Often displayed to the user as their unique identifier within the system (as "
|
||
"opposed to \"id\" or \"externalId\", which are generally opaque and not user-"
|
||
"friendly identifiers). Each User MUST include a non-empty userName value. "
|
||
"This identifier MUST be unique across the service provider's entire set of "
|
||
"Users. This attribute is REQUIRED and is case insensitive."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/core/models.py:docstring of
|
||
#: canaille.core.models.User.writable_fields:1 6f4310b43c8c41af8069664ccee7283a
|
||
msgid ""
|
||
"The fields the user can write according to the :class:`configuration "
|
||
"<canaille.core.configuration.ACLSettings>`."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/basemodels.py:docstring of
|
||
#: canaille.oidc.basemodels.AuthorizationCode:1
|
||
#: a121e077c37d4a8cab594a0629893230
|
||
msgid "OpenID Connect temporary authorization code definition."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/basemodels.py:docstring of
|
||
#: canaille.oidc.basemodels.Client:1 176b8928ffc54ed0b7a4b727cdf50387
|
||
msgid ""
|
||
"OpenID Connect client definition, based on the `OAuth 2.0 Dynamic Client "
|
||
"Registration protocols <https://datatracker.ietf.org/doc/html/rfc7591."
|
||
"html>`_ and the `OpenID Connect RP-Initiated Logout <https://openid.net/"
|
||
"specs/openid-connect-rpinitiated-1_0.html>`_ specifications."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.client_id:3
|
||
#: 501569fe51a94e8b9cfee76865f5720a
|
||
msgid ""
|
||
"OAuth 2.0 client identifier string. It SHOULD NOT be currently valid for "
|
||
"any other registered client, though an authorization server MAY issue the "
|
||
"same client identifier to multiple instances of a registered client at its "
|
||
"discretion."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.client_id_issued_at:1
|
||
#: canaille.oidc.basemodels.Client.client_secret:1
|
||
#: canaille.oidc.basemodels.Client.post_logout_redirect_uris:1
|
||
#: 155223b8bff641ed9a0375b3d458c5c9 07db1b312ef9404ca49dd81ae724889b
|
||
#: 897d5adcc02f47e9812b8a57d0f57af5
|
||
msgid "OPTIONAL."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.client_id_issued_at:3
|
||
#: 8f9ab854501246b68994edefd2c22365
|
||
msgid ""
|
||
"Time at which the client identifier was issued. The time is represented as "
|
||
"the number of seconds from 1970-01-01T00:00:00Z as measured in UTC until the "
|
||
"date/time of issuance."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.client_name:1
|
||
#: 8610eab8370a4184937f0d1169b54c51
|
||
msgid ""
|
||
"Human-readable string name of the client to be presented to the end-user "
|
||
"during authorization."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.client_name:4
|
||
#: ce9a8c14a98f4a31b17100c0ca14c199
|
||
msgid ""
|
||
"If omitted, the authorization server MAY display the raw \"client_id\" value "
|
||
"to the end-user instead. It is RECOMMENDED that clients always send this "
|
||
"field. The value of this field MAY be internationalized, as described in "
|
||
"Section 2.2."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.client_secret:3
|
||
#: f737139e11a14b14be8545e1a2c5c0f6
|
||
msgid ""
|
||
"OAuth 2.0 client secret string. If issued, this MUST be unique for each "
|
||
"\"client_id\" and SHOULD be unique for multiple instances of a client using "
|
||
"the same \"client_id\". This value is used by confidential clients to "
|
||
"authenticate to the token endpoint, as described in OAuth 2.0 [RFC6749], "
|
||
"Section 2.3.1."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.basemodels.Client.client_secret_expires_at:1
|
||
#: 01979509cf224c5b8ba2127719435fc8
|
||
msgid "REQUIRED if \"client_secret\" is issued."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.basemodels.Client.client_secret_expires_at:3
|
||
#: 48959dbf918e45ba9c37a50f77a0adf9
|
||
msgid ""
|
||
"Time at which the client secret will expire or 0 if it will not expire. The "
|
||
"time is represented as the number of seconds from 1970-01-01T00:00:00Z as "
|
||
"measured in UTC until the date/time of expiration."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.client_uri:1
|
||
#: 20f5972c57c540f6ab8392896c84be8c
|
||
msgid "URL string of a web page providing information about the client."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.client_uri:3
|
||
#: 30041d9b4c124152a5c0443ff9b2191c
|
||
msgid ""
|
||
"If present, the server SHOULD display this URL to the end-user in a "
|
||
"clickable fashion. It is RECOMMENDED that clients always send this field. "
|
||
"The value of this field MUST point to a valid web page. The value of this "
|
||
"field MAY be internationalized, as described in Section 2.2."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.contacts:1
|
||
#: 5cce7321f5e5400589f9393258dc3a4a
|
||
msgid ""
|
||
"Array of strings representing ways to contact people responsible for this "
|
||
"client, typically email addresses."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.contacts:4
|
||
#: af06fcccdc594f869be314af985cf14c
|
||
msgid ""
|
||
"The authorization server MAY make these contact addresses available to end-"
|
||
"users for support requests for the client. See Section 6 for information on "
|
||
"Privacy Considerations."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:1
|
||
#: b4a5975375c641eaa946ccd90ce211a6
|
||
msgid ""
|
||
"Array of OAuth 2.0 grant type strings that the client can use at the token "
|
||
"endpoint. These grant types are defined as follows:"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:4
|
||
#: bbc3935e899e47f3bafe281f1d888251
|
||
msgid ""
|
||
"\"authorization_code\": The authorization code grant type defined in OAuth "
|
||
"2.0, Section 4.1."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:7
|
||
#: 64449ef0ca7f424c9fab46a991d69d96
|
||
msgid ""
|
||
"\"implicit\": The implicit grant type defined in OAuth 2.0, Section 4.2."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:10
|
||
#: f236e27b48c94daf906f45e1448426c6
|
||
msgid ""
|
||
"\"password\": The resource owner password credentials grant type defined in "
|
||
"OAuth 2.0, Section 4.3."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:13
|
||
#: 9e81137e52f94762be9551134791deaf
|
||
msgid ""
|
||
"\"client_credentials\": The client credentials grant type defined in OAuth "
|
||
"2.0, Section 4.4."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:16
|
||
#: e7293d36a66346228115f0e7a1db1628
|
||
msgid ""
|
||
"\"refresh_token\": The refresh token grant type defined in OAuth 2.0, "
|
||
"Section 6."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:19
|
||
#: 8fcedc410abe4cb4ba32399205c1fdb4
|
||
msgid ""
|
||
"\"urn:ietf:params:oauth:grant-type:jwt-bearer\": The JWT Bearer Token Grant "
|
||
"Type defined in OAuth JWT Bearer Token Profiles [RFC7523]."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:23
|
||
#: 45a990b4f0c3428ca6b0f466163b444d
|
||
msgid ""
|
||
"\"urn:ietf:params:oauth:grant-type:saml2-bearer\": The SAML 2.0 Bearer "
|
||
"Assertion Grant defined in OAuth SAML 2 Bearer Token Profiles [RFC7522]."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:27
|
||
#: da938e538dfb4cbcb06eb0257bae0c5d
|
||
msgid ""
|
||
"If the token endpoint is used in the grant type, the value of this parameter "
|
||
"MUST be the same as the value of the \"grant_type\" parameter passed to the "
|
||
"token endpoint defined in the grant type definition. Authorization servers "
|
||
"MAY allow for other values as defined in the grant type extension process "
|
||
"described in OAuth 2.0, Section 4.5. If omitted, the default behavior is "
|
||
"that the client will use only the \"authorization_code\" Grant Type."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.jwk:1
|
||
#: 61a94c54874e45c7b6d6a0080b303c06
|
||
msgid ""
|
||
"Client's JSON Web Key Set [RFC7517] document value, which contains the "
|
||
"client's public keys."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.jwk:4
|
||
#: 878eeb4b93db4411b3227ebfce480fb2
|
||
msgid ""
|
||
"The value of this field MUST be a JSON object containing a valid JWK Set. "
|
||
"These keys can be used by higher-level protocols that use signing or "
|
||
"encryption. This parameter is intended to be used by clients that cannot "
|
||
"use the \"jwks_uri\" parameter, such as native clients that cannot host "
|
||
"public URLs. The \"jwks_uri\" and \"jwks\" parameters MUST NOT both be "
|
||
"present in the same request or response."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.jwks_uri:1
|
||
#: bdc8f6ae5aa54e2e8cd3968ba2b834e5
|
||
msgid ""
|
||
"URL string referencing the client's JSON Web Key (JWK) Set [RFC7517] "
|
||
"document, which contains the client's public keys."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.jwks_uri:4
|
||
#: f0514e0625524e80b9d71112f8f845fd
|
||
msgid ""
|
||
"The value of this field MUST point to a valid JWK Set document. These keys "
|
||
"can be used by higher-level protocols that use signing or encryption. For "
|
||
"instance, these keys might be used by some applications for validating "
|
||
"signed requests made to the token endpoint when using JWTs for client "
|
||
"authentication [RFC7523]. Use of this parameter is preferred over the "
|
||
"\"jwks\" parameter, as it allows for easier key rotation. The \"jwks_uri\" "
|
||
"and \"jwks\" parameters MUST NOT both be present in the same request or "
|
||
"response."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.logo_uri:1
|
||
#: a8573dc1a7474be593d58ac595763de8
|
||
msgid "URL string that references a logo for the client."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.logo_uri:3
|
||
#: a2ca19d94ea94ee8b9938118fc25f1fa
|
||
msgid ""
|
||
"If present, the server SHOULD display this image to the end-user during "
|
||
"approval. The value of this field MUST point to a valid image file. The "
|
||
"value of this field MAY be internationalized, as described in Section 2.2."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.policy_uri:1
|
||
#: 14d06cf8a7e34fedad15b82247d69d39
|
||
msgid ""
|
||
"URL string that points to a human-readable privacy policy document that "
|
||
"describes how the deployment organization collects, uses, retains, and "
|
||
"discloses personal data."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.policy_uri:5
|
||
#: canaille.oidc.basemodels.Client.tos_uri:5 1ea0d5026129456fbbc197bfce61c98e
|
||
#: 310e5989aee34aeca3a0bda6b100c348
|
||
msgid ""
|
||
"The authorization server SHOULD display this URL to the end-user if it is "
|
||
"provided. The value of this field MUST point to a valid web page. The "
|
||
"value of this field MAY be internationalized, as described in Section 2.2."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.basemodels.Client.post_logout_redirect_uris:3
|
||
#: 50f7bef11f5244e4b91bdd115c92c874
|
||
msgid ""
|
||
"Array of URLs supplied by the RP to which it MAY request that the End-User's "
|
||
"User Agent be redirected using the post_logout_redirect_uri parameter after "
|
||
"a logout has been performed. These URLs SHOULD use the https scheme and MAY "
|
||
"contain port, path, and query parameter components; however, they MAY use "
|
||
"the http scheme, provided that the Client Type is confidential, as defined "
|
||
"in Section 2.1 of OAuth 2.0 [RFC6749], and provided the OP allows the use of "
|
||
"http RP URIs."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.redirect_uris:1
|
||
#: e6a72fe3893b4db4adc05a9684a6dc4a
|
||
msgid ""
|
||
"Array of redirection URI strings for use in redirect-based flows such as the "
|
||
"authorization code and implicit flows."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.redirect_uris:4
|
||
#: d8400c42df344766b3fa56e4d0973700
|
||
msgid ""
|
||
"As required by Section 2 of OAuth 2.0 [RFC6749], clients using flows with "
|
||
"redirection MUST register their redirection URI values. Authorization "
|
||
"servers that support dynamic registration for redirect-based flows MUST "
|
||
"implement support for this metadata value."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.response_types:1
|
||
#: 8be6e16541944c6f9cad4f83c72a13b5
|
||
msgid ""
|
||
"Array of the OAuth 2.0 response type strings that the client can use at the "
|
||
"authorization endpoint. These response types are defined as follows:"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.response_types:5
|
||
#: 460f3e0ea3674308963d0510ac0d6444
|
||
msgid ""
|
||
"\"code\": The authorization code response type defined in OAuth 2.0, Section "
|
||
"4.1."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.response_types:8
|
||
#: a6be11c01465486aa6fc6d52b002b3c6
|
||
msgid ""
|
||
"\"token\": The implicit response type defined in OAuth 2.0, Section 4.2."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.response_types:11
|
||
#: 0629b093e32248559987eb03c2802856
|
||
msgid ""
|
||
"If the authorization endpoint is used by the grant type, the value of this "
|
||
"parameter MUST be the same as the value of the \"response_type\" parameter "
|
||
"passed to the authorization endpoint defined in the grant type definition. "
|
||
"Authorization servers MAY allow for other values as defined in the grant "
|
||
"type extension process is described in OAuth 2.0, Section 4.5. If omitted, "
|
||
"the default is that the client will use only the \"code\" response type."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.scope:1
|
||
#: c8200e01d757418294c72a8c1f4dd013
|
||
msgid ""
|
||
"String containing a space-separated list of scope values (as described in "
|
||
"Section 3.3 of OAuth 2.0 [RFC6749]) that the client can use when requesting "
|
||
"access tokens."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.scope:5
|
||
#: 6b5bfcb30b5443cea8e88e0e0074c1ff
|
||
msgid ""
|
||
"The semantics of values in this list are service specific. If omitted, an "
|
||
"authorization server MAY register a client with a default set of scopes."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.software_id:1
|
||
#: c16d3f6118f24f639ffa8f395fb26d51
|
||
msgid ""
|
||
"A unique identifier string (e.g., a Universally Unique Identifier (UUID)) "
|
||
"assigned by the client developer or software publisher used by registration "
|
||
"endpoints to identify the client software to be dynamically registered."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.software_id:6
|
||
#: dae7107648bc4e498d3924fdff934e29
|
||
msgid ""
|
||
"Unlike \"client_id\", which is issued by the authorization server and SHOULD "
|
||
"vary between instances, the \"software_id\" SHOULD remain the same for all "
|
||
"instances of the client software. The \"software_id\" SHOULD remain the "
|
||
"same across multiple updates or versions of the same piece of software. The "
|
||
"value of this field is not intended to be human readable and is usually "
|
||
"opaque to the client and authorization server."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.software_version:1
|
||
#: c620c60307f64b08a6322573b5dd0561
|
||
msgid ""
|
||
"A version identifier string for the client software identified by "
|
||
"\"software_id\"."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.software_version:4
|
||
#: e0c0f27106824081827201c50fb85ae7
|
||
msgid ""
|
||
"The value of the \"software_version\" SHOULD change on any update to the "
|
||
"client software identified by the same \"software_id\". The value of this "
|
||
"field is intended to be compared using string equality matching and no other "
|
||
"comparison semantics are defined by this specification. The value of this "
|
||
"field is outside the scope of this specification, but it is not intended to "
|
||
"be human readable and is usually opaque to the client and authorization "
|
||
"server. The definition of what constitutes an update to client software "
|
||
"that would trigger a change to this value is specific to the software itself "
|
||
"and is outside the scope of this specification."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.basemodels.Client.token_endpoint_auth_method:1
|
||
#: c226846c2d1c4874bf900ddd10cf4144
|
||
msgid ""
|
||
"String indicator of the requested authentication method for the token "
|
||
"endpoint. Values defined by this specification are:"
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.basemodels.Client.token_endpoint_auth_method:4
|
||
#: aca79c0bc52744e0aedf325049fa2b15
|
||
msgid ""
|
||
"\"none\": The client is a public client as defined in OAuth 2.0, Section "
|
||
"2.1, and does not have a client secret."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.basemodels.Client.token_endpoint_auth_method:7
|
||
#: e63eaadeb384412199ed4f6ed7053e47
|
||
msgid ""
|
||
"\"client_secret_post\": The client uses the HTTP POST parameters as defined "
|
||
"in OAuth 2.0, Section 2.3.1."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.basemodels.Client.token_endpoint_auth_method:10
|
||
#: 271a83d28e854ac0ba72171a974b346b
|
||
msgid ""
|
||
"\"client_secret_basic\": The client uses HTTP Basic as defined in OAuth 2.0, "
|
||
"Section 2.3.1."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of
|
||
#: canaille.oidc.basemodels.Client.token_endpoint_auth_method:13
|
||
#: 20907504b16b4d2785df51328c1ef639
|
||
msgid ""
|
||
"Additional values can be defined via the IANA \"OAuth Token Endpoint "
|
||
"Authentication Methods\" registry established in Section 4.2. Absolute URIs "
|
||
"can also be used as values for this parameter without being registered. If "
|
||
"unspecified or omitted, the default is \"client_secret_basic\", denoting the "
|
||
"HTTP Basic authentication scheme as specified in Section 2.3.1 of OAuth 2.0."
|
||
msgstr ""
|
||
|
||
#: ../../docstring of canaille.oidc.basemodels.Client.tos_uri:1
|
||
#: 00b5b754a5c5419f92fab486003e081a
|
||
msgid ""
|
||
"URL string that points to a human-readable terms of service document for the "
|
||
"client that describes a contractual relationship between the end-user and "
|
||
"the client that the end-user accepts when authorizing the client."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/basemodels.py:docstring of
|
||
#: canaille.oidc.basemodels.Consent:1 a05f59c629e3458fbbf64e91e88819bf
|
||
msgid "Long-term user consent to an application."
|
||
msgstr ""
|
||
|
||
#: ../../canaille/oidc/basemodels.py:docstring of
|
||
#: canaille.oidc.basemodels.Token:1 7b57192679024787a3be94302cb00b86
|
||
msgid "OpenID Connect token definition."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:4 5748f2a24c36444993b0ac2c8ce280bb
|
||
msgid ""
|
||
"Canaille can read and save data in different databases. This page presents "
|
||
"the different database backends and their specificities:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:10 5d24828b6f5649039d526b7fb689db99
|
||
msgid ""
|
||
"Canaille comes with a lightweight inmemory backend by default. It is used "
|
||
"when no other backend has been configured."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:13 afdd59c782fc4a28851af9f8a3c24428
|
||
msgid ""
|
||
"This backend is only for test purpose and should not be used in production "
|
||
"environments."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:18 883a0e443e914abb8edfe20bf57f1296
|
||
msgid ""
|
||
"Canaille can use any database supported by `SQLAlchemy <https://www."
|
||
"sqlalchemy.org/>`_, such as sqlite, postgresql or mariadb."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:21 70e3f1710abf4134b85427a21dedeaa4
|
||
msgid ""
|
||
"It is used when the ``CANAILLE_SQL`` configuration parameter is defined. For "
|
||
"instance:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:29 30971ee8de5542819657f07c3e215be2
|
||
msgid ""
|
||
"You can find more details on the SQL configuration in the :class:`dedicated "
|
||
"section <canaille.backends.sql.configuration.SQLSettings>`."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:34 da789ef60396408eb64b22001aaaf8fe
|
||
msgid ""
|
||
"Canaille can use OpenLDAP as its main database. It is used when the "
|
||
"``CANAILLE_LDAP`` configuration parameter is defined. For instance:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:52 aa4b16bc9b7946d7904708e1f424f53f
|
||
msgid ""
|
||
"You can find more details on the LDAP configuration in the :class:`dedicated "
|
||
"section <canaille.backends.ldap.configuration.LDAPSettings>`."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:55 faa136c2f11c4d79b3bbe652a901e785
|
||
msgid ""
|
||
"Currently, only the ``inetOrgPerson`` and ``groupOfNames`` schemas have been "
|
||
"tested. If you want to use different schemas or LDAP servers, adaptations "
|
||
"may be needed. Patches are welcome."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:60 21591edbced444b499d300486e257a91
|
||
msgid "OpenLDAP overlays integration"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:62 33eaffdc103c4d709fb434da45ecca39
|
||
msgid "Canaille can integrate with several OpenLDAP overlays:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:65 b542d311f0444aef936af14660f9ddd3
|
||
msgid "memberof / refint"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:67 e3756a8fbe1d4c469d6df3b4504b73d9
|
||
msgid ""
|
||
"`memberof <https://www.openldap.org/doc/admin26/overlays."
|
||
"html#Reverse%20Group%20Membership%20Maintenance>`_ and `refint <https://www."
|
||
"openldap.org/doc/admin26/overlays.html#Referential%20Integrity>`_ overlays "
|
||
"are needed for the Canaille group membership to work correctly."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:71 ../tutorial/databases.rst:94
|
||
#: 9b7b5412ee544d7bbb97fc1e30152585 196ebab5ac4846f8b33c4f44cc5f20c4
|
||
msgid "Here is a configuration example compatible with canaille:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:73 1b8c284120b44c859cc9bd56b4c8e123
|
||
msgid "memberof-config.ldif"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:77 3fc7e3d6f94f47579174c1ebcb598f6a
|
||
msgid "refint-config.ldif"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:81 ../tutorial/databases.rst:104
|
||
#: 39d5ac83d9724a36af9b2185453d86f3 13beafbb9079449b9cd853a373b924cd
|
||
msgid "You can adapt and load those configuration files with:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:90 359072b68f5d4338830ee414e509d7c2
|
||
msgid "ppolicy"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:92 a589837a0cf14ad3b8f8116f78356f76
|
||
msgid ""
|
||
"If the `ppolicy <https://www.ietf.org/archive/id/draft-behera-ldap-password-"
|
||
"policy-11.html>`_ overlay is configured and the ``pwdEndTime`` attribute is "
|
||
"available (since OpenLDAP 2.6), then account locking support will be enabled "
|
||
"in canaille. To allow users to manage account expiration, they need to have "
|
||
"a *write* permission on the :attr:`~canaille.core.models.User.lock_date` "
|
||
"attribute."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:96 fe864493f65b47008ba79f9154931883
|
||
msgid "ppolicy-config.ldif"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/databases.rst:100 da19de8897bd448aaa8a8f6450974789
|
||
msgid "ppolicy.ldif"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:2 968d6daab5054d1bbbaac721a53f21e6
|
||
msgid "Deployment"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:5 341af181b96a4e449f124bb22e58723a
|
||
msgid "Application service"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:7 856f5e097bd34696b59aa74f451a1a33
|
||
msgid ""
|
||
"After having finished Canaille installation you have to run it in a WSGI "
|
||
"application server. Here are some WSGI server configuration examples you can "
|
||
"pick. Do not forget to update the paths."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:11 c2fc01d884054c2c9e9f3cf5b1e7fe01
|
||
msgid "gunicorn"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:15 0734bfeb3d07400d85abe6f2412c506c
|
||
msgid "Write a gunicorn configuration sample file."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:18 12db5d68d59f42958e64d74cf0a8a852
|
||
msgid "uwsgi"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:42 7f42a8052b034e1e949f7308c1e80068
|
||
msgid "Webserver"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:44 261287d315864e4e958aab6892250086
|
||
msgid ""
|
||
"Now you have to plug your WSGI application server to your webserver so it is "
|
||
"accessible on the internet. Here are some webserver configuration examples "
|
||
"you can pick:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:48 05ce956efe26448abaa00732f791ac5d
|
||
msgid "Nginx"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:114 71a5e5d57a9547909ea4a78f80883422
|
||
msgid "Apache"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:153 c0216d38c6e74ed08fd2478d61524206
|
||
msgid "Recurrent jobs"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:155 24d5e0ff3df449e49ec973125318f628
|
||
msgid ""
|
||
"You might want to clean up your database to avoid it growing too much. You "
|
||
"can regularly delete expired tokens and authorization codes with:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:164 615cedede7b348a39bef43b8a0296fb0
|
||
msgid "Webfinger"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:166 59c6373efd6040f2bc60ce6617810901
|
||
msgid ""
|
||
"You may want to configure a `WebFinger`_ endpoint on your main website to "
|
||
"allow the automatic discovery of your Canaille installation based on the "
|
||
"account name of one of your users. For instance, suppose your domain is "
|
||
"``mydomain.example`` and your Canaille domain is ``auth.mydomain.example`` "
|
||
"and there is a user ``john.doe``. A third-party application could require to "
|
||
"authenticate the user and ask them for a user account. The user would give "
|
||
"their account ``john.doe@mydomain.example``, then the application would "
|
||
"perform a WebFinger request at ``https://mydomain.example/.well-known/"
|
||
"webfinger`` and the response would contain the address of the authentication "
|
||
"server ``https://auth.mydomain.example``. With this information the third "
|
||
"party application can redirect the user to the Canaille authentication page."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:168 ee64a42bf4104da2a68499149292566d
|
||
msgid ""
|
||
"The difficulty here is that the WebFinger endpoint must be hosted at the top-"
|
||
"level domain (i.e. ``mydomain.example``) while the authentication server "
|
||
"might be hosted on a sublevel (i.e. ``auth.mydomain.example``). Canaille "
|
||
"provides a WebFinger endpoint, but if it is not hosted at the top-level "
|
||
"domain, a web redirection is required on the ``/.well-known/webfinger`` path."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:170 a1aa4ace653f416eb673a5ac6f536199
|
||
msgid "Here are configuration examples for Nginx or Apache:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:172 54696b09f9de48daa0d752cab9cbbe60
|
||
msgid "Nginx webfinger configuration for a top level domain"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:181 7277d41cdb83400ab68d06861f1bba9b
|
||
msgid "Apache webfinger configuration for a top level domain"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:191 6c673a0168dc4f159d40898328555d97
|
||
msgid "Create the first user"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/deployment.rst:193 665633a1bc5a4185b3ac592a8e0d023d
|
||
msgid ""
|
||
"Once canaille is installed, soon enough you will need to add users. To "
|
||
"create your first user you can use the :ref:`canaille create <cli_create>` "
|
||
"CLI."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/index.rst:2 df05343770804349af328d9b3651f059
|
||
msgid "Tutorial"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:2 a0eef22998554712a838c86b94681306
|
||
msgid "Installation"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:6 366d1de010774522b5947172c22d1d64
|
||
msgid ""
|
||
"Canaille is under heavy development and may not fit a production environment "
|
||
"yet."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:8 7ec1652a0617445681d3b44ab4ef6607
|
||
msgid ""
|
||
"The installation of canaille consist in several steps, some of which you can "
|
||
"do manually or with command line tool:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:11 39b5cccca7ae4928abc5ecac4466a670
|
||
msgid "Get the code"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:13 dd49fb118bd94e00810d55ca2e8e3c23
|
||
msgid ""
|
||
"As the moment there is no distribution package for canaille. However, it can "
|
||
"be installed with the ``pip`` package manager. Let us choose a place for the "
|
||
"canaille environment, like ``/opt/canaille/env``."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:24 8f98f8e76182487aba2f150e7af39150
|
||
msgid "Extras"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:26 364aff7067fe4ab0aea19ad6024893b1
|
||
msgid "Canaille provides different package options:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:28 0b64d33198cf4965bf5ccec22054fc9b
|
||
msgid "`front` provides all the things needed to produce the user interface;"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:29 4f47aa89080f491e8f179aadf57a32e4
|
||
msgid "`oidc` provides the dependencies to perform OAuth2/OIDC authentication;"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:30 07d747ece341493cbfdbaacd17b9640d
|
||
msgid "`ldap` provides the dependencies to enable the LDAP backend;"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:31 bebbbd7c0b5b4694b70dd571d6087a25
|
||
msgid "`sqlite` provides the dependencies to enable the SQLite backend;"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:32 1052d038f4154a29a0e27fd5c83f9abf
|
||
msgid ""
|
||
"`postgresql` provides the dependencies to enable the PostgreSQL backend;"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:33 0696511547b64f22b36c1b3c5ade382a
|
||
msgid "`mysql` provides the dependencies to enable the MySQL backend;"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:34 7ec9ca47bc1a487caeb4d706f0cabeec
|
||
msgid "`sentry` provides sentry integration to watch Canaille exceptions;"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:35 4355ba8d8f744ad6b49f6859e36d5276
|
||
msgid "`all` provides all the extras above."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:37 2ad6fc294ad44e87a5c1b4389a8c280c
|
||
msgid "They can be installed with:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:44 59d5ecfe460d412ba993a785c0c20744
|
||
msgid "Configure"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:46 2bebd03f31724f66a8fc72e10fd4c00f
|
||
msgid ""
|
||
"Choose a path where to store your configuration file. You can pass any "
|
||
"configuration path with the ``CONFIG`` environment variable."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:54 6f15d23d18c245dc9d341399328f752e
|
||
msgid ""
|
||
"You should then edit your configuration file to adapt the values to your "
|
||
"needs. Look at the configuration details in the :doc:`configuration <../"
|
||
"references/configuration>` page."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:57 ede066e9fd9345ac86aa519c3bc66495
|
||
msgid "Install"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:59 a888acd5f78142a88927d4585568a24a
|
||
msgid ""
|
||
"The :ref:`install command <cli_install>` will apply most of the things "
|
||
"needed to get Canaille working. Depending on the configured :doc:`database "
|
||
"<databases>` it will create the SQL tables, or install the LDAP schemas for "
|
||
"instance."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:68 1d9b520266704354910e893daaa1ac22
|
||
msgid "Check"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/install.rst:70 da69d39139ef46eabe3e65ee743ad414
|
||
msgid ""
|
||
"After a manual installation, you can check your configuration file using "
|
||
"the :ref:`check command <cli_install>`:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:2 a2179a1e932c44c59ec327cabf7a8b0e
|
||
msgid "Troubleshooting"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:5 46107d829fdc4718adf7b92192756f96
|
||
msgid "The web interface throws useless error messages"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:7 86ab63d58f8848b2a40435a2f048c12f
|
||
msgid ""
|
||
"Unless the current user has admin :class:`permissions <canaille.core."
|
||
"configuration.Permission>`, or the installation is in :attr:`~canaille.app."
|
||
"configuration.RootSettings.DEBUG` mode, error messages won't be too "
|
||
"technical. For instance, you can see *The request you made is invalid*. To "
|
||
"enable detailed error messages, you can **temporarily** enable the :attr:"
|
||
"`~canaille.app.configuration.RootSettings.DEBUG` configuration parameter."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:12 988d674332bb4633b860095fe99420df
|
||
msgid "How to manually install LDAP schemas?"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:16 7be9fb2994f6417889820aac3fce6560
|
||
msgid ""
|
||
"Schema installation can be automatically done using the :ref:`install "
|
||
"command <cli_install>`."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:18 c8c1648f65d348d0a7d601357a849604
|
||
msgid "As of OpenLDAP 2.4, two configuration methods are available:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:20 f37f56f196174ae895e792a933dfbea6
|
||
msgid ""
|
||
"The `deprecated <https://www.openldap.org/doc/admin26/slapdconf2.html>`_ "
|
||
"one, based on a configuration file (generally ``/etc/ldap/slapd.conf``);"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:21 ae332fd671574a54b9f1ff1cce9ae3e0
|
||
msgid ""
|
||
"The new one, based on a configuration directory (generally ``/etc/ldap/slapd."
|
||
"d``)."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:23 b9fe35e9d0654a4b831845bf9f027a33
|
||
msgid ""
|
||
"Depending on the configuration method you use with your OpenLDAP "
|
||
"installation, you need to chose how to add the canaille schemas:"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:26 45557c5a90314b65aca27329fe4f334b
|
||
msgid "Old fashion: Copy the schemas in your filesystem"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:35 4aa6e1b3b0154c4ca91a982f719c08b5
|
||
msgid "New fashion: Use slapadd to add the schemas"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:37 6ba05a570b0043078256af9a016309c4
|
||
msgid "Be careful to stop your ldap server before running ``slapadd``"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:46 87adc4ca4b22405e948a90409bde21b0
|
||
msgid "How to manually generate the OIDC keypair?"
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:50 6770309338724a4aac6439943e58b66a
|
||
msgid ""
|
||
"The keypair generation can be automatically done using the :ref:`install "
|
||
"command <cli_install>`."
|
||
msgstr ""
|
||
|
||
#: ../tutorial/troubleshooting.rst:52 2fad5ba8eca14ba293b910f7c82f5b34
|
||
msgid ""
|
||
"Canaille needs a key pair to sign OIDC tokens. You can customize those "
|
||
"commands, as long as they match the ``JWT`` section of your configuration "
|
||
"file."
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:4 0012c5a2aeb84b40b7ccb861a1f8ea07
|
||
msgid "Use cases"
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:6 8fce8afa30574f348ea6a4b5169592b6
|
||
msgid ""
|
||
"Canaille is a lightweight IAM for simple needs. Here are a few use cases you "
|
||
"might recognize in, where Canaille would fit your needs."
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:10 e00eb880854f4c38a94285e1986b96d2
|
||
msgid "OpenID Connect provider on top of a LDAP directory"
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:12 354d32ad706d463ab06aa17efae022cc
|
||
msgid ""
|
||
"Your organization has an historic :ref:`LDAP directory <feature_databases>` "
|
||
"and you want to add a :ref:`OpenID Connect <feature_oidc>` :abbr:`SSO "
|
||
"(Single Sign-On)` layer on top of it, so users can use all your application "
|
||
"while signin-in only once, without any data migration."
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:15 c80ba39e4d3d49aeb126a3a4b0cbf6ee
|
||
msgid "Profile edition of LDAP users"
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:17 f7042aa80b384749a2a1c93cdf9fb3b6
|
||
msgid ""
|
||
"Your organization has a :ref:`LDAP directory <feature_databases>` and you "
|
||
"want to provide a way to your users to :ref:`edit their personal information "
|
||
"<feature_profile_management>` by themselves, without requiring any "
|
||
"administrator intervention."
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:20 2175f903fd7049408fb6f8bca3817ec0
|
||
msgid "Password recovery with a LDAP directory"
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:22 ee7ae8f8496c4ddd95b00953f0da7fc9
|
||
msgid ""
|
||
"Your organization has an historic :ref:`LDAP directory <feature_databases>` "
|
||
"and you want to provide a way to your users to :ref:`recover their password "
|
||
"<feature_password_recovery>` when they cannot remember it, without any "
|
||
"administrator intervention."
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:25 b270514f0fac465d9792c85a85c84525
|
||
msgid "A lightweight IAM for unit testing"
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:27 88822c2e151f43a0b5dabed7616604b7
|
||
msgid ""
|
||
"You are :ref:`developing <feature_development>` an application relying on "
|
||
"OAuth2 or OpenID Connect to authenticate the users. You don't want to mock "
|
||
"the calls to the identity provider in your unit tests, but you want to :ref:"
|
||
"`perform real OAuth2/OIDC requests <feature_testing>`, and test your "
|
||
"application against different identity provider tunings."
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:30 fe21632ea9034d16b4f5da19efa0b5ac
|
||
msgid "A lightweight IAM for developing"
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:32 5f85f539d8cf4500889c40f6774d6e55
|
||
msgid ""
|
||
"You are :ref:`developing <feature_development>` an application relying on "
|
||
"OAuth2 or OpenID Connect to authenticate the users. You need a :ref:`IAM "
|
||
"server to develop <feature_development>` locally, but your old computer "
|
||
"cannot bear launching a full Keycloak in a Docker container."
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:35 f94e9269e0d84b20998a5dc33d17bca7
|
||
msgid "A lightweight IAM for CIs"
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:37 c59dd6c6c59a45b6b8cc4497275c35c1
|
||
msgid ""
|
||
"You are :ref:`developing <feature_development>` an application relying on "
|
||
"OAuth2 or OpenID Connect to authenticate the users. You need a IAM server "
|
||
"that could can populate with custom data, and integrate in your :ref:"
|
||
"`continuous integration environment <feature_ci>`."
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:40 30c0a6e8cd2f4ec1837b2147176bed17
|
||
msgid "A CLI to quickly edit LDAP directory users"
|
||
msgstr ""
|
||
|
||
#: ../usecases.rst:42 884abc047ac34822b7b8fcd98ddb3f88
|
||
msgid ""
|
||
"Your organization has an historic :ref:`LDAP directory <feature_databases>`. "
|
||
"You are tired to deal with *ldif* syntax to manage your users and group and "
|
||
"would prefer a simple human-readable CLI."
|
||
msgstr ""
|
||
|
||
#~ msgid ""
|
||
#~ "Documentation translation Translations are done with `Weblate <https://"
|
||
#~ "hosted.weblate.org/projects/canaille/documentation>`_."
|
||
#~ msgstr ""
|
||
#~ "La traduction de la documentation est faite avec `Weblate <https://hosted."
|
||
#~ "weblate.org/projects/canaille/documentation>`_."
|
||
|
||
#~ msgid ""
|
||
#~ "Some dependencies of Canaille might need to be compiled, so you probably "
|
||
#~ "want to check that `GCC` and `cargo` are available on your computer."
|
||
#~ msgstr ""
|
||
#~ "Certaines dépendances de Canaille peuvent nécessiter une compilation, "
|
||
#~ "donc devriez sans doute vérifier que `GCC` et `cargo` sont installés sur "
|
||
#~ "votre système."
|