# 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:35+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/tutorial/databases.rst:2 msgid "Databases" msgstr "" #: ../../doc/tutorial/databases.rst:4 msgid "" "Canaille can read and save data in different databases. This page " "presents the different database backends and their specificities:" msgstr "" #: ../../doc/tutorial/databases.rst:8 msgid "Memory" msgstr "" #: ../../doc/tutorial/databases.rst:10 msgid "" "Canaille comes with a lightweight inmemory backend by default. It is used" " when no other backend has been configured." msgstr "" #: ../../doc/tutorial/databases.rst:13 msgid "" "This backend is only for test purpose and should not be used in " "production environments." msgstr "" #: ../../doc/tutorial/databases.rst:16 msgid "SQL" msgstr "" #: ../../doc/tutorial/databases.rst:18 msgid "" "Canaille can use any database supported by `SQLAlchemy " "`_, such as sqlite, postgresql or mariadb." msgstr "" #: ../../doc/tutorial/databases.rst:21 msgid "" "It is used when the ``CANAILLE_SQL`` configuration parameter is defined. " "For instance:" msgstr "" #: ../../doc/tutorial/databases.rst:23 ../../doc/tutorial/databases.rst:37 msgid "config.toml" msgstr "" #: ../../doc/tutorial/databases.rst:29 msgid "" "You can find more details on the SQL configuration in the " ":class:`dedicated section " "`." msgstr "" #: ../../doc/tutorial/databases.rst:32 msgid "LDAP" msgstr "" #: ../../doc/tutorial/databases.rst:34 msgid "" "Canaille can use OpenLDAP as its main database. It is used when the " "``CANAILLE_LDAP`` configuration parameter is defined. For instance:" msgstr "" #: ../../doc/tutorial/databases.rst:52 msgid "" "You can find more details on the LDAP configuration in the " ":class:`dedicated section " "`." msgstr "" #: ../../doc/tutorial/databases.rst:55 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 "" #: ../../doc/tutorial/databases.rst:60 msgid "OpenLDAP overlays integration" msgstr "" #: ../../doc/tutorial/databases.rst:62 msgid "Canaille can integrate with several OpenLDAP overlays:" msgstr "" #: ../../doc/tutorial/databases.rst:65 msgid "memberof / refint" msgstr "" #: ../../doc/tutorial/databases.rst:67 #, python-format msgid "" "`memberof " "`_" " and `refint " "`_" " overlays are needed for the Canaille group membership to work correctly." msgstr "" #: ../../doc/tutorial/databases.rst:71 ../../doc/tutorial/databases.rst:94 msgid "Here is a configuration example compatible with canaille:" msgstr "" #: ../../doc/tutorial/databases.rst:73 msgid "memberof-config.ldif" msgstr "" #: ../../doc/tutorial/databases.rst:77 msgid "refint-config.ldif" msgstr "" #: ../../doc/tutorial/databases.rst:81 ../../doc/tutorial/databases.rst:104 msgid "You can adapt and load those configuration files with:" msgstr "" #: ../../doc/tutorial/databases.rst:90 msgid "ppolicy" msgstr "" #: ../../doc/tutorial/databases.rst:92 msgid "" "If the `ppolicy `_ 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 "" #: ../../doc/tutorial/databases.rst:96 msgid "ppolicy-config.ldif" msgstr "" #: ../../doc/tutorial/databases.rst:100 msgid "ppolicy.ldif" msgstr "" #: ../../doc/tutorial/deployment.rst:2 msgid "Deployment" msgstr "" #: ../../doc/tutorial/deployment.rst:5 msgid "Application service" msgstr "" #: ../../doc/tutorial/deployment.rst:7 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 "" #: ../../doc/tutorial/deployment.rst:11 msgid "gunicorn" msgstr "" #: ../../doc/tutorial/deployment.rst:13 msgid "Todo" msgstr "" #: ../../doc/tutorial/deployment.rst:15 msgid "Write a gunicorn configuration sample file." msgstr "" #: ../../doc/tutorial/deployment.rst:18 msgid "uwsgi" msgstr "" #: ../../doc/tutorial/deployment.rst:42 msgid "Webserver" msgstr "" #: ../../doc/tutorial/deployment.rst:44 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 "" #: ../../doc/tutorial/deployment.rst:48 msgid "Nginx" msgstr "" #: ../../doc/tutorial/deployment.rst:114 msgid "Apache" msgstr "" #: ../../doc/tutorial/deployment.rst:153 msgid "Recurrent jobs" msgstr "" #: ../../doc/tutorial/deployment.rst:155 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 "" #: ../../doc/tutorial/deployment.rst:164 msgid "Webfinger" msgstr "" #: ../../doc/tutorial/deployment.rst:166 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 "" #: ../../doc/tutorial/deployment.rst:168 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 "" #: ../../doc/tutorial/deployment.rst:170 msgid "Here are configuration examples for Nginx or Apache:" msgstr "" #: ../../doc/tutorial/deployment.rst:172 msgid "Nginx webfinger configuration for a top level domain" msgstr "" #: ../../doc/tutorial/deployment.rst:181 msgid "Apache webfinger configuration for a top level domain" msgstr "" #: ../../doc/tutorial/deployment.rst:191 msgid "Create the first user" msgstr "" #: ../../doc/tutorial/deployment.rst:193 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." msgstr "" #: ../../doc/tutorial/index.rst:2 msgid "Tutorial" msgstr "" #: ../../doc/tutorial/install.rst:2 msgid "Installation" msgstr "" #: ../../doc/tutorial/install.rst:6 msgid "" "Canaille is under heavy development and may not fit a production " "environment yet." msgstr "" #: ../../doc/tutorial/install.rst:8 msgid "" "The installation of canaille consist in several steps, some of which you " "can do manually or with command line tool:" msgstr "" #: ../../doc/tutorial/install.rst:11 msgid "Get the code" msgstr "" #: ../../doc/tutorial/install.rst:13 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 "" #: ../../doc/tutorial/install.rst:24 msgid "Extras" msgstr "" #: ../../doc/tutorial/install.rst:26 msgid "Canaille provides different package options:" msgstr "" #: ../../doc/tutorial/install.rst:28 msgid "`front` provides all the things needed to produce the user interface;" msgstr "" #: ../../doc/tutorial/install.rst:29 msgid "`oidc` provides the dependencies to perform OAuth2/OIDC authentication;" msgstr "" #: ../../doc/tutorial/install.rst:30 msgid "`ldap` provides the dependencies to enable the LDAP backend;" msgstr "" #: ../../doc/tutorial/install.rst:31 msgid "`sqlite` provides the dependencies to enable the SQLite backend;" msgstr "" #: ../../doc/tutorial/install.rst:32 msgid "`postgresql` provides the dependencies to enable the PostgreSQL backend;" msgstr "" #: ../../doc/tutorial/install.rst:33 msgid "`mysql` provides the dependencies to enable the MySQL backend;" msgstr "" #: ../../doc/tutorial/install.rst:34 msgid "`sentry` provides sentry integration to watch Canaille exceptions;" msgstr "" #: ../../doc/tutorial/install.rst:35 msgid "`all` provides all the extras above." msgstr "" #: ../../doc/tutorial/install.rst:37 msgid "They can be installed with:" msgstr "" #: ../../doc/tutorial/install.rst:44 msgid "Configure" msgstr "" #: ../../doc/tutorial/install.rst:46 msgid "" "Choose a path where to store your configuration file. You can pass any " "configuration path with the ``CONFIG`` environment variable." msgstr "" #: ../../doc/tutorial/install.rst:54 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 "" #: ../../doc/tutorial/install.rst:57 msgid "Install" msgstr "" #: ../../doc/tutorial/install.rst:59 msgid "" "The :ref:`install command ` will apply most of the things " "needed to get Canaille working. Depending on the configured " ":doc:`database ` it will create the SQL tables, or install the" " LDAP schemas for instance." msgstr "" #: ../../doc/tutorial/install.rst:68 msgid "Check" msgstr "" #: ../../doc/tutorial/install.rst:70 msgid "" "After a manual installation, you can check your configuration file using " "the :ref:`check command `:" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:2 msgid "Troubleshooting" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:5 msgid "The web interface throws useless error messages" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:7 msgid "" "Unless the current user has admin :class:`permissions " "`, 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 "" #: ../../doc/tutorial/troubleshooting.rst:12 msgid "How to manually install LDAP schemas?" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:16 msgid "" "Schema installation can be automatically done using the :ref:`install " "command `." msgstr "" #: ../../doc/tutorial/troubleshooting.rst:18 msgid "As of OpenLDAP 2.4, two configuration methods are available:" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:20 msgid "" "The `deprecated `_ " "one, based on a configuration file (generally ``/etc/ldap/slapd.conf``);" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:21 msgid "" "The new one, based on a configuration directory (generally " "``/etc/ldap/slapd.d``)." msgstr "" #: ../../doc/tutorial/troubleshooting.rst:23 msgid "" "Depending on the configuration method you use with your OpenLDAP " "installation, you need to chose how to add the canaille schemas:" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:26 msgid "Old fashion: Copy the schemas in your filesystem" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:35 msgid "New fashion: Use slapadd to add the schemas" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:37 msgid "Be careful to stop your ldap server before running ``slapadd``" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:46 msgid "How to manually generate the OIDC keypair?" msgstr "" #: ../../doc/tutorial/troubleshooting.rst:50 msgid "" "The keypair generation can be automatically done using the :ref:`install " "command `." msgstr "" #: ../../doc/tutorial/troubleshooting.rst:52 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 ""