# SOME DESCRIPTIVE TITLE. # Copyright (C) 2024, Yaal Coop # This file is distributed under the same license as the canaille package. # FIRST AUTHOR , 2024. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: canaille 0.0.56\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-11-22 15:37+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: fr\n" "Language-Team: fr \n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.16.0\n" #: ../../doc/features.rst:9 4fb1af73d4c74a84b97fb07d0872616c msgid "Features" msgstr "" #: ../../doc/features.rst:11 f533903320bb40bcb2e70ec742e83995 msgid "" "Here are the different features that Canaille provides. You can enable " "any of those features with the :doc:`configuration " "` to fit any :doc:`use cases ` you " "may meet. Check our :ref:`roadmap ` to see what is " "coming next." msgstr "" #: ../../doc/features.rst:15 01c0632f78e54464941ef63a9602dc60 msgid "" "Users can interact with Canaille through its :ref:`web interface " "` and administrators can also use its " ":ref:`command line interface `. Canaille" " can handle data stored in different :ref:`database backends " "`." msgstr "" #: ../../doc/features.rst:19 64941cdc6da64c95b29a81989ccb229f msgid "Web interface" msgstr "" #: ../../doc/features.rst:21 29bcaee093ff460a9cc3810663a729ba msgid "" "Canaille web interface can be used either in :doc:`production " "environments ` or locally for development purposes." msgstr "" #: ../../doc/features.rst:26 294fd4be22454d63bf11372353b61b6b msgid "Profile management" msgstr "" #: ../../doc/features.rst:28 ../../doc/features.rst:217 #: 25fc422a39a14e1792ec6cd7fe264186 45e94f3a06424a1f9e6d70aa2caae471 msgid "Profile" msgstr "" #: ../../doc/features.rst:33 0f6f25e5ba824a089c29ffc189e3d9fa msgid "Canaille provides an interface to manage user profiles." msgstr "" #: ../../doc/features.rst:35 a9d65d4febee4017b66ba6bb0625cc56 msgid "" "The exact list of displayed fields, and whether they are :attr:`writable " "` or :attr:`read-only " "` depends on the user " ":class:`Access Control List settings (ACL) " "`." msgstr "" #: ../../doc/features.rst:37 a484e00099a34cb392f066e6ecf7b4da msgid "" "Depending on their ACL :class:`permissions " "`, users can either be allowed to" " edit their own profile, edit any user profile, or do nothing at all." msgstr "" #: ../../doc/features.rst:42 17a358cc687f40baa93945f60bf2450c msgid "Email confirmation" msgstr "" #: ../../doc/features.rst:44 80e5ef23503145249170a2e3a625bbd7 msgid "" "If the :attr:`email confirmation feature " "` 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 "" #: ../../doc/features.rst:46 ccaf12399e2c40ce9220365c17d74104 msgid "" "Users with :attr:`user management permission " "` can set user " "emails without confirmation though." msgstr "" #: ../../doc/features.rst:51 7116048766294e9abe6bf44cbe2f45f9 msgid "Group management" msgstr "" #: ../../doc/features.rst:53 ../../doc/features.rst:140 #: 2582411685fc4e3e805cb77dd0463798 df947bdf6ba344d38f554bef593d3741 msgid "Group edition" msgstr "" #: ../../doc/features.rst:58 11e72b5c82144b689b036ace6700843c msgid "" "In a similar fashion than :ref:`profile management " "` Canaille provides an interface to manage " "user groups." msgstr "" #: ../../doc/features.rst:60 d11e558897b04ffababb10318a6b5f2b 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 " "` to define user " "permissions." msgstr "" #: ../../doc/features.rst:63 ../../doc/features.rst:83 #: ../../doc/features.rst:149 452843219c6c46e9bacd90e4adb242b7 #: 7780e9f22e1e43ab910c74b8966cb7a7 d11cd0241ede4993b6af5a5310a2950b msgid "Todo" msgstr "" #: ../../doc/features.rst:64 a7c91346331a4c6d8d406559aee9e4ad 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 "" #: ../../doc/features.rst:66 ddac4f63bacf466da3c81a45deed362b msgid "" "Group management can be enable with a :attr:`dedicated user permission " "`." msgstr "" #: ../../doc/features.rst:69 02fc1852031348109c514910af49d79d msgid "" "Due to limitations in the :ref:`LDAP backend `, " "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 "" #: ../../doc/features.rst:75 9138d2dc221e48a89db82c2f90cb6004 msgid "User authentication" msgstr "" #: ../../doc/features.rst:77 599f5b4f86fc4bfa8a2f74c091509be6 msgid "" "Unless their account is :ref:`locked `, users " "can authenticate with a login and a password." msgstr "" #: ../../doc/features.rst:81 fc9cfcefd5b04ed9979f03f7b23f599a 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 " "`." msgstr "" #: ../../doc/features.rst:83 560da801dd7148caa69f2890c7edb1ad msgid "" ":ref:`LDAP backend ` users can define which " ":class:`user field ` 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 " "`, but " "other backends can only login using " ":attr:`~canaille.core.models.User.user_name`. We are :issue:`working to " "improve this <196>`." msgstr "" #: ../../doc/features.rst:88 15d60dc74987433abaa7715bc2a8b1e8 msgid "User registration" msgstr "" #: ../../doc/features.rst:90 c75a651a12fb4c40b52dbd5f329b410a msgid "" "Users can create accounts on Canaille if the feature :attr:`registration " "feature ` " "is enabled. They will be able to fill a registration form with the fields" " detailed in the default :class:`ACL settings " "`." msgstr "" #: ../../doc/features.rst:92 e519d1c77da3425f9b295f18c14992c6 msgid "" "If :attr:`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 "" #: ../../doc/features.rst:97 ../../doc/features.rst:99 #: 59c5b1831e6e459a8172647afa544c70 994ef18eb3c541db872d00f1dc525459 msgid "User invitation" msgstr "" #: ../../doc/features.rst:104 38af20e16103418995dc773d712f3a42 msgid "" "If a :class:`mail server ` is " "configured, users with :attr:`user management permission " "` can create an " "invitation link for one user." msgstr "" #: ../../doc/features.rst:106 cb210bc27c7242418d4e32754a9ec962 msgid "" "The link goes to a registration form, even if regular :ref:`user " "registration ` is disabled." msgstr "" #: ../../doc/features.rst:108 ea267ce493e7490cb3eba5254f5cacdb msgid "It can be automatically sent by email to the new user." msgstr "" #: ../../doc/features.rst:113 2bcaa899d56a477bbd3d74aeb27c9c80 msgid "Account locking" msgstr "" #: ../../doc/features.rst:115 ccb64741bf69439baf2151d317752457 msgid "" "If Canaille is plugged to a :ref:`backend ` that " "supports it, user accounts can be locked by users with :attr:`user " "management permission " "`. The lock date can" " be set instantly or at a given date in the future." msgstr "" #: ../../doc/features.rst:118 a72241fb75fc4d9eac776773d4b5f4ea msgid "At the moment a user account is locked:" msgstr "" #: ../../doc/features.rst:120 2faef50ed550468c99aaa015e00e9365 msgid "their open sessions will be closed;" msgstr "" #: ../../doc/features.rst:121 ed34e7ffc4b348f291529b9783470441 msgid "they won't be able to sign in again;" msgstr "" #: ../../doc/features.rst:122 3f6f9480b62b4c9787464f801bd2d615 msgid "no new OIDC token will be issued;" msgstr "" #: ../../doc/features.rst:124 27dff00fd7734b5e939f9556d8f393cc msgid "" "User accounts must be manually unlocked by an administrator for the users" " to regain access to those actions." msgstr "" #: ../../doc/features.rst:129 18877ac7cd334a7e805f249be9dda7bd msgid "Account deletion" msgstr "" #: ../../doc/features.rst:131 466be52a8d3742f690a40c60282e191d msgid "" "Users with the :attr:`account deletion permission " "` are allowed to " "delete their own account." msgstr "" #: ../../doc/features.rst:133 6d7c914e79544587970b4dbb598b5c5e msgid "" "Users that also have the :attr:`user management permission " "` are also allowed " "to delete other users accounts." msgstr "" #: ../../doc/features.rst:138 bc8a76ec346746f2b515dcb3b1cf4734 msgid "Password recovery" msgstr "" #: ../../doc/features.rst:145 a9d170d27fff47ef9463c8025637c636 msgid "" "If a :class:`mail server ` is " "configured and the :attr:`password recovery feature " "` is " "enabled, then users can ask for a password reset email if they cannot " "remember their password." msgstr "" #: ../../doc/features.rst:147 5a6261c226d64919a2880c50a30ae85f 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 "" #: ../../doc/features.rst:151 8e5fc9b32b9d4fe3a70e5af66a2adbe6 msgid "Check that password recovery is disabled on locked accounts." msgstr "" #: ../../doc/features.rst:156 1c5599b3936243d6915faf737cc31202 msgid "Password reset" msgstr "" #: ../../doc/features.rst:158 5a6de5b373b9482e98f5b746eaaba299 msgid "" "If a :class:`mail server ` is " "configured, :attr:`user management permission " "` 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 "" #: ../../doc/features.rst:164 8dcac96c9eac4b85a5733ef2ac8e70b2 msgid "Password initialization" msgstr "" #: ../../doc/features.rst:166 c0d88fbec85f4621972b1157787ca945 msgid "" "User :attr:`passwords ` are optional." " If a :class:`mail server ` 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 "" #: ../../doc/features.rst:173 cb684709c95741afb52044d915ad837e msgid "Password compromission check" msgstr "" #: ../../doc/features.rst:175 cc99e8db7a8a4c2397f9466cd156cce3 msgid "" "If :attr:`password compromission check feature " "`" " 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 " "`." msgstr "" #: ../../doc/features.rst:180 578f4517d38a4c05aa17ca0e79b8e071 msgid "Internationalization" msgstr "" #: ../../doc/features.rst:182 679ae11dba4244919195c79384a0ea86 msgid "Translation state" msgstr "" #: ../../doc/features.rst:187 6674da14a528481fb5ecd11b163ff0b5 msgid "" "Canaile will display in your :attr:`preferred language " "` if available, or your " "browser language if available (and if it is not you can :ref:`help us " "with the translation `). If you " "prefer, you can also :attr:`force a language " "` for every users." msgstr "" #: ../../doc/features.rst:193 962dc4e9e8464568ad7798304c427aa4 msgid "Lightweight" msgstr "" #: ../../doc/features.rst:195 d18981ee0963473eba03eb2d29344a86 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 "" #: ../../doc/features.rst:199 8ed7acbdc3d948cdb60c98cb5786c51c msgid "Customizable" msgstr "" #: ../../doc/features.rst:201 98abf7572fac4402b05a543a5f3fcf70 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 " "` and a :attr:`favicon " "`." msgstr "" #: ../../doc/features.rst:204 cdc5b7d069fb412d85a1bb73277b41f3 msgid "" "If you need more you can also use a :attr:`custom theme " "`." msgstr "" #: ../../doc/features.rst:209 061216875fe84e5e8ff84b4d74ddcdfd msgid "OpenID Connect" msgstr "" #: ../../doc/features.rst:211 475e8e86054b4e1aae2eb5c5019b05b9 msgid "" "Canaille implements a :ref:`subset` 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 "" #: ../../doc/features.rst:215 e1f9ff739e0740a992c3a6a229f58f2f msgid "Consent management" msgstr "" #: ../../doc/features.rst:223 f0f4792344ff4efb9152d9537ffdb61a msgid "" "Users can give their consent to application requesting access to their " "personal information, and then revoke those consent at their will." msgstr "" #: ../../doc/features.rst:227 901e75d3e39d47c283c795f4c81ef313 msgid "Application management" msgstr "" #: ../../doc/features.rst:229 b61e5ff4d80546b8bf9f26396b041024 msgid "" "Users with the right :attr:`permission " "` can manager OIDC " "clients through the web interface." msgstr "" #: ../../doc/features.rst:231 2faf8a6597544e54b9e4cdfd94e8b12d msgid "" "In some cases, it might be useful to avoid the consent page for some " "trusted applications, so clients can be pre-consented." msgstr "" #: ../../doc/features.rst:234 e3a2d439803247929d5734a944c67b6e msgid "Discovery" msgstr "" #: ../../doc/features.rst:236 a859e92abe2545ffac1945b84ded46cf msgid "" "Canaille implements the :doc:`Discovery specifications " "` so most of the applications plugged to " "Canaille can auto-configure themselves." msgstr "" #: ../../doc/features.rst:239 021f852f70e043f8991eb63a1e9fa95b msgid "Dynamic Client Registration" msgstr "" #: ../../doc/features.rst:241 50f5368bb4f34432b78bad50f3bfc970 msgid "" "Canaille implements the :doc:`Dynamic Client Registration specifications " "`, so when the :attr:`feature is enabled " "`," " clients can register themselves on Canaille without an administrator " "intervention." msgstr "" #: ../../doc/features.rst:246 737fa417d0994b40bfa131c9f60fe002 msgid "Command Line Interface" msgstr "" #: ../../doc/features.rst:248 22dca683e72647c5b1d7c3cb7284bb31 msgid "" "Canaille comes with a :abbr:`CLI (Command Line Interface)` to help " "administrators in hosting and management." msgstr "" #: ../../doc/features.rst:250 249165589d194a80bafccad23548b445 msgid "" "There are tools to :ref:`check your configuration ` or to " ":ref:`install missing parts `. You can use the CLI to " ":ref:`create `, :ref:`read `, :ref:`update " "` and :ref:`delete ` models such as :class:`users " "`, :class:`groups " "` or :class:`OIDC clients " "`." msgstr "" #: ../../doc/features.rst:253 40b8bd61352441279c4cd29652f4c1ac msgid "" "There are also tools to :ref:`fill your database ` with " "random objects, for tests purpose for instance." msgstr "" #: ../../doc/features.rst:258 f12ee82070274cae980dfd943216d8aa msgid "Backends" msgstr "" #: ../../doc/features.rst:260 33a7e578989247a28cab7f3c62a5d45b msgid "" "Canaille can handle data from the most :ref:`common SQL databases " "` such as PostgreSQL, MariaDB or SQLite, as well " "as :ref:`OpenLDAP `. It also comes with a no-" "dependency :ref:`in-memory database ` that can" " be used in unit tests suites." msgstr "" #: ../../doc/features.rst:264 7d48bdc0de0c4311bc833d1a5bfba74a msgid "Miscellaneous" msgstr "" #: ../../doc/features.rst:269 8d32bbd55479403abce70eb8c9bb994f msgid "Logging" msgstr "" #: ../../doc/features.rst:271 5275f23ac2854d5c9194a48ddd5443dd msgid "" "Canaille writes :attr:`logs " "` for every important " "event happening, to help administrators understand what is going on and " "debug funky situations." msgstr "" #: ../../doc/features.rst:273 b9f379ada02c48b18293ac832faebd4b msgid "" "The following security events are logged with the tag [SECURITY] for easy" " retrieval :" msgstr "" #: ../../doc/features.rst:275 32a31a8d8ad34cc18aef5adec77e9a3b msgid "Authentication attempt" msgstr "" #: ../../doc/features.rst:276 553bb32d08e841cb9c4e140ac0de0773 msgid "Password update" msgstr "" #: ../../doc/features.rst:277 bfba87a6577c42848d8353bf21233ac6 msgid "Email update" msgstr "" #: ../../doc/features.rst:278 711f69f6c65047c1bfbddc6235961247 msgid "Forgotten password mail sent to user" msgstr "" #: ../../doc/features.rst:279 b95d47d79d2842738c9b590b76eced39 msgid "Token emission" msgstr "" #: ../../doc/features.rst:280 6659cb54ee2c4b27b26b810af990bf79 msgid "Token refresh" msgstr "" #: ../../doc/features.rst:281 db0590d0caff45818dffed4a4a6c34f8 msgid "Token revokation" msgstr "" #: ../../doc/features.rst:282 cba7d27c08da40edbc1b9fcbe6d30a64 msgid "New consent given for client application" msgstr "" #: ../../doc/features.rst:283 d35330606f194040bbc333ba55a884b9 msgid "Consent revokation" msgstr "" #: ../../doc/features.rst:288 7c833e8f95e9411fa0aadb6886087873 msgid "A tool for your development and tests" msgstr "" #: ../../doc/features.rst:290 76258411ae3b4d849449432f52e84d17 msgid "" "Thanks to its lightweight :ref:`in-memory database " "` and its curated :ref:`dependency list " "`, 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 "" #: ../../doc/features.rst:292 ac52a0941d9e4bd2b362ecf152aeb68d 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 "" #: ../../doc/features.rst:294 0efaf00bc4144e27bf54251a6a9bd21e msgid "" "It also fits well in continuous integration scenarios. Thanks to its " ":ref:`CLI `, you can prepare data in Canaille, let your " "application interact with it, and then check the side effects." msgstr "" #: ../../doc/features.rst:297 7a9aa943072042589a5d46ce6298f3e5 msgid "Roadmap" msgstr "" #: ../../doc/features.rst:300 ed46b8b841e5494dba2f70bd26de027e msgid "BĂȘta version" msgstr "" #: ../../doc/features.rst:302 683699158de54b9fb6b281cf025c3d13 msgid "" "To go out of the current Alpha version we want to achieve the following " "tasks:" msgstr "" #: ../../doc/features.rst:304 748e096bb8d94c01be4a837a50a3f8c0 msgid ":issue:`Configuration validation using pydantic <138>`" msgstr "" #: ../../doc/features.rst:307 c9315e497eb840e98135b31e13bbe300 msgid "Stable version" msgstr "" #: ../../doc/features.rst:309 c273a186afb04e64b9c0a6935e77a247 msgid "" "Before we push Canaille in stable version we want to achieve the " "following tasks:" msgstr "" #: ../../doc/features.rst:312 6f25e781a50c4c3b873263ee8b7445c4 msgid "Security" msgstr "" #: ../../doc/features.rst:314 afa955100edc4cf69fe911def2c17fe1 msgid ":issue:`Password hashing configuration <175>`" msgstr "" #: ../../doc/features.rst:315 83b477b8dd8d4f86a619fb8c69f6334f msgid ":issue:`Authentication logging policy <177>`" msgstr "" #: ../../doc/features.rst:316 86aa13e5c390443dabeb1dac7218c0e4 msgid ":issue:`Intruder lockout <173>`" msgstr "" #: ../../doc/features.rst:317 c12a638956a944d8ac8e7630af28728c msgid ":issue:`Password expiry policy <176>`" msgstr "" #: ../../doc/features.rst:318 84e6f66279434b8295367ad2e2aaf493 msgid ":issue:`Multi-factor authentication: Email <47>`" msgstr "" #: ../../doc/features.rst:319 89672221e2a549738b6b93ef5a7fa40a msgid ":issue:`Multi-factor authentication: SMS <47>`" msgstr "" #: ../../doc/features.rst:320 22f8692707ee4ef0beec4e65d67b7a24 msgid ":issue:`Multi-factor authentication: OTP <47>`" msgstr "" #: ../../doc/features.rst:323 f133501d55674c388d07ebf7d05d7470 msgid "Packaging" msgstr "" #: ../../doc/features.rst:325 e7e65e86dcef441c99b85029acc08b69 msgid ":issue:`Nix package <190>`" msgstr "" #: ../../doc/features.rst:326 0cc24c93080a4abb89bb5d9c99084083 msgid ":issue:`Docker / OCI package <59>`" msgstr "" #: ../../doc/features.rst:329 76fdc47c40d54ef9b77d042b2720bf47 msgid "And beyond" msgstr "" #: ../../doc/features.rst:331 4c3e31176fa04cd7ba4d6f335eefd194 msgid ":issue:`OpenID Connect certification <182>`" msgstr "" #: ../../doc/features.rst:332 e037868b60534210869e76ff89bf2d12 msgid ":issue:`SCIM support <116>`" msgstr ""