forked from Github-Mirrors/canaille
doc: fix gettext .gitignore
This commit is contained in:
parent
913216d5cc
commit
eef7b5f820
21 changed files with 6116 additions and 1277 deletions
2
doc/gettext/.gitignore
vendored
2
doc/gettext/.gitignore
vendored
|
@ -1,3 +1,3 @@
|
|||
*
|
||||
!.gitignore
|
||||
!.pot
|
||||
!*.pot
|
||||
|
|
2622
doc/gettext/development.pot
Normal file
2622
doc/gettext/development.pot
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,384 +17,384 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../../CONTRIBUTING.rst:2
|
||||
#: 002b7b86e67341a3abe1dc69ec1e6a70
|
||||
#: db9f3c148acb45cda676a534529e8589
|
||||
msgid "Contributions"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:4
|
||||
#: dd19b789311b44ddbfebef856907661f
|
||||
#: ea0fa8d3ac0d4799a10afd6f37e05d41
|
||||
msgid "Contributions are welcome!"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:6
|
||||
#: 5a0c060f5510420485f21f180a8d16c8
|
||||
#: ba17c0c13c114915adc43e5639bf088c
|
||||
msgid "The repository is hosted at `gitlab.com/yaal/canaille <https://gitlab.com/yaal/canaille>`_."
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:9
|
||||
#: ba0d490fa2454469b836749c6f260ba3
|
||||
#: 701cbef5f1f547729633a993e3622c09
|
||||
msgid "Discuss"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:11
|
||||
#: 5e6f9e2ce04d441c834bd51320b99525
|
||||
#: 3d3467217204457eae495ce9c7597a30
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:16
|
||||
#: 0140e772bf834f889e84ec0e993fdb45
|
||||
#: c88320c4d0d34620b655788e1c9fa658
|
||||
msgid "Development environment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:18
|
||||
#: fa5a69a308724bcf98d79d3d2e3f28f2
|
||||
#: d9611e56c0f04f4099d6abb8bc2be28d
|
||||
msgid "You can either run the demo locally or with Docker."
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:20
|
||||
#: 0a41b0d076254191ad0614c09d718c96
|
||||
#: 16ed6d496d4a451382ea864560d8fe9d
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:24
|
||||
#: b0c122affe964f63a9d237b87ae8043f
|
||||
#: 5ec56d5524574bca8128f6dac3176d0e
|
||||
msgid "Initialize your development environment with: - ``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``. - ``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``. - ``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``. - ``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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:31
|
||||
#: 06d722cef5bf4514bbb820a4d1e43cf3
|
||||
#: 4d99057f1b0b42048a0a0ea8d094182a
|
||||
msgid "After having launched the demo you have access to several services:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:33
|
||||
#: ea39f2cd97274d7eb688562b3b05444c
|
||||
#: 7c17294c7b994de58363e4e72838185c
|
||||
msgid "A canaille server at `localhost:5000 <http://localhost:5000>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:34
|
||||
#: 880dcaf1bf8e4753bead6e6f5051c8bb
|
||||
#: e91a134548c54960b39cdf0e58390b1d
|
||||
msgid "A dummy client at `localhost:5001 <http://localhost:5001>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:35
|
||||
#: f0ab0940d9b04b9f91cbb3dcf7953e56
|
||||
#: 83c30705c35e4f62b2a2a284b08c8c2b
|
||||
msgid "Another dummy client at `localhost:5002 <http://localhost:5002>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:37
|
||||
#: 347d5b12d2054eed8ede671233b3ce85
|
||||
#: 2cb674d059a04dee9b746a7baaeecd17
|
||||
msgid "The canaille server has some default users:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:39
|
||||
#: 6323897e96df481db1bdd48ec861915e
|
||||
#: 2ac5d11cb40b4bffbc127225b286ccd9
|
||||
msgid "A regular user which login and password are **user**;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:40
|
||||
#: b10c66fe4dae4efca925aebcc307439a
|
||||
#: 9646c01bc0e04c4792ff402b86595705
|
||||
msgid "A moderator user which login and password are **moderator**;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:41
|
||||
#: 379aa4fc7d7a427ead3a6802bd843c79
|
||||
#: 7b5a9e12d296447aaca3f29ea4be3f47
|
||||
msgid "An admin user which admin and password are **admin**;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:42
|
||||
#: 17002848baf846bead5f780f81d8f555
|
||||
#: 3dbee7f7f26a43be90d535679c0a66e1
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:47
|
||||
#: 0fb9b013289d432280da24a3c0b3bd7f
|
||||
#: 6a80df408d77487e873a79468c27a761
|
||||
msgid "Backends"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:49
|
||||
#: 958b994659a74b6d92def6f9eded872f
|
||||
#: ed793c84780c4431b4a0f5174b77e863
|
||||
msgid "Canaille comes with several backends:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:51
|
||||
#: 1f1357d0032747dab9f508a4e0a42b8c
|
||||
#: 61e91cbb3e1b449d8c578142e0745e64
|
||||
msgid "a lightweight test purpose `memory` backend"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:52
|
||||
#: 1891b9a2fc514712b4adbf69c3ce1c65
|
||||
#: e167dd64b4f0429890295f6cd030e35f
|
||||
msgid "a `sql` backend, based on sqlalchemy"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:53
|
||||
#: dfe5ba8564c34dd5a5059defdbd7265d
|
||||
#: 1a65f2eac34342be8835945125ede8a6
|
||||
msgid "a production-ready `LDAP` backend"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:56
|
||||
#: e61ba8769c274e26b93a9379b2318c66
|
||||
#: 409d19a554034d76ba2135fe2e1a740c
|
||||
msgid "Docker environment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:58
|
||||
#: 789cfcce161041aab0a9ec38e60d1ce3
|
||||
#: fdeee3e754e843eba8b76ad705e60587
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:63
|
||||
#: 243bc254bb984976a9b7a1ebdfb164e9
|
||||
#: e30b205d85524074aeeb5a7d13c26965
|
||||
msgid "To do that, you can add the following line to your `/etc/hosts`:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:69
|
||||
#: 4c97cc128cde4bde9a615540fac34a37
|
||||
#: d7a9e2ab1a734dfd93cfadb72e9d9561
|
||||
msgid "To launch containers, use:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:84
|
||||
#: 37903a2ee9264932bfda81ccfc8c2f23
|
||||
#: 99a2e010018c4ab18f689adbd17949d2
|
||||
msgid "Local environment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:98
|
||||
#: 9fd679598df14c87983d9a3db07c1b14
|
||||
#: 4c63d4d9d6bc4be79415a7f0a921f3e8
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:103
|
||||
#: cabb1f62e5ab4f649333fb4bdea44bb7
|
||||
#: b6350782b583407f804ee9a125cc1f4c
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:113
|
||||
#: a968344527c248d28ee118a01deac886
|
||||
#: ddfc0afccdf849bfacf69a734948945c
|
||||
msgid "Populate the database"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:115
|
||||
#: f86dab9375c843329fda042e45a18fad
|
||||
#: 0d809af195c54c1db4a049349ec0701b
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:126
|
||||
#: e1c8a2e4f1154d4da564a52eed57bf70
|
||||
#: 191e9f1df4d845ccab01dcb93de8d944
|
||||
msgid "Adapt to use either the `ldap` or the `sql` configuration file. Note that this will not work with the memory backend."
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:129
|
||||
#: 3f7cb689b8c04892bacc9a1e69369f5a
|
||||
#: e15be9bc7ad44cf5852e7b819f3083f0
|
||||
msgid "Unit tests"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:131
|
||||
#: 5a55d7ab327844ecb7e5cdfba5692648
|
||||
#: 6db086cc47f34d91bd3d33524b2a64a1
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:134
|
||||
#: b59e6cc3d02e43cb809a4e917bdc9c9b
|
||||
#: 00e18c0ced044c949ee1a18d593da4d2
|
||||
msgid "To test a specific backend you can pass ``--backend memory``, ``--backend sql`` or ``--backend ldap`` to pytest and tox."
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:136
|
||||
#: 31a0a090499441cab7c275bced31a11e
|
||||
#: 41a97534fd4640bd9586f352647f57e6
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:141
|
||||
#: 4cd3c9737c4244de8817eb59ca927124
|
||||
#: 8f210b646ca84be2b83b9509b35e3f39
|
||||
msgid "Code style"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:143
|
||||
#: 0f2b878130954759a11524c208e26a5d
|
||||
#: e28cd3b679db45d4a4dee24039a28335
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:149
|
||||
#: cba1248331964d159b2b1253ae50634d
|
||||
#: 1213a35a573741f487d16ab7f3017048
|
||||
msgid "Front"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:151
|
||||
#: 1bc0bb39fb2b47c2aac56db867fa0d93
|
||||
#: ee73e266b48643f3b0d811fc3dba45de
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:154
|
||||
#: b4a85f39680449cf9f911d541d794c6d
|
||||
#: f5998a63a3a8473ebdace062b9e4125f
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:156
|
||||
#: cb749cb0196846578e5e04df1df97062
|
||||
#: 156c5f0058a44a83a5ef7fc0276a0e79
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:161
|
||||
#: deea2dbf6acb42e99b95f661d4a540a5
|
||||
#: d2222852829b41e39d47b5ee4e2f35da
|
||||
msgid "Documentation"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:163
|
||||
#: bde97657892b41d3a44e9c29919882a8
|
||||
#: 56ec493dc9c54b30ae012bce43edc8ac
|
||||
msgid "The documentation is generated when the tests run:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:169
|
||||
#: 91d5753457ef4fe08d82c1c03c30a4c6
|
||||
#: c724f6040e8e41dfaa0bd61783b3f75e
|
||||
msgid "You can also run sphinx by hand, that should be faster since it avoids the tox environment initialization:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:175
|
||||
#: 84a7965f74c342f4a767d918ec7e7fc8
|
||||
#: c870557153b74096afeabcfb31d16a6d
|
||||
msgid "The generated documentation is located at ``build/sphinx/html``."
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:178
|
||||
#: 3523b0c7c50544a7ae680fd16c821a28
|
||||
#: 69fc6bf00fe54884879b2d2a41877f66
|
||||
msgid "Code translation"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:1
|
||||
#: a8f1fb9815754963a29bcfa65855ef88
|
||||
#: cc50847556774dac9ce087a24bae715d
|
||||
msgid "Translations are done with `Weblate <https://hosted.weblate.org/projects/canaille/canaille>`_."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:3
|
||||
#: 3d5f471d16f5427dbad3a203cdd90503
|
||||
#: 3d831a3a927d456f834248caaef471aa
|
||||
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 ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:8
|
||||
#: ../locales/readme.rst:7
|
||||
#: f11c4c84df6d443190d1b60d4f858fce
|
||||
#: 7a6d3aff28fe4cf7a4e975ff7935d31e
|
||||
#: e5788bab9bea4b62896cea4130da2b22
|
||||
#: 78bc50b888bb49aeadc7a04a79426545
|
||||
msgid "Message extraction"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:10
|
||||
#: ../locales/readme.rst:9
|
||||
#: c7318169ac354feeae24e67436dd1c6b
|
||||
#: 5830609426e04e7ba3aeea18c413ee2e
|
||||
#: cdf33fd9d8ba4540aa843a236a424596
|
||||
#: 2c8e0e2054654b20a3b49db40f60601d
|
||||
msgid "After you have edited translatable strings, you should extract the messages with:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:17
|
||||
#: ../locales/readme.rst:16
|
||||
#: 764623358ada4e1684d1b572d61b712e
|
||||
#: e3af01ce677943feaa7ade5343c8e90a
|
||||
#: 98d3fdec177b4519bd4d9efcd5cd827c
|
||||
#: 1555b90dada547ce9112c0d5664c618f
|
||||
msgid "Language addition"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:19
|
||||
#: ../locales/readme.rst:18
|
||||
#: a2b5aff4084044d78c59e0fabc992490
|
||||
#: 546fd984ffa64b31972b1670b09ca6b3
|
||||
#: 32f431c9d9f9418292e69d27236af062
|
||||
#: 762c9254a1b04b71aeb43923910b130e
|
||||
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 ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:26
|
||||
#: a61a44e0a1914d6c95e4ce4a2fb7ca42
|
||||
#: 797cc0492f974a1e806df493b216c5f8
|
||||
msgid "Catalog update"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:28
|
||||
#: 1c475d88301b4d3aa56d82f20a24cc27
|
||||
#: a40f65b9a07e48d88f88e08096d31299
|
||||
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 ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:36
|
||||
#: 4200924e358f45499f460769cc67c6a9
|
||||
#: c3f0a5e6753c4c21ab3997c39d57800f
|
||||
msgid "Catalog compilation"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/translations/README.rst:38
|
||||
#: 40de58e8a420485eb689e4abb8a4fa5e
|
||||
#: 614a641d465649e7a779a9d4ef49cbd9
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:184
|
||||
#: a168ea61caf74157be0b82d1d9952af6
|
||||
#: add6d5220923488a82e49359ce7a0d55
|
||||
msgid "Documentation translation"
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:1
|
||||
#: b466e2381f024d40a12476d4846059f6
|
||||
#: a2cfb06dfde7462fb3382c20183342a0
|
||||
msgid "Documentation translation Translations are done with `Weblate <https://hosted.weblate.org/projects/canaille/canaille>`_."
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:4
|
||||
#: 1294588ccb444efda7d1edc0ac45c573
|
||||
#: 113485680b744151a4e88e903b33f63c
|
||||
msgid "The following commands are there as documentation, only the message extraction and the language addition is needed for contributors."
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:25
|
||||
#: 5574bcc510534444bf74cc4471725689
|
||||
#: e4baf07e2a99407a8a96e0574a012091
|
||||
msgid "Build the documentation in another language"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:189
|
||||
#: 6215d4058c6b45c9ab9c57244986b560
|
||||
#: 515603cf888740aa9a3dd3dd230e3352
|
||||
msgid "Publish a new release"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:191
|
||||
#: 5c63146cdc484f34a4ac23b3b60f7364
|
||||
#: e657f8e780dd4674a90bf0dde7decbe1
|
||||
msgid "Check that dependencies are up to date with ``uv sync --all-extras --upgrade`` and update dependencies accordingly in separated commits;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:192
|
||||
#: 4d516e6db43048a99f1112b743916559
|
||||
#: 391ef00613ed4d8ca5538c617ed4e9ac
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:193
|
||||
#: 785c12428a4943288820c40c5d0ac261
|
||||
#: 57694c4f22574e50bff25cab27182f2d
|
||||
msgid "Check that the demo environments are still working, both the local and the Docker one;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:194
|
||||
#: 0700ba761ff7459b8a1aa7e48afb8da8
|
||||
#: 3c03facaea6646948faf4531c2474b8f
|
||||
msgid "Check that the :ref:`development/changelog:Release notes` section is correctly filled up;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:195
|
||||
#: 19f01831d3c04d36b74e4355021cf704
|
||||
#: ab7667b315734c5b9a4222006d86b173
|
||||
msgid "Increase the version number in ``pyproject.toml``;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:196
|
||||
#: 3cc39e4b68bf400292e544a33e9dcda3
|
||||
#: d65334bb5a78403eab57f3b17995ca3f
|
||||
msgid "Commit with ``git commit``;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:197
|
||||
#: b2f863f911f24805a109793d6806f83d
|
||||
#: dee8dcd9aa344228b9f5cd8b9142a630
|
||||
msgid "Build with ``uv build``;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:198
|
||||
#: fc01b4e40b58444391e922a6e8ea9e95
|
||||
#: 7782721ef59e4196aca0b8e3b4eee781
|
||||
msgid "Publish on test PyPI with ``uv publish --publish-url https://test.pypi.org/legacy/``;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:199
|
||||
#: 0c7fbbb63e1e49ea871ca01165cb3b8a
|
||||
#: 1c23cb30798d4f06a418c61e6c7a998f
|
||||
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 ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:200
|
||||
#: e1a8cc289c9040c198eb0f8f8ba502d8
|
||||
#: 14eccb7318524fb2af7e0d75bdb59e19
|
||||
msgid "Publish on production PyPI ``uv publish``;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:201
|
||||
#: 572996fb9dae4a3cad4a53104b812f70
|
||||
#: 7776d49a05bc4399a09fa9ff7a08fc65
|
||||
msgid "Tag the commit with ``git tag XX.YY.ZZ``;"
|
||||
msgstr ""
|
||||
|
||||
#: ../../CONTRIBUTING.rst:202
|
||||
#: 91cf66e174e845fbad4201c90209fdad
|
||||
#: 69b763c261ce43478f815696e7762162
|
||||
msgid "Push the release commit and the new tag on the repository with ``git push --tags``."
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,6 +17,6 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../development/index.rst:2
|
||||
#: f8ef9113aa3f42238460597ae3d0bc4d
|
||||
#: 06473fb59658463eac64f549d1978fed
|
||||
msgid "Development"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,279 +17,279 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../development/specifications.rst:2
|
||||
#: a97a6bb1c237424994246e8e65391683
|
||||
#: 2383ea673b75451188733db5862b135b
|
||||
msgid "Specifications"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:4
|
||||
#: 75d7d4c9e1d943c0917c652bdaee5b8e
|
||||
#: 2ef6b8c589164db4bc70d90e406547f4
|
||||
msgid "This page details which specifications are implemented in Canaille, and compares Canaille with other well-known identity providers."
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:7
|
||||
#: 11062c45350643188f89a05c46b15be6
|
||||
#: ce5d7ed671a84146a75c86236a435bcb
|
||||
msgid "State of the specs in Canaille"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:10
|
||||
#: 339273b06e0b4c60ad30a7dedec78d6f
|
||||
#: e1579bc3332e4a63b0aac21055d366ea
|
||||
msgid "OAuth2"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:12
|
||||
#: f19a30db556b4c489e1cfd34a22d714a
|
||||
#: bce2b9f1363a4897b649cbf8b1ab312f
|
||||
msgid "✅ `RFC6749: OAuth 2.0 Framework <https://tools.ietf.org/html/rfc6749>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:13
|
||||
#: 5214108a1c8f4e47ad186ff7715bd304
|
||||
#: 0f16ff4617e249448a680965b8e27053
|
||||
msgid "✅ `RFC6750: OAuth 2.0 Bearer Tokens <https://tools.ietf.org/html/rfc6750>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:14
|
||||
#: 8296b65720114476bd1db0807519889c
|
||||
#: a872f28da388479784536ba3a86e19b6
|
||||
msgid "✅ `RFC7009: OAuth 2.0 Token Revocation <https://tools.ietf.org/html/rfc7009>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:15
|
||||
#: a7af32f3d44d44af8a37aa6f68b415c4
|
||||
#: 94e2bc5630a44815b4c93c4e807778cb
|
||||
msgid "❌ `RFC7523: JWT Profile for OAuth 2.0 Client Authentication and Authorization Grants <https://tools.ietf.org/html/rfc7523>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:16
|
||||
#: e5f4e81f5a7b4ddb873655612903f3ec
|
||||
#: 76e315ea5f684fb79290e26d57859f7e
|
||||
msgid "✅ `RFC7591: OAuth 2.0 Dynamic Client Registration Protocol <https://tools.ietf.org/html/rfc7591>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:17
|
||||
#: ea20c5a67bbe4de2a5fd5127e41b0283
|
||||
#: 9eae7bb9c29847a8a5a3eb28789e46b1
|
||||
msgid "✅ `RFC7592: OAuth 2.0 Dynamic Client Registration Management Protocol <https://tools.ietf.org/html/rfc7592>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:18
|
||||
#: 14f2599367a94c59abae6c6b67c5fadc
|
||||
#: 7f0334835508449085c14802ab6f72af
|
||||
msgid "✅ `RFC7636: Proof Key for Code Exchange by OAuth Public Clients <https://tools.ietf.org/html/rfc7636>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:19
|
||||
#: 1121950e20e04c90be2dccaacdd2ecee
|
||||
#: fbb4c383d63a46efb860728150f24ac4
|
||||
msgid "✅ `RFC7662: OAuth 2.0 Token Introspection <https://tools.ietf.org/html/rfc7662>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:20
|
||||
#: 0ea4a16217344ff7b5ee6c06927e6556
|
||||
#: 653ac730c45d4631a1198df2fb4e2ec5
|
||||
msgid "✅ `RFC8414: OAuth 2.0 Authorization Server Metadata <https://tools.ietf.org/html/rfc8414>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:21
|
||||
#: 949318440bb345acbe0654a797bd07f2
|
||||
#: c7d59a380e4a4de1b92c107f1b2c539b
|
||||
msgid "❌ `RFC8428: OAuth 2.0 Device Authorization Grant <https://tools.ietf.org/html/rfc8428>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:22
|
||||
#: ca5d9effb5f04710823144e6425d650b
|
||||
#: c075e766a7d446dd9c13344c3f86a2c2
|
||||
msgid "❌ `RFC8693: OAuth 2.0 Token Exchange <https://tools.ietf.org/html/rfc8693>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:23
|
||||
#: 253eda4c940a4e89a03d4ffd68e9da44
|
||||
#: 28a936713f9948b6a3764a19c027f6bb
|
||||
msgid "❌ `RFC8705: OAuth 2.0 Mutual-TLS Client Authentication and Certificate-Bound Access Tokens <https://tools.ietf.org/html/rfc8705>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:24
|
||||
#: 09b81d39ca2f410abf48cb370ecce899
|
||||
#: e6919e11c0e947d1b6e423a655a74d5a
|
||||
msgid "❌ `RFC8707: Resource Indicators for OAuth 2.0 <https://tools.ietf.org/html/rfc8707>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:25
|
||||
#: 9bd8b400a3b14a83915295f5a66cbcbd
|
||||
#: dcf39ac39c8c4504aa5286585795a804
|
||||
msgid "❌ `RFC9068: JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens <https://tools.ietf.org/html/rfc9068>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:26
|
||||
#: 46421682784443ea9da95d898c6c3b19
|
||||
#: e9c618050694440babc431d81eaea941
|
||||
msgid "❌ `RFC9101: OAuth 2.0 JWT-Secured Authorization Request (JAR) <https://tools.ietf.org/html/rfc9101>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:27
|
||||
#: 9794b722db5940ec96442e71c3f736ec
|
||||
#: 5245d41ffe9e4ed5a05bf5dff10724cc
|
||||
msgid "❌ `RFC9126: OAuth 2.0 Pushed Authorization Requests <https://tools.ietf.org/html/rfc9126>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:28
|
||||
#: 35e4b73e84dd46ff9748778d150977ef
|
||||
#: e82805a9bb934a61a36bff17697d6119
|
||||
msgid "❌ `RFC9207: OAuth 2.0 Authorization Server Issuer Identification <https://tools.ietf.org/html/rfc9207>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:29
|
||||
#: 390c1264e09543b999c7c6c526ef9506
|
||||
#: 13d5af1c63134be28a9c8f12925952f9
|
||||
msgid "❌ `RFC9394: OAuth 2.0 Rich Authorization Requests <https://www.rfc-editor.org/rfc/rfc9396.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:30
|
||||
#: 9d394579d199448d92824fc5b1615ddb
|
||||
#: e2440df8c0bc43a393e9f29fb658c080
|
||||
msgid "❌ `OAuth2 Multiple Response Types <https://openid.net/specs/oauth-v2-multiple-response-types-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:31
|
||||
#: ec3047a0028240a9a426ed49cd9fbd72
|
||||
#: aceb377eee7f4b8d813edd4d649eea45
|
||||
msgid "❌ `OAuth2 Form Post Response Mode <https://openid.net/specs/oauth-v2-form-post-response-mode-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:34
|
||||
#: ef134aa15cc04f8aa1f66d29af6444db
|
||||
#: 536cc3c67db14ed4a20bd172e2f02c2d
|
||||
msgid "OpenID Connect"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:36
|
||||
#: 1a4fed4ff22743ac8a6994bb06b64d07
|
||||
#: 501bfe9938d44b21bc9a29e3ee3f1ccd
|
||||
msgid "✅ `OpenID Connect Core <https://openid.net/specs/openid-connect-core-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:37
|
||||
#: d61d7bd64b024945817c8fb8ff146aa7
|
||||
#: 940a4a7b20da4c57ab910c3952941bab
|
||||
msgid "✅ `OpenID Connect Discovery <https://openid.net/specs/openid-connect-discovery-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:38
|
||||
#: 390181b65f6247988cd1492e1c556053
|
||||
#: e9243ed2cb5843debd7864bacd3615bf
|
||||
msgid "✅ `OpenID Connect Dynamic Client Registration <https://openid.net/specs/openid-connect-registration-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:39
|
||||
#: 714ed86b678e42e9808ef358702430f1
|
||||
#: 260e55b2265f449da141e7b231859956
|
||||
msgid "✅ `OpenID Connect RP Initiated Logout <https://openid.net/specs/openid-connect-rpinitiated-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:40
|
||||
#: c2152b277d7144bd94ae19ad511f544c
|
||||
#: 206d7fc552224c9ebbee3572273c82eb
|
||||
msgid "❌ `OpenID Connect Session Management <https://openid.net/specs/openid-connect-session-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:41
|
||||
#: 013f8fdab4cd4c8fa7327f9b2a57c1ea
|
||||
#: 8c4191636e1a462b8c8078918a753008
|
||||
msgid "❌ `OpenID Connect Front Channel Logout <https://openid.net/specs/openid-connect-frontchannel-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:42
|
||||
#: 6e40e88f49d44d56804247f11335b56a
|
||||
#: 163e00dec72e474d89c739d92f25b42c
|
||||
msgid "❌ `OpenID Connect Back Channel Logout <https://openid.net/specs/openid-connect-backchannel-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:43
|
||||
#: 3d9b66f66adc4db2bc322fbd831dc655
|
||||
#: debeca055bdc4633b649b5fd9baf4346
|
||||
msgid "❌ `OpenID Connect Back Channel Authentication Flow <https://openid.net/specs/openid-client-initiated-backchannel-authentication-core-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:44
|
||||
#: edf569cf85144687ab8b11d290278122
|
||||
#: 96e17c4d073f403889ba175279c8a621
|
||||
msgid "❌ `OpenID Connect Core Error Code unmet_authentication_requirements <https://openid.net/specs/openid-connect-unmet-authentication-requirements-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:45
|
||||
#: 5eed00445d4b41adaeddd84a90e3125b
|
||||
#: f3d5d91958dc4dea9b3a3e359c2e8ace
|
||||
msgid "✅ `Initiating User Registration via OpenID Connect 1.0 <https://openid.net/specs/openid-connect-prompt-create-1_0.html>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:48
|
||||
#: ../development/specifications.rst:64
|
||||
#: 8366892620b9425b9681dee3d90902f6
|
||||
#: 534b14ea707f47d883031ce0c2ad422d
|
||||
#: 3d08369fd6424b71b7a1714928df5b24
|
||||
#: ec31988387b144b5a71a8ff448bd57cf
|
||||
msgid "SCIM"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:50
|
||||
#: 7874e3563b874bdea0eddbfd185ebc6e
|
||||
#: 55efb939c7424dd7b0a458e4536a9a56
|
||||
msgid "❌ `RFC7642: System for Cross-domain Identity Management: Definitions, Overview, Concepts, and Requirements <https://www.rfc-editor.org/rfc/rfc7642>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:51
|
||||
#: dc1d0faa287b404e8a9a77b40b8a0217
|
||||
#: 0777963266124280b73cd65111298a6b
|
||||
msgid "❌ `RFC7643: System for Cross-domain Identity Management: Core Schema <https://www.rfc-editor.org/rfc/rfc7642>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:52
|
||||
#: 1f08e6eea6024ea0b5c58667c7dbf48a
|
||||
#: 1413af49b35e43f394a69a91a9fb9254
|
||||
msgid "❌ `RFC7644: System for Cross-domain Identity Management: Protocol <https://www.rfc-editor.org/rfc/rfc7642>`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:55
|
||||
#: b0d76f694f054508b87fc7daba711f30
|
||||
#: 958bc79cc19548f5bfee6e20a9f4971d
|
||||
msgid "Comparison with other providers"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:57
|
||||
#: 5b284471edaf4fb0a91ee8b75d265d74
|
||||
#: aad219093f2243f68e8678886460e50f
|
||||
msgid "Here is a feature comparison with other OpenID Connect server software."
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:59
|
||||
#: 1e727634ba574bef9fab355484f4994b
|
||||
#: 74f4c92786fb42cc8c9865d6791e8f2e
|
||||
msgid "Canaille voluntarily only implements the OpenID Connect protocol to keep its codebase simple."
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:62
|
||||
#: 9c600e2a483240c8a166d2465e746dc4
|
||||
#: 28474b61dca1437a8ba4d9e8fbc4fafe
|
||||
msgid "Software"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:62
|
||||
#: 8cdd9df00b754a7ab51faa08ce09b8e2
|
||||
#: 90e531639a8048ad836cb2510bb4b4a1
|
||||
msgid "Project"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:62
|
||||
#: 8d2892100b0f42549279e64ff7a69c13
|
||||
#: 2016be5359144e6fac7ae582cdfb3095
|
||||
msgid "Protocols implementations"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:62
|
||||
#: 96807e04038b49a2b211721a1e8c1d0d
|
||||
#: 6ad725c101e64176a7848199cc032cea
|
||||
msgid "Backends"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:64
|
||||
#: 7e230f36d1d44b3dbfc66acfea5625ef
|
||||
#: b15c641b913b4ac9a29ea3308555e9c9
|
||||
msgid "FLOSS"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:64
|
||||
#: 0efe70a1d9354b1e96b2679d712419a3
|
||||
#: 73626dca03614498bf386d2b3bfc9123
|
||||
msgid "Language"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:64
|
||||
#: f792dfb7f933494088f88be1703218c1
|
||||
#: c29f145e63714ccaa8a03cca4e3f22f4
|
||||
msgid "LOC"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:64
|
||||
#: 0abe79cb5e464cb7b8b7bcea5271fed5
|
||||
#: 23ca5dbb097e4839a136bb799bf80f55
|
||||
msgid "OIDC"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:64
|
||||
#: 983adf22c3654f21895cc7ff72d92dc5
|
||||
#: 11ecae1c29784130b88825b48252f35c
|
||||
msgid "SAML"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:64
|
||||
#: 6985f4286f8f4fb7b843ee73e03e8731
|
||||
#: f08202ef5e9b483a80b28050363813e7
|
||||
msgid "CAS"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:64
|
||||
#: fa51f3013aa54f16a2ca358197c08479
|
||||
#: c15a06d0987b4617b1a27f63c6ea8bbb
|
||||
msgid "LDAP"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:64
|
||||
#: c339c0f461194b9e940042576fda7446
|
||||
#: 88d8a0776138423baadcac6030b6b58f
|
||||
msgid "SQL"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:66
|
||||
#: e1646674415744f88024dcbf7cf671ef
|
||||
#: 36b09d27feb3464a9390fefff5a7fe93
|
||||
msgid "Canaille"
|
||||
msgstr ""
|
||||
|
||||
|
@ -305,83 +305,83 @@ msgstr ""
|
|||
#: ../development/specifications.rst:84
|
||||
#: ../development/specifications.rst:86
|
||||
#: ../development/specifications.rst:88
|
||||
#: 61fd556cb20d492eb3d00a3f25119922
|
||||
#: 21b316fd400144b1baf2a84b43b1e91b
|
||||
#: 081fa6b4e8bc4a2a84c5065be6fc86b2
|
||||
#: 39da93a684b84957a285d01ff9fc429d
|
||||
#: 738e75094fd047d8a4c3ededeffd82a5
|
||||
#: 75f85206ad4a4cf1a2be4eb97392b7f1
|
||||
#: b4b7dbbf0d18428cab9909f751156c3e
|
||||
#: e8601f2f08e8478b8e806af474867681
|
||||
#: 625c279a263645edbd90483e39906b61
|
||||
#: 3a71fe452de5468e84d63e5e5863df5d
|
||||
#: 22d33a862ab2488cbd51962fd7f76efb
|
||||
#: c202d381f1854b949df07f8a6c53fc51
|
||||
#: 3c29fd50290242c39afabcd83b39be14
|
||||
#: 8f029b73bc134579ba7aef85b2258bb1
|
||||
#: 18970336aa81458f83ce8efe2e1cb388
|
||||
#: 0ff561dcb5a74ea6bc8daa6912eedbf7
|
||||
#: 512b4f6b8da44ce691b08dd17fccac1c
|
||||
#: 0353d5d6952e454d92d2714158a3fff7
|
||||
#: 12ea772de9ed468d820b5cd8b779c63d
|
||||
#: 9667afb42f474d7890846205b5f12aaf
|
||||
#: 1c8f030a0ddc425c99b7854c6446152e
|
||||
#: ceb819004a5949d7a54bb3ae0811fdc3
|
||||
#: f35d58e2b267437fb658cbd453deb92b
|
||||
#: 0eb2098ed2ed44fc9e63c65651de75c6
|
||||
#: 39683a7608824577a002940e9b3caae1
|
||||
#: 7772e40b9f574ffab4146d1c8181bcae
|
||||
#: 78f98cf3d58f446b905d6576cdf03dc9
|
||||
#: fbf1aa18e2e941408b568cc17c93f991
|
||||
#: a1198553c8cc4e6da83b4721719ba046
|
||||
#: 98777ff169804c9b8bddae6231196cc1
|
||||
#: 203d011b336a4eb9be05bba9a11ed653
|
||||
#: 77d8a7117ad74c24a2a7cd5edf2660f5
|
||||
#: f01d6c19c10249e7b2ee838617aaa991
|
||||
#: 2750a5cba5c7462b90f0c0c2c0c641ef
|
||||
#: 97fed39b6da643aeaea1a3376a6abab7
|
||||
#: a1bf1f291f7d4825962693679b4d0dda
|
||||
#: f5c658e8843d4d3fa545b84a59ce5a1b
|
||||
#: f7aa39787f5041b0982c9b6f8fd7fc21
|
||||
#: 4ed876d863db4330a3892334c172355d
|
||||
#: cc0096f4698940d08b82d53cc8152ed5
|
||||
#: 5547268b704a4692a6123aec3baedf4a
|
||||
#: 805d4d7d81724af3a7915e29a7a43873
|
||||
#: 59a184ce7f854fe69d5b0e0f05ac7ac7
|
||||
#: b1e2d928968147429a235debf80c75b9
|
||||
#: 9f3b574c47f741dcb447476db7adfa23
|
||||
#: d15375d26e4d4482baa98ad71d98d56b
|
||||
#: 5a5847cc16c64f52b0dba5b39082ceb0
|
||||
#: 6d2ea3bbef584893b186b6eba817d27a
|
||||
#: c3d89ead25df491da9676ca4ef4efdb2
|
||||
#: 573b3e570b59475482b3bc67d3b76ece
|
||||
#: f9ffa865465e46e89841dead35408ad4
|
||||
#: 1d0b3f93d7624e2995fdd8571d8520a4
|
||||
#: 1127c63012824b6b9bf9d0671e37f1e4
|
||||
#: c79b6ee5249e464087b2e98b600d3167
|
||||
#: bb1245ee01ef49089f893aeca7d1cca5
|
||||
#: 099c80fc74334fccacdb0f95821ea043
|
||||
#: 0b1ec06cc91140e2bfd9649af05aca99
|
||||
#: 44f1951905794391a0239cbc55a73b49
|
||||
#: 08e5a3acc0a6475ea717b19e33a78de5
|
||||
#: 1e6802c43e8742a8aba6967c7b58a0ae
|
||||
#: 4c8d38384fd0454598ce7f55a53c8b90
|
||||
#: a72be67fc5014d63829596f87977a2c8
|
||||
#: 072cba535c7d4b07bed0be8adfcb5cec
|
||||
#: 0f4aa33ba6584e98a9eaa297d0c94bb0
|
||||
#: fadd2afadd834cedbd90bb5bb9a9014b
|
||||
#: 43eebe1b471c4101a0c92ea3b2a581f5
|
||||
#: d271fc21b16c4ffcbe345c6468f2b0a9
|
||||
#: e8ba0239a4b749e7a25fb8c635f589e7
|
||||
#: 1e47f1133b4e4a0e9c831cd5e1a13698
|
||||
#: 9805c61499404f379aa38b4b66c11b39
|
||||
#: 35600f8ae23c41fcac1e4cedaf78db99
|
||||
#: e33c8e80263d4fbfab0ff58fc214cb8f
|
||||
#: 58988f1bd01f49bcb8a3bfe088ed011b
|
||||
#: 8766d871a0274f0b971c264c78120d26
|
||||
#: 349c74fb53ea407d84d2956ccdbc46fa
|
||||
#: 6cb5dea79610432e9dfdea8c2c626097
|
||||
#: 9bfd6602bb454ea39e137608d521e34b
|
||||
#: 454f0ee660ee499283215360375fb802
|
||||
#: 1c6ed99217124047bb586e7a891759db
|
||||
#: 2c9b0c967eec4506bfcd5dbbf52afb38
|
||||
#: 7dbecc531d094e4484f22e5060f83a37
|
||||
#: 77a7e78473cc48099cbd2d1ffe9428f2
|
||||
#: c74de60c04914a7f9e2c06e43bbe7781
|
||||
#: 14417de9256e420ead7cef2967be4a6d
|
||||
#: 2ab94593a8e9419492ec2920eda40d75
|
||||
#: a439c4a58ee84802b941c9286bd22bbf
|
||||
#: 0a50f3e6a3e14a5ca080519a2387f1a8
|
||||
#: 6e21519d3fe840b1a8511a46ea29feb0
|
||||
#: e257e70630c746189e0f3dcbe80680ad
|
||||
#: 1b7eb2933228484ba7be3939e85199bb
|
||||
#: fbe1ad750c384be994f6785667e04d64
|
||||
#: b8e790defcfd4060831916e10e35eb51
|
||||
#: 596178c6b8d14a7393e0bbed037c744f
|
||||
#: 4c78c1fffa8b4568ab0d592a101f960f
|
||||
#: 5c8f704976a94119a86e8699f0a4e81f
|
||||
#: 2d8ea8069a934b38ab843b8a5f973a39
|
||||
#: 7befcce958644063930aa1408d04e00f
|
||||
#: 765ee0d0ceec4a0eb9cfe961c9f58d39
|
||||
#: 7a7f0093c2c84333b30b2812477b47b1
|
||||
#: 0f611501e77e4cb29d60d5c669f1e24b
|
||||
#: 9444fb2a3e0740dd9d5ec6a5f2a616d2
|
||||
#: 092db271989440aa80041a75259a11f4
|
||||
#: 5caa2e5cb2c941128d3693c1cbc24002
|
||||
#: 4e8ed6d107234a949ffeb1030a62936d
|
||||
#: a5079ead19194736849e33ae37800cde
|
||||
#: caf9f4e107af45fc81a8805315b76ba2
|
||||
#: a0f1e032b5b649db88c6d424e0201c77
|
||||
#: e33c9d06ce5e474c9e52b4d92a3e9667
|
||||
#: 86593813ccdb456ebd0d83b27eeb01cf
|
||||
#: 8f8b3d4f54864fa48122dc593a86518c
|
||||
#: d4498551e8d94e2a9eec0b40ef44a7f7
|
||||
#: cfa66105b6d34120918736d616c1a03e
|
||||
#: df7e4d13d307478da90f47c6a25967f2
|
||||
#: 3028033c8ed04f13ac3bc5d429512376
|
||||
#: c534146a75ab423b9dd3eeaec1086f86
|
||||
#: a531b5e1ae8d4f08b3ab64fb41b95eac
|
||||
#: 0f0ed37cd7f1417ea714b6a26e0aa821
|
||||
#: 2f74de566e7f4bb6953d723937fdcfbb
|
||||
#: d2402eff2aa54c4ba72167030aad1624
|
||||
#: 2de2fb6bb0ac465185d04c363810a287
|
||||
#: 8c9f23f2ec144bc091870e216866bfd5
|
||||
#: 778477d68681415cb697a3f5fbecb407
|
||||
#: d4f477480a384c0fa7cc6e04c24fdb0c
|
||||
#: 300ec52ae51f48118892ad89eaae110c
|
||||
#: d764f65e2aa64f8abc37a03e435864eb
|
||||
#: deddbee4686d4593bd8f25a94403c496
|
||||
msgid "✅"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:66
|
||||
#: ../development/specifications.rst:72
|
||||
#: ../development/specifications.rst:74
|
||||
#: a80c37859bd44e319edadf183220a78f
|
||||
#: 24b3e50fd6b1448eb430a1d191b5270b
|
||||
#: 7036e1a28c2145a68d3fc01d990a8dfa
|
||||
#: 01dff9df020340d3b54406638f8ade39
|
||||
#: 9b3140d0523c4308bc9134ef0b429d2c
|
||||
#: 4b1e5e8fc53c45d78490dc275918de15
|
||||
msgid "Python"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:66
|
||||
#: 0a7351b6a6b94bb8b27a0bf5551bb52a
|
||||
#: 96c10219b0b14aa19ce8a108a7ae7535
|
||||
msgid "10k"
|
||||
msgstr ""
|
||||
|
||||
|
@ -395,30 +395,30 @@ msgstr ""
|
|||
#: ../development/specifications.rst:82
|
||||
#: ../development/specifications.rst:86
|
||||
#: ../development/specifications.rst:88
|
||||
#: 6c9a76b2c5de48ecb8f0d21b6852fbe9
|
||||
#: 010027f0edd9497595f7d90006d01b43
|
||||
#: 65026d1d5f1b4e44987f53b9dba9003a
|
||||
#: 91ad0a0db8ec4ea8a621c78384a0b299
|
||||
#: f0de2f44ad6940ae9cfb9ab991ddf4ac
|
||||
#: 5cffb63471b8475d88a9f3146629bcf6
|
||||
#: fd51bae4f61d49a3b58bf37ceffdb9fe
|
||||
#: c2aa72806e8a46b190a5c995bfe73cb4
|
||||
#: 5b255e3aecb04129ad44edf63e1db2b9
|
||||
#: c9f12585f8974aeda0d0da84c3eba2e2
|
||||
#: 30dc6b38e0214208ae8b8c5bbd581ce7
|
||||
#: 298aeeb5f2f542a19d340eecf701ac36
|
||||
#: 764b4774f15b4fa69ebf933067aee70c
|
||||
#: e7833e50200c42c4a2bb825f333b126f
|
||||
#: a8d152df986e4418995aac2db1fabe22
|
||||
#: 3fbd31c8e87845e081a6fd930fcea34a
|
||||
#: ba29ae1d68e647249a876c7c466140cd
|
||||
#: eff68ea6bf914e6d9460a75a7b95df1d
|
||||
#: ee6547c1037c4daa8c7e47d8b293acfe
|
||||
#: 3ebd793a1a814a59ac86d95ac10d5df2
|
||||
#: c5f6dca104ff4b96b3e2efd62193fe07
|
||||
#: 90a7b98bef2444de873bccf36b6945fe
|
||||
#: d50482bdbeaf4df3a1e96da071973245
|
||||
#: c9b9adb75109471296e228d204cba052
|
||||
#: 46582f2fe84c49cd8c0cb4c8aadc9901
|
||||
#: be741254f47f40a3a8184bc4e9d1da25
|
||||
#: dd27269b4d13497db74735e450ebca2f
|
||||
#: 9eadd8b5840940bb87c3549722814f48
|
||||
#: 3608cbf9d76e443187d5aa737fbad466
|
||||
#: 15fa182a79c14d169755cec6b57208e2
|
||||
#: 62636f44d520479ab343eff200e99fa1
|
||||
#: ae0edbc27c7f49b3bea30ed31fbe1911
|
||||
#: eb691511657747a499a83d4fa93e5e82
|
||||
#: 54c00360d6eb4809a8109defc6b2b87b
|
||||
#: 8fdc4d649f4a4e6e8dc05bb9d04d87b9
|
||||
#: dfd6b6d189254825bb6ef6a6d7e8aeb2
|
||||
#: 7457ad39b3694ed6b9f55e066e84368b
|
||||
#: 27fa0f65ca344c619c008634c795839c
|
||||
msgid "❌"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:68
|
||||
#: 53518997880f4f07b39da682993af4b6
|
||||
#: 176177908d034923b2aee29868ef6796
|
||||
msgid "`Auth0`_"
|
||||
msgstr ""
|
||||
|
||||
|
@ -426,117 +426,117 @@ msgstr ""
|
|||
#: ../development/specifications.rst:78
|
||||
#: ../development/specifications.rst:80
|
||||
#: ../development/specifications.rst:88
|
||||
#: 4bb7beffd5744597b06495041c0e9a13
|
||||
#: 8dc3389193d94a8aac0dd2409f8e3201
|
||||
#: 36a2e73ac5924e40bd2647085e050940
|
||||
#: b02e82ee66624ae79ee49a62b551c186
|
||||
#: 2bcd9ba2cf8e46fc81f6c5dd24c4a9ee
|
||||
#: 4d3a8010d2334d8096d81a88597449d3
|
||||
#: df26d18da1524cf49f5f33a2cecb5bf6
|
||||
#: ec53c642971f4347a16eb6530e5f819e
|
||||
#: 7a90b30c977242f7aa46a5c08bf9d4b7
|
||||
#: 34ea26174ce84747a3098db253c053d2
|
||||
#: 2197b1423cf24880bd48984365df26ca
|
||||
#: 343c98b7aae64c4b9b13401296895ea2
|
||||
#: 0aed1e6f1ed140fcaa16586bfe983023
|
||||
#: 437f53f33fe94e928888c9611c8e96e3
|
||||
#: ca5b6032265d45c9b26dc476f4631586
|
||||
#: cda04abd7d0f49598c1e5847a0e46893
|
||||
#: c9771ac23ed44441bd5bb7f6634ede8d
|
||||
#: 522c4a868dc84cf3b0d349a7b83e1044
|
||||
msgid "❔"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:70
|
||||
#: 9b22b3deecfa4382aaca36cb28817c8e
|
||||
#: 3de4a343d96b4a699f2b3a28ebfbb76f
|
||||
msgid "`Authelia`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:70
|
||||
#: ../development/specifications.rst:82
|
||||
#: da7968f0492b43f4a6665d1b129b2fd5
|
||||
#: 2d2b51ee61c74a9a90438d276e38c453
|
||||
#: b0f9a8ac302047428af718460e7e46d6
|
||||
#: 40010ae725194f3799a9740e20c4ae84
|
||||
msgid "Go"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:70
|
||||
#: ../development/specifications.rst:82
|
||||
#: 8f3b5c500b2544248e05887895e067c9
|
||||
#: 8dcce8b1981249dab552acdfc8585636
|
||||
#: 3b23b5c9fc4242d4af838dfdeba90474
|
||||
#: bb830e5335294f36ba951698d814e713
|
||||
msgid "50k"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:72
|
||||
#: c6e613a5ed0b4f649a3a03e43277d21a
|
||||
#: 93151babd6a84e208a8cb864acb445a0
|
||||
msgid "`Authentic2`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:72
|
||||
#: f614cf3f446640fdb5569df25eab8e77
|
||||
#: 7d26a37f8f2d490ca5c464422d2da857
|
||||
msgid "65k"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:74
|
||||
#: 6c51f85a594948dcbaeb0aad65c1280f
|
||||
#: c79b04fe99584a4183258a9bb56afff6
|
||||
msgid "`Authentik`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:74
|
||||
#: 9f0ff320b7f84eba92f2ae5ca9f40178
|
||||
#: 34c65fd0b72146b1bdb2392653fbd7bf
|
||||
msgid "55k"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:76
|
||||
#: 550458f7722d41d79719749d4a064c6e
|
||||
#: 2dd361f5df204f2197da5976329b8bee
|
||||
msgid "`CAS`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:76
|
||||
#: ../development/specifications.rst:80
|
||||
#: ../development/specifications.rst:84
|
||||
#: 0e6eacfcc45b442cbb6565dc427e14ea
|
||||
#: 5a2c7ddf83984e1091f6da3e4c965269
|
||||
#: 16b8475565f5425caf749a61ba848778
|
||||
#: d1431df43a0844e592a30e479cb711d7
|
||||
#: 4e12564f864e4fcca5c59a70971b197e
|
||||
#: 0e395d011cea454080b706263976c5a8
|
||||
msgid "Java"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:76
|
||||
#: 2226d6eecd7b4afbbc94909f72bbf30a
|
||||
#: 3c237a5d63994ccabf80d364775f6bd2
|
||||
msgid "360k"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:78
|
||||
#: a90c6f2eb82c459baf20398845e55e07
|
||||
#: 1a3be2d069ee4442b7fa71ac5cb4c245
|
||||
msgid "`Connect2id`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:80
|
||||
#: d56e5f1e581a4aaa8cbc4ab09c75be81
|
||||
#: 8cb2733860b640ae9bcd9aa2b972f8c1
|
||||
msgid "`Gluu`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:82
|
||||
#: b9d37670e26d4e37afba75b9c8c2b870
|
||||
#: 55764f0dc4bd4f9195fd8a68024f9ccf
|
||||
msgid "`Hydra`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:84
|
||||
#: e14ff3876fb64d58a512790f856dc7d5
|
||||
#: 7532697da47043a9995922fd436fac5d
|
||||
msgid "`Keycloak`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:84
|
||||
#: d7c0c274ec184995b9b92a268036e7a6
|
||||
#: 38a63029234442cf8a45a3eaf5e4c5af
|
||||
msgid "600k"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:86
|
||||
#: f36f2c4254104ba88bfd0b161b743716
|
||||
#: 6960f54d48a84e7389e1e733a107fc06
|
||||
msgid "`LemonLDAP`_"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:86
|
||||
#: 3cc4eb9ce6ab437aa60d1fe99a9b2c18
|
||||
#: 12c8306ec42e41ca83f5ea529d87f797
|
||||
msgid "Perl"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:86
|
||||
#: 93b87c2ff8884d75b50d71df6807d844
|
||||
#: 5edc7bd6be844833a7c456f9bec02b10
|
||||
msgid "130k"
|
||||
msgstr ""
|
||||
|
||||
#: ../development/specifications.rst:88
|
||||
#: e04aea3bf9ec4e5fb14d6b2da908f685
|
||||
#: beae02477d7d4c768d483db955ebd314
|
||||
msgid "`Okta`_"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,581 +17,581 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../features.rst:9
|
||||
#: e1788d199fc64e57a43d7ebb153e05c9
|
||||
#: 3a39687e5bb049d585c3109447fa1161
|
||||
msgid "Features"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:11
|
||||
#: 1e7418cec66f4b2db1f86d4a377f538f
|
||||
#: ec85227d7e8a415b9d94c7e8a290495d
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:15
|
||||
#: 4c66277e518f41539dbb0744ba1bfd12
|
||||
#: 1d01709835b447ffb8daf9945e64d9c4
|
||||
msgid "Users can interact with Canaille through its :ref:`web interface <features:Web interface>` and administrators can also use its :ref:`command line interface <features:Command line interface>`. Canaille can handle data stored in different :ref:`database backends <features:Backends>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:19
|
||||
#: 305bf7e16c4d44c6a18aaa120bb0c8cd
|
||||
#: 446f2f01004a4f3c828b318afd18bcfe
|
||||
msgid "Web interface"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:21
|
||||
#: 4089798492e546d1a7bf4606f554bdff
|
||||
#: 297d50ea1e8f4b90928ff18dc836cfde
|
||||
msgid "Canaille web interface can be used either in :doc:`production environments <tutorial/deployment>` or locally for development purposes."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:26
|
||||
#: 20ae09b8bd004ff68f64f36928c9fc98
|
||||
#: 2a5db38617a44ed596d35c10bc540bd8
|
||||
msgid "Profile management"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:28
|
||||
#: ../features.rst:217
|
||||
#: e24a042cb118431a95add4f478a08262
|
||||
#: ebcbf54330ab47abb34d392667e229a7
|
||||
#: 9d832867dc5e4b0285f6b185b0ee547b
|
||||
#: 581a25e539814b12a1c252f0242be431
|
||||
msgid "Profile"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:33
|
||||
#: 7f9db47436344fe78b21670afaf77a83
|
||||
#: 877ea17f9ff844119de7ba5e5e5cd0a5
|
||||
msgid "Canaille provides an interface to manage user profiles."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:35
|
||||
#: 1341d4b0d2e0465cb8e2d0240a5b0f5e
|
||||
#: 45d88de9e4524c44a5e80daf0b1357b1
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:37
|
||||
#: 373496bfb0b64f4d89f22ccb1941f998
|
||||
#: 74f24b0d610a49bf84dd6c96ff53146e
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:42
|
||||
#: afa6f6a849a142eca8e02e231505a43a
|
||||
#: 087ae1a46d26413ea42ce44662933f0b
|
||||
msgid "Email confirmation"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:44
|
||||
#: ba3009e49eb64aa483d430202bad3789
|
||||
#: 82810b7b19d94141b8547b43bd9d8ce8
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:46
|
||||
#: d58ee1760b684818925e094714dc23cc
|
||||
#: 80defdc6c0aa4920a5fa8577acaf6fa6
|
||||
msgid "Users with :attr:`user management permission <canaille.core.configuration.Permission.MANAGE_USERS>` can set user emails without confirmation though."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:51
|
||||
#: c2709b4b2fd24ca1bdf7e7ec2955beb1
|
||||
#: 351ea71b5b1a4827a53592645bb8a80c
|
||||
msgid "Group management"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:53
|
||||
#: ../features.rst:140
|
||||
#: 6c2de058bb824823910158983258f354
|
||||
#: dccd011cfef14d3eb8980324288a4f62
|
||||
#: e4a31dade59b407a9d8df7a0314d1cf2
|
||||
#: 54541ece476c4d408288f0337784a03c
|
||||
msgid "Group edition"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:58
|
||||
#: a44da450bd454e9a99d52eab2a2561c8
|
||||
#: a2cfe7269999424bb8748a13a95a10da
|
||||
msgid "In a similar fashion than :ref:`profile management <feature_profile_management>` Canaille provides an interface to manage user groups."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:60
|
||||
#: 84ff6fdd31e24c28ba5550a469342c5d
|
||||
#: fbb7991d7a63424c9ae6e0fc89f8242c
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:63
|
||||
#: ../features.rst:83
|
||||
#: ../features.rst:149
|
||||
#: d95e01dbde7c46d597a37d02a4d8b949
|
||||
#: b14ee30b70144c37981fae3cfd113080
|
||||
#: 1260c7fd68074c2ebb723a49254df6d0
|
||||
#: 7b47c38d02644c89a065a8cfb094e012
|
||||
#: 766b52d4eab245d2b3f3aa8aa7e0c282
|
||||
#: e0236e78322244a3841b0724694a48d3
|
||||
msgid "Todo"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:64
|
||||
#: 837aee8e92cf42c08e9f351b89e9995b
|
||||
#: 39c58580da09403bbb22cfe1d5598ce3
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:66
|
||||
#: f55808a8891c42e3ba8b16c77b785abf
|
||||
#: c60fc3e5961e42758063d4367d906411
|
||||
msgid "Group management can be enable with a :attr:`dedicated user permission <canaille.core.configuration.Permission.MANAGE_GROUPS>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:69
|
||||
#: 16bab4e755fc47c28190b148b60fbd2e
|
||||
#: a78a3715d55844b0900f9916b6f2e7b2
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:75
|
||||
#: fe65b8aafe6b49d0b7ac7564746c8b3a
|
||||
#: 8f7758bdc0ac4769a31161c485c1ec8e
|
||||
msgid "User authentication"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:77
|
||||
#: c9f38668647c46c1a6eddbffc8bf55df
|
||||
#: 4b2d976568b14c4688f875adf9ccc562
|
||||
msgid "Unless their account is :ref:`locked <feature_account_locking>`, users can authenticate with a login and a password."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:81
|
||||
#: 68e57e4ac74a455c96f886ceee02b79e
|
||||
#: e682b2ba5dd74bdd9ffaa86d2abc9f3f
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:83
|
||||
#: 5ac48ef797dd43c28e2e49f8eb23b5b2
|
||||
#: dfc328ffe1af4b918e2192b2ed14c637
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:88
|
||||
#: 87ee6d88dc484fa7b2622e3ebe1445f5
|
||||
#: 3fefd07ff8c24b16a00c2120e46e291a
|
||||
msgid "User registration"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:90
|
||||
#: 2cd96a46a4df479499728c1bfdd2aba9
|
||||
#: b18b55ebc00a442db9a09ea5a58f1a9a
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:92
|
||||
#: 457cfe757e81479bab21c3fa83e24be3
|
||||
#: 517379413a544000b36f09ab035a2f4b
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:97
|
||||
#: ../features.rst:99
|
||||
#: 745d2713bf794b819c4265b90f54a7fb
|
||||
#: 3664d4ee087b416692a40457afedb6d7
|
||||
#: ba38afb338ce43c39b44dd7678121504
|
||||
#: 037e813626fc424fa2cc303b6de32626
|
||||
msgid "User invitation"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:104
|
||||
#: a1c0482d19ea428e9ace61f8a234f084
|
||||
#: 67a415dce2ce449ca0f56e5feb2361d0
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:106
|
||||
#: 7ed7614611b24977b4ae04a799244bf6
|
||||
#: d591d5398e774b3197cef2e740c83efd
|
||||
msgid "The link goes to a registration form, even if regular :ref:`user registration <feature_user_registration>` is disabled."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:108
|
||||
#: 976b62801cd549748f032bec04f9e261
|
||||
#: aefa9516cd6d42dd8a736bc06a34fa39
|
||||
msgid "It can be automatically sent by email to the new user."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:113
|
||||
#: f7ea42c01191494185d9f191469aeef9
|
||||
#: 7c82637f2cc94bbb9d331b0f22869ed0
|
||||
msgid "Account locking"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:115
|
||||
#: e2dcd91ac31548fc988012f47e58a595
|
||||
#: 358a5fa4e02744ed91fa6a8826130611
|
||||
msgid "If Canaille is plugged to a :ref:`backend <features:Backends>` 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 ""
|
||||
|
||||
#: ../features.rst:118
|
||||
#: cf42d819d5a547b88f371785e5165f90
|
||||
#: 712ea6e2257f4ba482b7e89f2ff5c19a
|
||||
msgid "At the moment a user account is locked:"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:120
|
||||
#: 9b640a69ba9a4c51b60e0f8c286697a4
|
||||
#: d681a46a4db2457cba4192322da21184
|
||||
msgid "their open sessions will be closed;"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:121
|
||||
#: 3189f0a7d03740a4b4f85cedd2347950
|
||||
#: fdc693b1bf024fb2a7bbf3097f24d022
|
||||
msgid "they won't be able to sign in again;"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:122
|
||||
#: 7da9546466a94f8a8978716a6d4d208f
|
||||
#: 23cd8877517d4f3c908e8ea1092dc9a6
|
||||
msgid "no new OIDC token will be issued;"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:124
|
||||
#: 024942a1dbc74ab89c267e6caa47ed77
|
||||
#: 9882d29f0007492aae9caf2506288533
|
||||
msgid "User accounts must be manually unlocked by an administrator for the users to regain access to those actions."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:129
|
||||
#: 4a9634c3b1f14180a3c3d7c9b40cb66d
|
||||
#: e712f4f9b0a2427b8dccd43a4b4544d8
|
||||
msgid "Account deletion"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:131
|
||||
#: 8a6acf700c194e67b754ac900d4426b0
|
||||
#: 81f0498b175a421da02ae969416b916f
|
||||
msgid "Users with the :attr:`account deletion permission <canaille.core.configuration.Permission.DELETE_ACCOUNT>` are allowed to delete their own account."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:133
|
||||
#: 8c30253b0d7d4fefa55c6f23ba5dd958
|
||||
#: 2d5535359306451d834db61758cbe926
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:138
|
||||
#: 2157cc891ec24dfab2496f60249f124c
|
||||
#: f6e498c86dbd4e17b624c321fecf54d1
|
||||
msgid "Password recovery"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:145
|
||||
#: 7b467943f0d74722bcf4dcfc1c2f2631
|
||||
#: 61f35c72876242e8bf43e9eb0d75995b
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:147
|
||||
#: 5c12793163f64d8fafc24e284e955865
|
||||
#: d4555d16bbe249b7979cbb34c57f7055
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:151
|
||||
#: 467318f9369c4ecabf00c16ee551a46f
|
||||
#: 297ffc93f03d4d43b6c47646eca19f13
|
||||
msgid "Check that password recovery is disabled on locked accounts."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:156
|
||||
#: 1880cb31e0894b5cb0ac81c5a8a60ffd
|
||||
#: 2ddc03cfab5c4c31881424d5944c493c
|
||||
msgid "Password reset"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:158
|
||||
#: 6f845e2ecc974c26b00126f015f86825
|
||||
#: 9049c1cbc2f84041b403c388f29ad854
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:164
|
||||
#: fb069d5c78f54166b31db5c9adb512dc
|
||||
#: 53795873eea346f2b2daab2be04d8fd3
|
||||
msgid "Password initialization"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:166
|
||||
#: ea105163dbbd485ea023aae10de2a712
|
||||
#: 22da6b0b0f9a477098237bf75b5ffc4b
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:173
|
||||
#: f257819892334c3f81eb1f6ae42f8e60
|
||||
#: 2426c9af237c4b3ea3edf39378ee2058
|
||||
msgid "Password compromission check"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:175
|
||||
#: 61d91ab9494a4c0d914e459319a0282c
|
||||
#: a154a903f2f0465da6ba9cb8444bbdac
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:180
|
||||
#: 29552f6a6ac647cda927893982632593
|
||||
#: 91a7eae46075432fab0f6529e0ead921
|
||||
msgid "Internationalization"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:182
|
||||
#: 87f1270c1d654364a64698e9ba85f9c8
|
||||
#: 3793ed670fe140729604efbd86ea8865
|
||||
msgid "Translation state"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:187
|
||||
#: db80a74dd2374b5ab82acd1395466acb
|
||||
#: a482d12153c5462eab6e6ef518bb541e
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:193
|
||||
#: 272a97d52dd94e849318a88f5d291bd3
|
||||
#: 64f68b0347c643d28ca265fa7577c95c
|
||||
msgid "Lightweight"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:195
|
||||
#: cb18163171c94d75a86e3aa050270386
|
||||
#: c3559f4e91a74373b92d046a875eac79
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:199
|
||||
#: 3e23d82d021240908b93d8411ed1ece3
|
||||
#: 21b1a787a1074ddc8ae6fe66545a181a
|
||||
msgid "Customizable"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:201
|
||||
#: fd82c1315d864619b45e2be1c39e4ce0
|
||||
#: d7748aa3f91b475ebed5edb2d35f759b
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:204
|
||||
#: 7e18858db0a1427985a8846bd9b6c692
|
||||
#: 5fe5c111cd0f4d3ca2a8e7ca01ef43c6
|
||||
msgid "If you need more you can also use a :attr:`custom theme <canaille.core.configuration.CoreSettings.THEME>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:209
|
||||
#: 50efea7d1e594de1bc1d59fadc67fc3a
|
||||
#: 6fb933f34307459880de26e3d0f76c6a
|
||||
msgid "OpenID Connect"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:211
|
||||
#: 34e2ceb8a70d42de83f1a3719ff10df5
|
||||
#: bd2005e331d64c979880b847a8fa5a6f
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:215
|
||||
#: 91e1188aadaf45159560f74f9da4654b
|
||||
#: 3235a6f44bd444d38fd7581ffdeadd6a
|
||||
msgid "Consent management"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:223
|
||||
#: ce4ab8d14f3d44328c3d6738ef4b72b4
|
||||
#: 168e125d08c041a79098cb1bfa3d13e9
|
||||
msgid "Users can give their consent to application requesting access to their personal information, and then revoke those consent at their will."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:227
|
||||
#: b743768476604fe29330ceedb3aa147a
|
||||
#: aa606f0a64b84ebdb4e29bee96f4b414
|
||||
msgid "Application management"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:229
|
||||
#: 3fcb303af84041ab9d762a6a14590fac
|
||||
#: eaa719c553584eb6954da4d45778454b
|
||||
msgid "Users with the right :attr:`permission <canaille.core.configuration.Permission.MANAGE_OIDC>` can manager OIDC clients through the web interface."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:231
|
||||
#: c5352dd05bb5432292db0ce2d16855dd
|
||||
#: 9256e6eaf7174fa8a4e7347cd03b6ac8
|
||||
msgid "In some cases, it might be useful to avoid the consent page for some trusted applications, so clients can be pre-consented."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:234
|
||||
#: 1fa4e2a5218a42cfbe8d497af109ddd3
|
||||
#: 3faf6b2661f3434bbca8b2aaa9b7d6d7
|
||||
msgid "Discovery"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:236
|
||||
#: 319e92a6c8854c8681f7a0e53828bff5
|
||||
#: e935be55bc964a48a582e36f9791c15a
|
||||
msgid "Canaille implements the :doc:`Discovery specifications <development/specifications>` so most of the applications plugged to Canaille can auto-configure themselves."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:239
|
||||
#: 4dac1f51d4404a0ebf8ad2d4dfd0f664
|
||||
#: 695ba3a2a77640908c9f4d2f02a4f8b2
|
||||
msgid "Dynamic Client Registration"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:241
|
||||
#: 2e3491e375a4467f871e0de3120711ce
|
||||
#: 43c52faa27c84af18f3ada9bffe6d19d
|
||||
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:246
|
||||
#: 588c18f0f44d4eb5a4c999c5a3db635e
|
||||
#: f8ce532f519349f48429c1b170cdb484
|
||||
msgid "Command Line Interface"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:248
|
||||
#: f0fd8f52fb4f477680527412562a2ba6
|
||||
#: 2f40208e5c1347a48420317d62aaa74d
|
||||
msgid "Canaille comes with a :abbr:`CLI (Command Line Interface)` to help administrators in hosting and management."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:250
|
||||
#: 73ac4592e1fe4a51803b75c969304bc9
|
||||
#: f29e92c5ddaf47ce9483715190c894bb
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:253
|
||||
#: 3091d85977eb49449c76e0ae370745e4
|
||||
#: 22885696b0da40219dbbabf940320082
|
||||
msgid "There are also tools to :ref:`fill your database <cli_populate>` with random objects, for tests purpose for instance."
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:258
|
||||
#: 926c15a2beb84a3b9e2030c4bc1a4908
|
||||
#: a094d21d84254528a930c248f4a593b4
|
||||
msgid "Backends"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:260
|
||||
#: 1d759a49a5644275acce4f8db74f9a5e
|
||||
#: 7fb43b7df88a4baea1dfda09d24dffcd
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:264
|
||||
#: 85b359d50f3b45159f1d7176d7014e51
|
||||
#: df7ac02ac2a945069ee389b77b9b5a6b
|
||||
msgid "Miscellaneous"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:269
|
||||
#: 0d0372c98187494ba9babc558530836c
|
||||
#: bf688d8476c643a68687292de9336a89
|
||||
msgid "Logging"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:271
|
||||
#: 775c89c8b1c548bdaec973472e999fa4
|
||||
#: 38d1832a542446019b042e1f939b488f
|
||||
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:273
|
||||
#: 450c5e7c7d7749e99d9fc3fe74e0ee6e
|
||||
#: 42a168890026463880fcc0464d7e681a
|
||||
msgid "The following security events are logged with the tag [SECURITY] for easy retrieval :"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:275
|
||||
#: 1408c454db794023be5e18cde821cde2
|
||||
#: 7876d69b9324404c8b5d6b8211f22a38
|
||||
msgid "Authentication attempt"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:276
|
||||
#: 2a1ab369f4a243e2b2e3463e3326c008
|
||||
#: 5fc6499706b74b38a3bcc4d328a4267f
|
||||
msgid "Password update"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:277
|
||||
#: b1875faad85842ac9fcc11d2c5c03f4a
|
||||
#: 59baea279a0444c7a03276f643a9a546
|
||||
msgid "Email update"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:278
|
||||
#: 0389b72f9c6a4854ab50ba113554be9b
|
||||
#: 316b8f1a64d0492a89a3a3165985ad5b
|
||||
msgid "Forgotten password mail sent to user"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:279
|
||||
#: 0c919d1f72b04296ac420b405b921b93
|
||||
#: d7b3795158de483783e4c7ee82348b46
|
||||
msgid "Token emission"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:280
|
||||
#: 164105d22820445186f8086c1e1ac7c1
|
||||
#: 5e4175d55093488c8125b636c395129c
|
||||
msgid "Token refresh"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:281
|
||||
#: fc590a8611554c04948cc44bbf5b05d4
|
||||
#: 6dbf275ffef842c1bc6f3bb0989af951
|
||||
msgid "Token revokation"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:282
|
||||
#: f7aa2b3de26a4f63a4c35495a6ee4e6e
|
||||
#: aefb033cc70946629968cda2c5659143
|
||||
msgid "New consent given for client application"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:283
|
||||
#: 63403d81399c469792d50f1c9790d44e
|
||||
#: bdd21f6ee436441db570665db0c47242
|
||||
msgid "Consent revokation"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:288
|
||||
#: 56e96a06cfbf456fb59d3556217b5e8e
|
||||
#: 1665d88722ec4f1bb7686957622bb5d1
|
||||
msgid "A tool for your development and tests"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:290
|
||||
#: 0c7e31abb1c14302a691f26ef8cab38c
|
||||
#: 1bdff890d0da4b7aa3b3df7a1270068e
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:292
|
||||
#: 963770fd6ca14be884153c0568d614d4
|
||||
#: 466b386bf92b499696f22cf6f9889b22
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:294
|
||||
#: 9d9dafd256e94acaad9ea1108cb891a0
|
||||
#: 02bd7bfe0c194ca2a4ed5b305d64174d
|
||||
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 ""
|
||||
|
||||
#: ../features.rst:297
|
||||
#: 067e9134dbcf4d698f5cc98da46f6b1c
|
||||
#: e0c00b45559342139b38b56d45c12df5
|
||||
msgid "Roadmap"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:300
|
||||
#: 765ec40933cd4b418974dd5660825afd
|
||||
#: 889eb75d6c2f4c2fb2491c38b16c2cd5
|
||||
msgid "Bêta version"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:302
|
||||
#: 44f40979b69f4a0591f095ea5e9ffc60
|
||||
#: e4634fcad59b43549f2ac5d023fe25da
|
||||
msgid "To go out of the current Alpha version we want to achieve the following tasks:"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:304
|
||||
#: 306d82fcd6e34e7e903a3c33b18fa496
|
||||
#: c24037d78a274d81a945064251654805
|
||||
msgid ":issue:`Configuration validation using pydantic <138>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:307
|
||||
#: 348486c826e54c7394312f9b65c91ca7
|
||||
#: 1a8941a892c041c98e2bdfe731944341
|
||||
msgid "Stable version"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:309
|
||||
#: dc50e5b244a54791b0ce5013500f2bdd
|
||||
#: 8bcca1796eb34ea39311fadde971e5df
|
||||
msgid "Before we push Canaille in stable version we want to achieve the following tasks:"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:312
|
||||
#: e88bf894b0e04926a03542e927a1b9ad
|
||||
#: 429e891c2c4a41d9882840e8901807c2
|
||||
msgid "Security"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:314
|
||||
#: e28ca32444eb44ae9b0a6e59b5d0ac31
|
||||
#: 99812b3d9e054b92829a1d06207fd56f
|
||||
msgid ":issue:`Password hashing configuration <175>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:315
|
||||
#: 37dc1f0a3869424ab0d6da0c039f123f
|
||||
#: 5fc38e63289c4376aafefbdae1d08ad1
|
||||
msgid ":issue:`Authentication logging policy <177>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:316
|
||||
#: 28792af06fb34fd5ab534d2d065c2883
|
||||
#: 172f15d0a07a475495af94228857aa19
|
||||
msgid ":issue:`Intruder lockout <173>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:317
|
||||
#: 2eb8507407104b29ae8bb00ca646b829
|
||||
#: 7413890a044d4860a69e304c463b2075
|
||||
msgid ":issue:`Password expiry policy <176>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:318
|
||||
#: 8999fd2b2d08417aa28414f115d5fda5
|
||||
#: 1af8ce062a2f49dea0719295031dac36
|
||||
msgid ":issue:`Multi-factor authentication: Email <47>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:319
|
||||
#: 76998f3ace9c4c588e795331365c99f2
|
||||
#: 559b8aac8ec1464e9de0fc12d7cef1e3
|
||||
msgid ":issue:`Multi-factor authentication: SMS <47>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:320
|
||||
#: 8a26920b728649d0a8b9ba9c8f98427f
|
||||
#: 0fa5c83275464d2daef9a61ff962068f
|
||||
msgid ":issue:`Multi-factor authentication: OTP <47>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:323
|
||||
#: 1f172cb3b12d4d9ebed5abf0099dcb34
|
||||
#: 80a148a15619443f96604259f8ce7936
|
||||
msgid "Packaging"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:325
|
||||
#: 532f4871f18f4189bc19d70d6729aceb
|
||||
#: 783c51aa863f4dc694f5e51d8a364d62
|
||||
msgid ":issue:`Nix package <190>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:326
|
||||
#: e8a280bfd47e47baace28606f80d51ba
|
||||
#: 22df588b38954d95ba47de753196bbbd
|
||||
msgid ":issue:`Docker / OCI package <59>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:329
|
||||
#: 16dd9a8f89b94812b315074f2122bd0d
|
||||
#: 4e6d78ec6bcf49e3aebeae146bd874b1
|
||||
msgid "And beyond"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:331
|
||||
#: a25457408aae440384cea5ac85dbf68f
|
||||
#: 851c474a5f55472bb69e0980e85d2c53
|
||||
msgid ":issue:`OpenID Connect certification <182>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../features.rst:332
|
||||
#: c251e6812fbe41daa724a3e41de2795f
|
||||
#: ea230b81c9854692a1fe56d26fe831ba
|
||||
msgid ":issue:`SCIM support <116>`"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,81 +17,81 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../index.rst:15
|
||||
#: 73ace75ab0614252bcdf4b38427a6bbe
|
||||
#: 0cf850c7764c4ea080c90ebee6f4533c
|
||||
msgid "Lightweight Identity and Authorization Management"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:19
|
||||
#: 51406a546f1944abb1f60d21591b8da6
|
||||
#: 1338b157cf784cd889fa4ace488ddb96
|
||||
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:27
|
||||
#: 8ce19e6702f74a9d846822da4e95cd05
|
||||
#: 16e9d4e4d06842c5b1a23c2b08331358
|
||||
msgid "Profile management"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:31
|
||||
#: 69855370f33846c6beb1d9f8141c9da5
|
||||
#: 4b479564eb7c4aabb771ee7b40f0e08e
|
||||
msgid "User profile and groups management, Basic permissions"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:34
|
||||
#: 76c5bf395a1c4e5d84450804af9408fc
|
||||
#: 5b1feeaf9e0f4710921b997bc1abd3d5
|
||||
msgid "User authentication"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:38
|
||||
#: 8482faeb12174d9186e34291c5d03ac9
|
||||
#: 1082fe3d9fff4d129db9a0980d26e226
|
||||
msgid "Authentication, registration, email confirmation, \"I forgot my password\" emails"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:40
|
||||
#: 0e50a42ab7744344a33d3dcfac6d8e09
|
||||
#: 995f722c196141daa60e0e933ed089bd
|
||||
msgid "SSO"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:44
|
||||
#: 8de8aed898404726ad012faf46986847
|
||||
#: 55d4a30004944c9cb61e5e5884f5969c
|
||||
msgid "OpenID Connect identity provider"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:46
|
||||
#: af19bc8e23374e43b47b764ead0e7718
|
||||
#: 9403ad26bf834e9db41bde03bf2d8702
|
||||
msgid "Multi-database support"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:50
|
||||
#: 71baa0d1d0fc4c9d9d748133495b0141
|
||||
#: ee69524e6e864eb1ae021d3e02542d16
|
||||
msgid "PostgreSQL, Mariadb and OpenLDAP first-class citizenship"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:52
|
||||
#: 8e0020b8e0324b6fa5728ceac3acad78
|
||||
#: c81e71449a65404babd46d6c4379f245
|
||||
msgid "Customization"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:56
|
||||
#: f324ccfc4a7e4e4dbe6cd7d2fa2dca24
|
||||
#: 7022a73e8835420f9cdd806cf126995b
|
||||
msgid "Put Canaille at yours colors by choosing a logo or use a custom theme!"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:58
|
||||
#: 9a6d1f33fa9641d7b71944454c84d819
|
||||
#: d30dd41a85c44eab8c406674cb8974f8
|
||||
msgid "Developers friendliness"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:62
|
||||
#: b474739321e84bc684d5fe1cd536d5b8
|
||||
#: ed2d7b64d2404396aaf1de85663efb21
|
||||
msgid "Canaille can easily fit in your unit tests suite or in your Continuous Integration."
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:66
|
||||
#: be4a6a405d2b40dc86b55103e99277ba
|
||||
#: d943209ad3bc4482a00c93b31a4217e6
|
||||
msgid ":doc:`Full feature list <features>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../index.rst:70
|
||||
#: 2f91d5ac3db248bd9905419c6ebfee68
|
||||
#: 1633f4ed1d4a4549be7889af72a41c8f
|
||||
msgid "Documentation"
|
||||
msgstr ""
|
||||
|
|
52
doc/gettext/locales.pot
Normal file
52
doc/gettext/locales.pot
Normal file
|
@ -0,0 +1,52 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) 2024, Yaal Coop
|
||||
# This file is distributed under the same license as the canaille package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 17:21+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../locales/readme.rst:1
|
||||
#: 02ccf5595dd84a2eae281bdeb632d803
|
||||
msgid "Documentation translation Translations are done with `Weblate <https://hosted.weblate.org/projects/canaille/canaille>`_."
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:4
|
||||
#: a797e59e891644e8b6bd76f7a07b6957
|
||||
msgid "The following commands are there as documentation, only the message extraction and the language addition is needed for contributors."
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:7
|
||||
#: 2923c202b26a4670a7dea6bfd9d415c4
|
||||
msgid "Message extraction"
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:9
|
||||
#: 2fcfe9cf337b488aafe381e9a157855f
|
||||
msgid "After you have edited translatable strings, you should extract the messages with:"
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:16
|
||||
#: 60e70e7f68a745caa90c25e0c6f24cef
|
||||
msgid "Language addition"
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:18
|
||||
#: ba639ac789b04cea9fdf415793aecd02
|
||||
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 ""
|
||||
|
||||
#: ../locales/readme.rst:25
|
||||
#: 2dcd8880d66e48ef84f6aa8ed559dcca
|
||||
msgid "Build the documentation in another language"
|
||||
msgstr ""
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,36 +17,36 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../locales/readme.rst:1
|
||||
#: 81c6815493714f6a873d6e86dc1a9c63
|
||||
#: 02ccf5595dd84a2eae281bdeb632d803
|
||||
msgid "Documentation translation Translations are done with `Weblate <https://hosted.weblate.org/projects/canaille/canaille>`_."
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:4
|
||||
#: 87be09ce203040c2ade86291e682ff90
|
||||
#: a797e59e891644e8b6bd76f7a07b6957
|
||||
msgid "The following commands are there as documentation, only the message extraction and the language addition is needed for contributors."
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:7
|
||||
#: 3bdfd8ba97e8414aa5c6cc81b43178a5
|
||||
#: 2923c202b26a4670a7dea6bfd9d415c4
|
||||
msgid "Message extraction"
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:9
|
||||
#: 3b8b9e1408da403e9cdd7a3fb0cf90d8
|
||||
#: 2fcfe9cf337b488aafe381e9a157855f
|
||||
msgid "After you have edited translatable strings, you should extract the messages with:"
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:16
|
||||
#: b581058879de400ca67dde307da1912a
|
||||
#: 60e70e7f68a745caa90c25e0c6f24cef
|
||||
msgid "Language addition"
|
||||
msgstr ""
|
||||
|
||||
#: ../locales/readme.rst:18
|
||||
#: dab59f2e8ae44091a03cd2c554501487
|
||||
#: ba639ac789b04cea9fdf415793aecd02
|
||||
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 ""
|
||||
|
||||
#: ../locales/readme.rst:25
|
||||
#: 348dad0adb834ca0a1cf2e7ffea89f8a
|
||||
#: 2dcd8880d66e48ef84f6aa8ed559dcca
|
||||
msgid "Build the documentation in another language"
|
||||
msgstr ""
|
||||
|
|
1712
doc/gettext/references.pot
Normal file
1712
doc/gettext/references.pot
Normal file
File diff suppressed because it is too large
Load diff
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,179 +17,179 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../references/commands.rst:2
|
||||
#: 578e5808cb99489e9808bf26f84831ea
|
||||
#: 952e9de33f1146bb9c629b25406d5980
|
||||
msgid "Command Line Interface"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/commands.rst:4
|
||||
#: 5a95d4c76b7b4692af568a958071ab9d
|
||||
#: 194fc88dbebc4a6083904a2cd0fdece1
|
||||
msgid "Canaille provide several commands to help administrator manage their data."
|
||||
msgstr ""
|
||||
|
||||
#: ../references/commands.rst:6
|
||||
#: 8f0f875b47a54e6e8911c751fb6872e8
|
||||
#: af944605783345eb930f7e39d8cb2206
|
||||
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
|
||||
#: dd0149729dc94239aed0af8d269dd418
|
||||
#: da3dade2207449f8ab1f5c8cd6df0b59
|
||||
msgid "Test the configuration file."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille check:1
|
||||
#: 64fdd2232e6d405c9adbe11ddda10166
|
||||
#: 107826c804894ffbaf6be5108735e8bd
|
||||
msgid "Attempt to reach the database and the SMTP server with the provided credentials."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille clean:1
|
||||
#: 403b7781c30c4da58642667b26f9da55
|
||||
#: a75c02957679475c88a5bf48c43b54df
|
||||
msgid "Remove expired tokens and authorization codes."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille install:1
|
||||
#: 9a6a207fe3ed4c7caffaaa4e5842fe02
|
||||
#: 226b4c7446b04bc4826250bfa6d83978
|
||||
msgid "Installs canaille elements from the configuration."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille install:1
|
||||
#: 28c0bafefd7a42b7b247fa53ac641d4a
|
||||
#: 87ed406dcb7b4335b8d4cd75a68b65dd
|
||||
msgid "For instance, depending on the configuration, this can generate OIDC keys or install LDAP schemas."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille populate:1
|
||||
#: 17d8b25dd51b42d5b32e343d1b4b44a9
|
||||
#: d3168620868447108806d14d13dd47c6
|
||||
msgid "Populate the database with generated random data."
|
||||
msgstr ""
|
||||
|
||||
#: ../references/commands.rst:0
|
||||
#: df7a3b4065244eb985f167583bf79d2c
|
||||
#: 10cb918ea05043929ba9cd9564ed5f3d
|
||||
#: aa7d87d3e6f647fa890560fd9096598b
|
||||
#: 9a2406777231461887cb7e76f3c0d470
|
||||
#: 84db04b30f9147e19f984bdaa49fe0fd
|
||||
#: f28f03fb7525446da298d805a01522d1
|
||||
#: 8506da751b21413fadc94d7bae19e387
|
||||
#: 1914dd13a47d4a778fb3f7c6d27e9aac
|
||||
#: d8c57a57c6c34d32a014fa466d8ee489
|
||||
#: 3059756528734dffb3d53c627edb9437
|
||||
#: cab60c25e07542a6908f059f31c77482
|
||||
#: ff6f04fe5ee944febc001fbffb1e5a30
|
||||
#: f8fe3d8b27884fe0a5b8c68cb3195b97
|
||||
#: 9b1086b74f9f4f15aae8f7174cc82fc4
|
||||
#: 00701bc7173f421aafe574606d46691e
|
||||
#: 5e7e4cdd8d664830a6d158e240b545c2
|
||||
#: 08bf63ad7771452cb070d2c2c7b8b568
|
||||
#: d71b61d168d443ac94f30e1aaf07e55f
|
||||
#: 93f79c7403074b0aac095f59df49b451
|
||||
#: bd21ceb952184931b1e198854fe9b031
|
||||
#: e7127155eec846ed9792494143cca743
|
||||
#: 53e6c68a54434bf587a1dca8b81d3b74
|
||||
#: a42086af15bf4297904cf39c2b4df7c7
|
||||
#: c043029fc2fb47fbb2bd318d1a4b08ca
|
||||
#: 8a09860a6b1c4ad8b08bb9fb44e6982b
|
||||
#: 396565c1408a45bf9880d2e4d306d416
|
||||
#: e657b473cd7743f9bfc6aeef3aac4935
|
||||
#: 082b69dc7add4bddb93489557fa9a6a2
|
||||
#: ba9576b3bf70496fb522695af86f0169
|
||||
#: 032f8d3e26dc4bbd9d4660836afb1f75
|
||||
#: fe2abe123e9e41bf996d8f88ce42df12
|
||||
#: 98063029b2d444d69399c4c4fb1266bb
|
||||
#: c67517b916f44f7689513efa4606b20d
|
||||
#: a3aaff84e9ca4ccba1f7f50ee8508b1c
|
||||
#: e69fc539c5df4426894fd9203c84f432
|
||||
#: f354375bb4e242d6818715ff5956b716
|
||||
#: 0e2c24d22a3a4ee288c1c3fc86808d61
|
||||
#: ca9251891c7e45109894c356eb0f4a00
|
||||
#: ea573076e79447deb9b69c44f0b08970
|
||||
#: cb20ee676a1748ddadbe90a97f25ceba
|
||||
msgid "Options"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille populate:1
|
||||
#: a5bbf04166c049b3b9c315b02e311d6c
|
||||
#: 3b6d5755e8de425b91874a9cf6018dca
|
||||
msgid "Number of items to create"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille populate groups:1
|
||||
#: fa0ab4817a63487b929828c2e97373c1
|
||||
#: 859c9d120bba4152b20f456cd307473d
|
||||
msgid "Populate the database with generated random groups."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille populate groups:1
|
||||
#: 5e6f489028a4446a8b507e422646fee8
|
||||
#: cd243a1399bb4a3f8ea0704869d34375
|
||||
msgid "The maximum number of users that will randomly be affected in the group"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille populate users:1
|
||||
#: b0ccb196ccc549c7a57e03466d184b1b
|
||||
#: 7670817be64a430aadf12b14d6ffc338
|
||||
msgid "Populate the database with generated random users."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get:1
|
||||
#: 37a97a0a6d98414e930446cfce3fefd0
|
||||
#: 459ab849c8d748c498f5a73cbcae971b
|
||||
msgid "Read information about models."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get:1
|
||||
#: 2fdd2c44ff8342c5b9dc3a122fc56d32
|
||||
#: 8805aa3801d74e04978bde21d18ab711
|
||||
msgid "Options can be used to filter models::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get:1
|
||||
#: 3466ddbfd1264c01a53a83d711a66146
|
||||
#: 8cd027c62978471494b3b89bfa9bdcd4
|
||||
msgid "Displays the matching models in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get authorizationcode:1
|
||||
#: 9475ba0522be4715ba147caf0e0debd8
|
||||
#: e4374f3cf425474197f3c4b15912e986
|
||||
msgid "Search for authorizationcodes and display the matching models as JSON."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get client:1
|
||||
#: 31b8bbe27ff64f0da9e1684d3f048472
|
||||
#: 1c20673de33e4126adcba9bccd53285b
|
||||
msgid "Search for clients and display the matching models as JSON."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get consent:1
|
||||
#: 0be75cef5f6448ee81cfa44b378517ce
|
||||
#: f66367e5fa9d42d9b3bdc8dcadb54f71
|
||||
msgid "Search for consents and display the matching models as JSON."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get group:1
|
||||
#: 9544c3af476441398e9a7dcbfd0d9c7a
|
||||
#: abf63bec613349b59c927bd749a6e121
|
||||
msgid "Search for groups and display the matching models as JSON."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get token:1
|
||||
#: 030ae9dcd3a143e9b1b19397c35d8b2f
|
||||
#: b974b4eb0d394694b5faae2a0c04f38a
|
||||
msgid "Search for tokens and display the matching models as JSON."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille get user:1
|
||||
#: 44dbe3502761468e8d2e29fa7f10f0d6
|
||||
#: bb9a27c5a07f42908658a281836ff323
|
||||
msgid "Search for users and display the matching models as JSON."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set:1
|
||||
#: 0af6277cc0874cefbd5fb0182d80d396
|
||||
#: fb364298ebb14aed9d991b46d2f69e26
|
||||
msgid "Update models."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set:1
|
||||
#: 72e13923d1454286b7367854fbec4e35
|
||||
#: 45f0840d682f42e0b83984f17e352b6e
|
||||
msgid "The command takes an model ID and edit one or several attributes::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set:1
|
||||
#: d4f17ca6c53b40afb034134ffc118361
|
||||
#: 1fbb909df2f44fb8b6a50695ce0e782e
|
||||
msgid "Displays the edited model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set authorizationcode:1
|
||||
#: 4a23a7b2d8be45658f2eed6017194fba
|
||||
#: 52fee42193e14ca0bd1803ad566d909b
|
||||
msgid "Update a authorizationcode and display the edited model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete authorizationcode:1
|
||||
#: ../../canaille set authorizationcode:1
|
||||
#: 1bbb5cada3624f8aa2922939002323ae
|
||||
#: 5609a4557fff4e54a9fccabfddf5826e
|
||||
#: be7a57837f08444da95b3fa3ad885966
|
||||
#: 5261952836ed436ab47a4342386bf1c2
|
||||
msgid "IDENTIFIER should be a authorizationcode id or authorization_code_id"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/commands.rst:0
|
||||
#: de8b06da947f4e23ba6727914cad6bb1
|
||||
#: fd47034cde92425f9f8bdb2393bf5460
|
||||
#: f8406bb87a054f629fd7cf5b07e9c3b6
|
||||
#: fdcf900e6c864eb4820f880f881a8b4f
|
||||
#: f524d61a7560403fa67d84b521b5420c
|
||||
#: 18b42ed5ae9b4a1b898866ba3cd7c098
|
||||
#: 7cbe82d6bd5b46919644b6d71984dc97
|
||||
#: 60e9504afe9e4c78b4181fd5481122c6
|
||||
#: 0dceb5df88e34fbc8332c8d8f641ab21
|
||||
#: d8105a54c6bf4353b614c9fd73859d45
|
||||
#: b6820eac28db47ab99be5b1ba431fa33
|
||||
#: d5fbab6b8b134648bcfa3ef1ac71ecc5
|
||||
#: d563c42b2df141478656723031367503
|
||||
#: 6c67221152cc4edf9830b2460f20959f
|
||||
#: bf627fa413024a309608bde86595a56a
|
||||
#: e18a29eaecc941aeacc574e5cf09d18a
|
||||
#: a673745e74254db99f2005aaf7f94071
|
||||
#: 4e28ecd386fd453ca21742afb29a2d7f
|
||||
#: 08bc45830f29458d80fcb6116855abdb
|
||||
#: 6e2726cc252a49d8bf7c0ac7dd9e5edc
|
||||
#: d2733aa168284d6d9af70ac1b1605e2d
|
||||
#: 5886f8e598e74ad5b102a9143d68218c
|
||||
#: 95c785769ca14c3b9317997071900fbc
|
||||
#: 70b189a9f8ab4a29801e20dcfdfea66f
|
||||
msgid "Arguments"
|
||||
msgstr ""
|
||||
|
||||
|
@ -205,162 +205,162 @@ msgstr ""
|
|||
#: ../../canaille set group:1
|
||||
#: ../../canaille set token:1
|
||||
#: ../../canaille set user:1
|
||||
#: 6fa9d671478f4b0cb6a4335319aff6bc
|
||||
#: a4d8ffc45b5d455baa74d311e77cb0cc
|
||||
#: 06fdebc0ceaf42158ac034ba2f1fd5d5
|
||||
#: 821e6c57ca8a4c4b9543e569188ea90b
|
||||
#: ab251b3b601749e5ba8b449fa1f14e63
|
||||
#: e55c02eadb204bb9a9c03a8a1e37c0e0
|
||||
#: f3944ed8e87b432ca151e011c9eb2220
|
||||
#: 8aa832eba5aa4098ade467d1ffd2ea6d
|
||||
#: 91880f396bf64569ac8c1f4f3f2aca0f
|
||||
#: a2797259ebe548ee9f8d4528edfcef44
|
||||
#: 9cdac19055ca44318c473fa3bc620a43
|
||||
#: 217ddbe62c8c48a49ec792c9581b548d
|
||||
#: 1f9548e4636448588b046b89b13f06fa
|
||||
#: 7498b2d09e9e4a60be65295d16a2a1b2
|
||||
#: 885dbff91b984704aaea33821b4886e0
|
||||
#: 56949230a767406baa8c3012598ad874
|
||||
#: dff59d31ec68436c8ea934fb4552d92e
|
||||
#: 8a56d543cfad4505b73ceea0a3653206
|
||||
#: fe4ce93cffc4483688d43a05aeab42c8
|
||||
#: a44fcccdfd8b4aaf8d246598391965ca
|
||||
#: 82b9d081f97b4256bb060e62306dfce3
|
||||
#: fd1b9c6fb27343c7bf2ea1f2be5b193a
|
||||
#: 14277de1064f428e87212628d366a212
|
||||
#: ad6cdeab44c64cf4bc87bbbe0c5e3a83
|
||||
msgid "Required argument"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set client:1
|
||||
#: c6fb20a6a9b04bb9ae7fa6930bd0e428
|
||||
#: a109d961bdbe41b481db9ee1add815df
|
||||
msgid "Update a client and display the edited model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete client:1
|
||||
#: ../../canaille set client:1
|
||||
#: a80bc63347194218987d36e8f7d79e40
|
||||
#: d219305e46a444f0b731ad5b73e79f2d
|
||||
#: f3f79ebe2f674e4bb49f075096b5912f
|
||||
#: 24749d9fb8e34ed793cdd18066897e64
|
||||
msgid "IDENTIFIER should be a client id or client_id"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set consent:1
|
||||
#: a651d44dec284d32b9e11bca8c0082be
|
||||
#: f3e30b461fef4b0d90cd10eedc0fa6c1
|
||||
msgid "Update a consent and display the edited model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete consent:1
|
||||
#: ../../canaille set consent:1
|
||||
#: 69e2a6ee623f45c1a39b0fbdf948e15f
|
||||
#: 6ba4152a82744f9b808e9947a943103f
|
||||
#: aac283fa3c174e55977327d4bc1dda14
|
||||
#: f5c31a271cf147fdb38b9c051d7c1c58
|
||||
msgid "IDENTIFIER should be a consent id or consent_id"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set group:1
|
||||
#: 7c9d22883354416a85d50f7410327d4f
|
||||
#: 406840fc8dd84d029b49ecf2b9b3700e
|
||||
msgid "Update a group and display the edited model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete group:1
|
||||
#: ../../canaille set group:1
|
||||
#: 9003e3f7ae3249ecb5084845becb33f2
|
||||
#: 31af71d5aaf74cb7b660614b3e1682ef
|
||||
#: 05ab1dbdf30947ef983a983cce57e09b
|
||||
#: 989cc201be1c47aaaee1b0207becb31f
|
||||
msgid "IDENTIFIER should be a group id or display_name"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set token:1
|
||||
#: deae6ee4325d4a99809f77fc2436562a
|
||||
#: 623a2682695c4ed3840eda6790dd89b8
|
||||
msgid "Update a token and display the edited model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete token:1
|
||||
#: ../../canaille set token:1
|
||||
#: 990488adf77741cbadcbea5c85e6741c
|
||||
#: 42483c1821a14a178b105f181946e188
|
||||
#: 968c3abd396a4b32ab3d264406a29ab0
|
||||
#: 617d8bdf4b934db0b05284196d21fc1b
|
||||
msgid "IDENTIFIER should be a token id or token_id"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille set user:1
|
||||
#: 5a2cf62efa9747429cfa9bf1cdf25b58
|
||||
#: c461b718f10d4f74af31074086fe33d4
|
||||
msgid "Update a user and display the edited model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete user:1
|
||||
#: ../../canaille set user:1
|
||||
#: c8550e9dc18646d294c8d797cb5d166d
|
||||
#: 9d649644572049378cd901b26b4b42f3
|
||||
#: 6a3dcdb5ec744db69979ea803522f613
|
||||
#: f1f1d1b029644f529c7691615b5316c3
|
||||
msgid "IDENTIFIER should be a user id or user_name"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create:1
|
||||
#: 876b9c46071040a083e7720fd1030ab9
|
||||
#: dea54ad432f64871887f81e03116d3be
|
||||
msgid "Create models."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create:1
|
||||
#: 3b4c98b2ff45430f916dcaf1bd54da4c
|
||||
#: 3a821969460649af99c84c9963924e3c
|
||||
msgid "The model attributes can be passed as command options::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create:1
|
||||
#: 2ff64e0da89645b1820fba732d6098c9
|
||||
#: f437609088d74a1db4e7f895990fe794
|
||||
msgid "Displays the created model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create authorizationcode:1
|
||||
#: a4a59533bbb141cb9c8cebd78f71ab9d
|
||||
#: e8b4745d5c7d4ef895ba1686b9612132
|
||||
msgid "Create a new authorizationcode and display the created model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create client:1
|
||||
#: c2df315512ed4bc994164ce5283e17a0
|
||||
#: f65cec57e4e3459f809a8b5b2d1671c0
|
||||
msgid "Create a new client and display the created model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create consent:1
|
||||
#: 4d1193abf1814ba48fdb0c6ab1a7ed32
|
||||
#: 9e42b40acaa14367af9e2f63eff68adc
|
||||
msgid "Create a new consent and display the created model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create group:1
|
||||
#: 2e32891340704090850f8f169b142aae
|
||||
#: af50ef69d61c4733a9f4c544b1501349
|
||||
msgid "Create a new group and display the created model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create token:1
|
||||
#: 3a965857a34e4c89b46f554d42e0ce5b
|
||||
#: 818461fc081a4f158dbca7303aa71193
|
||||
msgid "Create a new token and display the created model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille create user:1
|
||||
#: 9e30ed9353764ad986f7009e352a4e23
|
||||
#: 418c85b7a33a40da88d914c0801d419d
|
||||
msgid "Create a new user and display the created model in JSON format in the standard output."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete:1
|
||||
#: 73aa4dc76f2d4b558bef94fb74c89926
|
||||
#: 917309f374fe4e6b9ad7960e932116d5
|
||||
msgid "Delete models."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete:1
|
||||
#: 4e8dfe57593e4037a3af361c27a3fe2c
|
||||
#: 57d37b3ed7de43a28e08cde8eb20fde9
|
||||
msgid "The command takes a model ID and deletes it::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete authorizationcode:1
|
||||
#: e252f5665c1d4beeadbc8e02a5616c52
|
||||
#: 1a572edd3e66418ebad7a8d9f9e3eef9
|
||||
msgid "Delete a authorizationcode."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete client:1
|
||||
#: 9289cd0e6ea7448ea6d79efd656f4c93
|
||||
#: 9815eae4699d46fea1d4445e29e46e25
|
||||
msgid "Delete a client."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete consent:1
|
||||
#: d2daf152e4a24521bbbd75a6cc2377ca
|
||||
#: 7df50d8fbec94e33874223bcae810618
|
||||
msgid "Delete a consent."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete group:1
|
||||
#: 2e8bfb99cf0c48beb2da339112cef4c4
|
||||
#: 58b8c923bf784729b69540c863d69ee5
|
||||
msgid "Delete a group."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete token:1
|
||||
#: 0752e5025f47410bbd89191f2acb59c8
|
||||
#: 53e0d81e98484c4ab1f10c3e2b36763b
|
||||
msgid "Delete a token."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille delete user:1
|
||||
#: 7f1e103d1a9947949c4e310bbec9d067
|
||||
#: f854b40ae54045bd89e19a03173a8a57
|
||||
msgid "Delete a user."
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,727 +17,727 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../references/configuration.rst:2
|
||||
#: 07e02385c0d6432ab9c14b6e4f337af8
|
||||
#: f352927b3e674164b4ee528d290e1ba3
|
||||
msgid "Configuration"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:5
|
||||
#: a1053f4eb992434b84a915715996fa05
|
||||
#: 449fdd3866354144a1df0b0541208b76
|
||||
msgid "Load the configuration"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:7
|
||||
#: afb6641a9aa244af864832fe5e28377a
|
||||
#: 1e797371bae94f50b7037acaf549b6fa
|
||||
msgid "Canaille can be configured either by a environment variables, environment file, or by a configuration file."
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:10
|
||||
#: 64f630215963443eb439fc9555170837
|
||||
#: 0377b9dd81fd41c79cdf3f8a8245de59
|
||||
msgid "Configuration file"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:12
|
||||
#: 4dec0a2c267d431d983bff67a10565eb
|
||||
#: 9023a7e764a54abda473435fb2c67556
|
||||
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:85
|
||||
#: a2f425a7d72f45cfbd6a46b4dd8a9f9f
|
||||
#: 1af4b0570ada4659b6cef8e0fde5913b
|
||||
#: 262461d38ee1406cabdcb7c057b886ab
|
||||
#: 275d6238f6de4292bc8fa82eace110b7
|
||||
#: 954a70d4151143f4af9f3e509533dd69
|
||||
#: ff44591b60384f37b0094fbe5883142d
|
||||
msgid "config.toml"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:26
|
||||
#: d3f0be05e30a46249a2a9b6e35010ab7
|
||||
#: 7ffbc024b9f44c4092065cff332026b3
|
||||
msgid "You can have a look at the :ref:`example file <references/configuration:Example file>` for inspiration."
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:29
|
||||
#: 167c6ee110d3498dbcff07e2fb461fa1
|
||||
#: be2150038b8a47e0971dd82518455d15
|
||||
msgid "Environment variables"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:31
|
||||
#: 96c443e1ad6d4387afb03fbc61cd40cf
|
||||
#: 7b656666c8b64597b79511e46faa57a1
|
||||
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
|
||||
#: 22ef6ff87d78491e815bb3549e2cac1b
|
||||
#: 0379beff48534aa59770a545033aedf7
|
||||
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
|
||||
#: 01f42d420c644add8307d0eef66d0930
|
||||
#: 2505d4af33c547ef93f09be4282e8aec
|
||||
msgid "Environment file"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:42
|
||||
#: 3b0b1ca1d349437c8652af2378bf18d4
|
||||
#: a8a58f82f61b4fc0b28434e743ed6de6
|
||||
msgid "Any environment variable can also be written in a ``.env``, and will be read if present."
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:44
|
||||
#: 8e6ba368bac9448a9a26b32cbc2b98d3
|
||||
#: de874bfbe8b74294a9418700556580ec
|
||||
msgid ".env"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:62
|
||||
#: e8919384d11b4689b474121852d7691f
|
||||
#: 66e3119e3a3649b6829112cc1d41e11b
|
||||
msgid "Parameters"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/app/configuration.py:docstring of canaille.app.configuration.RootSettings:1
|
||||
#: 486ab8655b5948d38adcda288a2ccc35
|
||||
#: 5b109da5244d4dfbabb218e4c6bc5d47
|
||||
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
|
||||
#: c2e98629ddfc4697971e8726fced5051
|
||||
#: 0cf177f44bba4097827a16b1a2f1d6c0
|
||||
msgid "The configuration paramateres from the following libraries can be used:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/app/configuration.py:docstring of canaille.app.configuration.RootSettings:6
|
||||
#: 926489c26ef44fc1a362cf34b981ff23
|
||||
#: d6bc590bfed047e8b86af354be80fe03
|
||||
msgid ":doc:`Flask <flask:config>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/app/configuration.py:docstring of canaille.app.configuration.RootSettings:7
|
||||
#: 3d608d07342849cd91a9314c0e91ee06
|
||||
#: 855b6f96105a43b094b402a616bbae30
|
||||
msgid ":doc:`Flask-WTF <flask-wtf:config>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/app/configuration.py:docstring of canaille.app.configuration.RootSettings:8
|
||||
#: e3a176d61a77455898beeb2176f6e4bf
|
||||
#: 3c35731764054bff9285d6bfb79a7785
|
||||
msgid ":doc:`Flask-Babel <flask-babel:index>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/app/configuration.py:docstring of canaille.app.configuration.RootSettings:9
|
||||
#: 2722a53bf45f40e68c55ce195bd2a92c
|
||||
#: ac4465974e9f44c7b879303fdb40fc4f
|
||||
msgid ":doc:`Authlib <authlib:flask/2/authorization-server>`"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.app.configuration.RootSettings.DEBUG:1
|
||||
#: 71da9dadc99c484ca0930e47d422852f
|
||||
#: a2761715a159492ca4c5180c65189c58
|
||||
msgid "The Flask :external:py:data:`DEBUG` configuration setting."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.app.configuration.RootSettings.DEBUG:3
|
||||
#: 8e020bed08534b899eeb1976a43677d8
|
||||
#: 5b40ae56684347e0a6f369b4f2896691
|
||||
msgid "This enables debug options."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.app.configuration.RootSettings.DEBUG:7
|
||||
#: b1e842b72e524591b8d841a758be14a3
|
||||
#: ab54e5fb83cc40c6a1867ec701bb051b
|
||||
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
|
||||
#: a7a884840e804de2934fc1794b5f9916
|
||||
#: c66f04b99f7649b49ad45b30d2e25aa9
|
||||
msgid "The Flask :external:py:data:`PREFERRED_URL_SCHEME` configuration setting."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.app.configuration.RootSettings.PREFERRED_URL_SCHEME:4
|
||||
#: a75e96a48e0e41fb975f903ea3dbaf93
|
||||
#: d13d3b6ef4c0498bbfbe74ede138249f
|
||||
msgid "This sets the url scheme by which canaille will be served."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.app.configuration.RootSettings.SECRET_KEY:1
|
||||
#: a51da4634d924fcc8edb45332152d161
|
||||
#: d5dcfdec96404860acab981f826562ba
|
||||
msgid "The Flask :external:py:data:`SECRET_KEY` configuration setting."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.app.configuration.RootSettings.SECRET_KEY:3
|
||||
#: c3b465a2b6d440298f71736437ad5ef5
|
||||
#: 7e8c4487ab1446039177843b912da108
|
||||
msgid "You MUST change this."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.app.configuration.RootSettings.SERVER_NAME:1
|
||||
#: d5faf5b872ed40a794d5046c51fcfbd0
|
||||
#: 7d62d0ae8c664a048ef164ff8efef75e
|
||||
msgid "The Flask :external:py:data:`SERVER_NAME` configuration setting."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.app.configuration.RootSettings.SERVER_NAME:3
|
||||
#: ebffd9c94a524950abb6b711884ed64d
|
||||
#: 965334877d854795a264b6ceedcac212
|
||||
msgid "This sets domain name on which canaille will be served."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/configuration.py:docstring of canaille.core.configuration.CoreSettings:1
|
||||
#: cb519bb5488c429888c104503c3ad3e4
|
||||
#: 0a4a605e6a1940fab498c34200639e5c
|
||||
msgid "The settings from the ``CANAILLE`` namespace."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/configuration.py:docstring of canaille.core.configuration.CoreSettings:3
|
||||
#: 2739711892104e328cad1e98ae48d4b8
|
||||
#: 5a95511f181a4890bb8b9083a862ccd3
|
||||
msgid "Those are all the configuration parameters that controls the behavior of Canaille."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.ACL:1
|
||||
#: 29bfd1d0d0284b4287b9e7b5f9c36b74
|
||||
#: 5d0ddaed2d734874b3e0a61dfda14559
|
||||
msgid "Mapping of permission groups. See :class:`ACLSettings` for more details."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.ACL:3
|
||||
#: 578bb4e7e6674f7e88646e839112a01e
|
||||
#: 539d67c478024eda83b002c329156ba3
|
||||
msgid "The ACL name can be freely chosen. For example::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.ADMIN_EMAIL:1
|
||||
#: 8ee064e1a1194fa8982d08ef227da8dc
|
||||
#: 8703a060664b4b93b202ae8a55c9ab90
|
||||
msgid "Administration email contact."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.ADMIN_EMAIL:3
|
||||
#: 9820352fe91c4aae840232df61d25857
|
||||
#: 8956b1369e7546a39b76b74940e3fcce
|
||||
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
|
||||
#: 2fceb1c9ec9842158c9b9b7f1fa09168
|
||||
#: 8670b9d62d284afd847234da2ee795ae
|
||||
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
|
||||
#: 4b471ce1ba674ea8b77f29cdf45f4b2c
|
||||
#: 0eda2a2a767649dc980c8e065d9169a6
|
||||
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
|
||||
#: bc1661ce2f9e4fe2b493c625841fece8
|
||||
#: f4b1659c97c9420c9e67025ec44f290d
|
||||
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
|
||||
#: e5b04d013a764712abc3a03e249e70ad
|
||||
#: b2576eba8d9d41bfadecc6d10f66cb83
|
||||
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
|
||||
#: 1a86268c22bd4e6fa5d5d01d9333c389
|
||||
#: 57f195e48f3d4105b171b26b22801fe0
|
||||
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
|
||||
#: 9ec23021f8bb46b1a76163da8353864a
|
||||
#: 1fe396b30d184f76ab35cf310d689ba8
|
||||
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
|
||||
#: 050e680da1dd409ba5611b49d388c236
|
||||
#: 8c747e3998e148b397f3b3afaedfc251
|
||||
msgid "You favicon."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.FAVICON:3
|
||||
#: 44351f8a0aad4103877a89b3d773da1e
|
||||
#: c71c1dc15e314542924691141e9ceba0
|
||||
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
|
||||
#: e5d3da93787741b498df2c84a4708195
|
||||
#: 91fdf12a588442899a9e93f1a13edbb2
|
||||
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
|
||||
#: f1c78673ee1745279f8ec42cdff93cac
|
||||
#: 7f6526364ecf44d0a6ea4f83b986cd99
|
||||
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
|
||||
#: 404e51ae5209412c97dc6fa6dea57e3c
|
||||
#: 64629144df814d019eed25c5b1130301
|
||||
msgid "Accelerates webpages loading with asynchronous requests."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.INVITATION_EXPIRATION:1
|
||||
#: 6dba3015fe70429d9ba1bbda15533973
|
||||
#: 239e3d72e0aa42c996215debaa36a92f
|
||||
msgid "The validity duration of registration invitations, in seconds."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.INVITATION_EXPIRATION:3
|
||||
#: b0c02fcd815f422f9c9acd2612c97346
|
||||
#: 41669e4af29b45ed9dab09dabe5858aa
|
||||
msgid "Defaults to 2 days."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.JAVASCRIPT:1
|
||||
#: 5802b46432cd48f6a66f5b1512d7b6e8
|
||||
#: 4c4ae3815e5542dc995f90e1f33a79f3
|
||||
msgid "Enables Javascript to smooth the user experience."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.LANGUAGE:1
|
||||
#: 142e35437b3748f8b3ac8f6b8e7240a6
|
||||
#: 176ff367a4bc455c89f33b252c723ac9
|
||||
msgid "If a language code is set, it will be used for every user."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.LANGUAGE:3
|
||||
#: e338715fd61143e2a1b537adf9947e7f
|
||||
#: 63976f2340fd417f94c5efc2f31768db
|
||||
msgid "If unset, the language is guessed according to the users browser."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGGING:1
|
||||
#: f1b6ffe918904a7e8f12478e9777189e
|
||||
#: cbef5d40655e4b309a1dbce7f4b59cc6
|
||||
msgid "Configures the logging output using the python logging configuration format:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGGING:3
|
||||
#: adf30d64e31649c993f97ee0f0526e50
|
||||
#: e7b83b790b52476891f49f70cc2c3d03
|
||||
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
|
||||
#: 947c4f81681a421ab19405abe2bcd041
|
||||
#: 52803036df304a2d91104ff033694988
|
||||
msgid "if this is a :class:`dict`, it is passed to :func:`logging.config.dictConfig`:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGGING:7
|
||||
#: 6cd1d5c423754618965278773dea5dff
|
||||
#: 3ba83792d3ec409694c435cbe06ddab2
|
||||
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
|
||||
#: 6bf518e7d17d40c885ae66018ba85818
|
||||
#: 289ee5ab24bd4ef68b17b81cbaa7c233
|
||||
msgid "For example::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.LOGO:1
|
||||
#: 1ad6c44c92f6404fa900222ae71404fd
|
||||
#: c7e469fe99bb4b71b0328349e72f0a61
|
||||
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
|
||||
#: 3915ce88d08d469a8797d9ac7b9e76bb
|
||||
#: 91a871ab33f4451a9caf95ed0da63833
|
||||
msgid "Maximum length for user password."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.MAX_PASSWORD_LENGTH:3
|
||||
#: e56397580fdc4ef9856be66e9afcd944
|
||||
#: 1c25d71de99d4d46aa496c9df6a08c33
|
||||
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
|
||||
#: 382c57f189834a5dafe4e6a7dafac059
|
||||
#: c8c3307fa58e4c45afb5ac1e24626972
|
||||
msgid "Minimum length for user password."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.MIN_PASSWORD_LENGTH:3
|
||||
#: 242b94d8ebc74169838056a41b468bb0
|
||||
#: 4d73f4bca2984046b3efb3ba322cdf34
|
||||
msgid "It is possible not to set a minimum, by entering None or 0."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.NAME:1
|
||||
#: d685099921b749dabfa7766ab83cd899
|
||||
#: 8452d4d220b24f408a3418bbf451c672
|
||||
msgid "Your organization name."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.NAME:3
|
||||
#: c0b11619f38147c38e45c33bb95130cd
|
||||
#: 458bb630ef124d75ba2bbce3b58c4782
|
||||
msgid "Used for display purpose."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.PASSWORD_COMPROMISSION_CHECK_API_URL:1
|
||||
#: 13d7b717443d4d7f8072c052e77fb9a1
|
||||
#: 7e49f44fa7ad43f6924d762afcb43cf6
|
||||
msgid "Have i been pwned api url for compromission checks."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.SENTRY_DSN:1
|
||||
#: 5ace1a77e6844217a9a525ba89fca4ac
|
||||
#: 6daac624f580441ea0f641df0e7d18ad
|
||||
msgid "A `Sentry <https://sentry.io>`_ DSN to collect the exceptions."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.SENTRY_DSN:3
|
||||
#: eb2487e49bcb4c06b4b072c1bffd1b35
|
||||
#: f7d352de8d494044a75175ce2c34be3e
|
||||
msgid "This is useful for tracking errors in test and production environments."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.SMTP:1
|
||||
#: a380618f79db467497998c14d0479bb5
|
||||
#: 4918c3baa9ff4a7ea370ae99df22f450
|
||||
msgid "The settings related to SMTP and mail configuration."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.SMTP:3
|
||||
#: 4e7cc4129a664eab896700ae2a531a85
|
||||
#: 35153331cf064d90b4d8051c4363a935
|
||||
msgid "If unset, mail-related features like password recovery won't be enabled."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.THEME:1
|
||||
#: 8e154507bca34a2da6fd956bb5a4be7a
|
||||
#: 5df367ed5d3f4a53b537e6c50b677c3b
|
||||
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
|
||||
#: 1c6f63e8169d4d39b90cd03d21240d57
|
||||
#: 34d6f2a3091c4a7cb5099e15bb92ca5f
|
||||
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
|
||||
#: 64d6f680335c4994a06052b1e8926707
|
||||
#: 7be8c0ebcee24c42bad6e4a1abecbaad
|
||||
msgid "The timezone in which datetimes will be displayed to the users (e.g. ``CEST``)."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.CoreSettings.TIMEZONE:4
|
||||
#: 7fb3171a6fbd4688b6a1d5fec23ecdd6
|
||||
#: 9f062ba2827b4837971d4c34ff74a252
|
||||
msgid "If unset, the server timezone will be used."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/configuration.py:docstring of canaille.core.configuration.SMTPSettings:1
|
||||
#: b4724fa923b043ad93559be1154655e7
|
||||
#: da9f430a60ed4b5e871bae9218bc2b1b
|
||||
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
|
||||
#: 347fd2955c774b188997a442e55f5c7c
|
||||
#: e0bad81478534132be5d8de19ba8c05e
|
||||
msgid "By default, Canaille will try to send mails from localhost without authentication."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.SMTPSettings.FROM_ADDR:1
|
||||
#: 9423c5190b184836a8e0562f59e17cb0
|
||||
#: 6d0e7e6a931c4f568695d714da824c78
|
||||
msgid "The sender for Canaille mails."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.SMTPSettings.FROM_ADDR:3
|
||||
#: 5f9fe89512184352bf83dd9dc13cb400
|
||||
#: 083e072e2ef24f02955bf40dca897f7d
|
||||
msgid "Some mail provider might require a valid sender address."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.SMTPSettings.HOST:1
|
||||
#: a71c5983a93846dea4f2af605ceb2964
|
||||
#: bf8d6260946747cd8d9db422a2977980
|
||||
msgid "The SMTP host."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.SMTPSettings.LOGIN:1
|
||||
#: 09dcbcac25bd4ae4903e446424664181
|
||||
#: 432b9e9f148c4b79a07af984139b8b90
|
||||
msgid "The SMTP login."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.SMTPSettings.PASSWORD:1
|
||||
#: 8ca2a76f50d94448abf6fd29360b224b
|
||||
#: 42fab7de34b9418bb1422c74e5f9af1f
|
||||
msgid "The SMTP password."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.SMTPSettings.PORT:1
|
||||
#: bb71e9c748e54024891e1120144ecd60
|
||||
#: 42d65ebe36c2450f9532a587ea0a8de2
|
||||
msgid "The SMTP port."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.SMTPSettings.SSL:1
|
||||
#: a1979063c4674a2d8a2c8d552096949f
|
||||
#: 208db0a1482b42b29a2f582ff3c308d4
|
||||
msgid "Whether to use SSL to connect to the SMTP server."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.SMTPSettings.TLS:1
|
||||
#: 1c5218d536e04654a21231a7f66ca17f
|
||||
#: aebe44192def402f9c370ac7dd2386f1
|
||||
msgid "Whether to use TLS to connect to the SMTP server."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/configuration.py:docstring of canaille.core.configuration.ACLSettings:1
|
||||
#: 71a851e0084748b7866328b368c1e71a
|
||||
#: 04870aa4e9c046219085be74456ef180
|
||||
msgid "Access Control List settings. Belong in the ``CANAILLE.ACL`` namespace."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/configuration.py:docstring of canaille.core.configuration.ACLSettings:3
|
||||
#: 02255fc1a04d4b8192d5a3b1b43d1908
|
||||
#: beaf3f3f98b14cf9862ee2505dfa97db
|
||||
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
|
||||
#: 8da16abfa50940b999a4d5f409e58d74
|
||||
#: ebf8c5195c7d413aa4328754379e55df
|
||||
msgid ":attr:`FILTER` can be:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.ACLSettings.FILTER:3
|
||||
#: d4138506b0e4483abd40a4e95406094c
|
||||
#: d566cef633ee456c9fad89396dea8224
|
||||
msgid ":py:data:`None`, in which case all the users will match this access control"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.ACLSettings.FILTER:4
|
||||
#: 1abd6284f39f45a492767464191f5187
|
||||
#: a9b6fbe00f7a45b6af6430d5277888a1
|
||||
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
|
||||
#: 6ba9c1bc84f04f8882ed58940ad15b0e
|
||||
#: eb050efec86e47a7b93376503248375a
|
||||
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
|
||||
#: 23744c24632a4d168f8ec678e1a3bf5d
|
||||
#: 5c41147889134281bfd429b0c09aaa92
|
||||
msgid "Here are some examples::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.ACLSettings.PERMISSIONS:1
|
||||
#: 4078af0ed93b47c49ca31792ac5b97c5
|
||||
#: e847d17ac0da4f4bb5752a6edf12611d
|
||||
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
|
||||
#: 73365747e42042caa220e123de8845d4
|
||||
#: 1f9de4fcf01040369e7a21aadfa1118e
|
||||
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
|
||||
#: bd69e48c329248e69a6852bbd6a73d08
|
||||
#: ab6304cad7d147b0b839335c84652984
|
||||
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
|
||||
#: 66b3d6aa06174799a1e83949b252b22b
|
||||
#: fcf4d41879b3400ba4c61ca8eeaec499
|
||||
msgid "The permissions that can be assigned to users."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/configuration.py:docstring of canaille.core.configuration.Permission:3
|
||||
#: d2e7535abbbc43d2ad09d62291a30297
|
||||
#: 3a9f55ac1eca45e5bbb75a3c3bd3e84c
|
||||
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
|
||||
#: bf8bae1371be4200b76be25da42673fa
|
||||
#: d5ef98541f8b4e1588bda2eeeaacbc5d
|
||||
msgid "Allows users to delete their account."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.Permission.DELETE_ACCOUNT:3
|
||||
#: 8da238231ec845cc82ed303bc585edc0
|
||||
#: de8f02efc06246d1bc91e9d34c78e259
|
||||
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
|
||||
#: 39bc9c236e2d43568deca0a4d8863c0e
|
||||
#: a2816996936a4eb292c7d9a510f41355
|
||||
msgid "Allows users to edit their own profile."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.Permission.IMPERSONATE_USERS:1
|
||||
#: eb90e06ddce8426a87f4a877427b7411
|
||||
#: de9bf735cb24406fba3aad34f3f87c7b
|
||||
msgid "Allows users to take the identity of another user."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.Permission.MANAGE_GROUPS:1
|
||||
#: 4ce3c4ee68704259b6bfc08335c381a6
|
||||
#: ee8abccc752e4019a4bf8be9c1da1198
|
||||
msgid "Allows group edition and creation."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.Permission.MANAGE_OIDC:1
|
||||
#: ec06504cced4488d8ffd138e5119a370
|
||||
#: 5e3b60a516ab41278a1a3818393050ee
|
||||
msgid "Allows OpenID Connect client managements."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.Permission.MANAGE_USERS:1
|
||||
#: a15d00d9eb474b1491db47819306715c
|
||||
#: b71ed1ac778a4c0eb6a0e92043fac7d4
|
||||
msgid "Allows other users management."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.configuration.Permission.USE_OIDC:1
|
||||
#: f48a8f942231472ea57ad0634ef23ab4
|
||||
#: 2b580919de714c50beeea005d433c658
|
||||
msgid "Allows OpenID Connect authentication."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/oidc/configuration.py:docstring of canaille.oidc.configuration.OIDCSettings:1
|
||||
#: 1cf02f0bdf124960b8cb0d8741b19077
|
||||
#: 211693e2da0f432bb430898384f8a38f
|
||||
msgid "OpenID Connect settings."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/oidc/configuration.py:docstring of canaille.oidc.configuration.OIDCSettings:3
|
||||
#: f81414e07e2b40379d4a869caa971765
|
||||
#: 399b3ba31a2a4ab593437d5ff09b3704
|
||||
msgid "Belong in the ``CANAILLE_OIDC`` namespace."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.OIDCSettings.DYNAMIC_CLIENT_REGISTRATION_OPEN:1
|
||||
#: b385519bdeb94fc1b0c241a26ffa10b4
|
||||
#: 078d27ab0c25471ba020cd50959953e3
|
||||
msgid "Whether a token is needed for the RFC7591 dynamical client registration."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.OIDCSettings.DYNAMIC_CLIENT_REGISTRATION_OPEN:3
|
||||
#: 1394e8b1482d48eb83e3b83d0c9fedd6
|
||||
#: 982ecc53005e44c3af1329467f67b67c
|
||||
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
|
||||
#: 7066265898154e20a5b50d8fba161b04
|
||||
#: 8bb7098d11e5459fb0fb10fcfd92cb0e
|
||||
msgid "A list of tokens that can be used for dynamic client registration."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.OIDCSettings.JWT:1
|
||||
#: d629635ccc9c4e0099fe8cbec07df497
|
||||
#: cebac57da84f472b9724ea2b19a88b8b
|
||||
msgid "JSON Web Token settings."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.OIDCSettings.REQUIRE_NONCE:1
|
||||
#: 44bed0d7fc604d6bb0797836f3a28d63
|
||||
#: 36dd306abec64312ba0c875fc801e5e0
|
||||
msgid "Force the nonce exchange during the authentication flows."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.OIDCSettings.REQUIRE_NONCE:3
|
||||
#: 894924bff0764b1e9aed9f5399d32fd9
|
||||
#: 6221bc8bd6ba40b8868633965a26f252
|
||||
msgid "This adds security but may not be supported by all clients."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/oidc/configuration.py:docstring of canaille.oidc.configuration.JWTSettings:1
|
||||
#: 923a6ec2411143d08c5502134f1622de
|
||||
#: 1766de0ffc354f91a26f1694fc6071f0
|
||||
msgid "JSON Web Token settings. Belong in the ``CANAILLE_OIDC.JWT`` namespace."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/oidc/configuration.py:docstring of canaille.oidc.configuration.JWTSettings:3
|
||||
#: 2c22c86a44084df0889ccb862da2c593
|
||||
#: 009bf269cd6b4ae09467ace27f3fb76d
|
||||
msgid "You can generate a RSA keypair with::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.ALG:1
|
||||
#: a39536bb26fc47d688e2a8f58b2b9b34
|
||||
#: a08072b1d25443b1b844772f4ff7c190
|
||||
msgid "The key algorithm."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.EXP:1
|
||||
#: c2101e05e83740f58d59dbadb3190147
|
||||
#: b954e7767c754e6baeab30f362326666
|
||||
msgid "The time the JWT will be valid, in seconds."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.ISS:1
|
||||
#: d05b86845777404cac5d7e25f6b4fd7a
|
||||
#: c9e63d5813b04b92bd8a4a0b585b33a5
|
||||
msgid "The URI of the identity provider."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.KTY:1
|
||||
#: 978dc3cd74ed41d380ef579824b768d3
|
||||
#: 63966bfbb60749b884bceb1bc350a50f
|
||||
msgid "The key type."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.PRIVATE_KEY:1
|
||||
#: b07fad4012c04549b9014376e8973080
|
||||
#: 083732255e954482a089c695f47ef978
|
||||
msgid "The private key."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.PRIVATE_KEY:3
|
||||
#: ../../docstring of canaille.oidc.configuration.JWTSettings.PUBLIC_KEY:3
|
||||
#: 11bc180445ad4c9e83ad18ee61b19b5b
|
||||
#: f647de58457043d6bf1254041b232459
|
||||
#: 8cadbc77074442fdb0cc24103fb67271
|
||||
#: c0c5f1e3e26f412f83daf672905d3fdb
|
||||
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
|
||||
#: ea693f1143e346b5a1707e501b4612c1
|
||||
#: 9fcee133520d489783c254d774af74a9
|
||||
msgid "The public key."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/oidc/configuration.py:docstring of canaille.oidc.configuration.JWTMappingSettings:1
|
||||
#: 3f37afeb4ba944f1893abd9a4bf24c82
|
||||
#: b300de02031f4663bd151e4cdcbc617a
|
||||
msgid "Mapping between the user model and the JWT fields."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/oidc/configuration.py:docstring of canaille.oidc.configuration.JWTMappingSettings:3
|
||||
#: d6d5e13e76374c7c91fad5594b994abe
|
||||
#: 8dd4c6823ac84e149a02efe65e217b33
|
||||
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
|
||||
#: 18dbb46c974e490da7044bb55c57a8b4
|
||||
#: 970f05f5fcb04f4f87ef2aa2b7c436bf
|
||||
msgid "Settings related to the SQL backend."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/backends/sql/configuration.py:docstring of canaille.backends.sql.configuration.SQLSettings:3
|
||||
#: ac8f095c73d94a9eb610a6a877f56323
|
||||
#: d36c2f4f3c424297b123c782251ea5b1
|
||||
msgid "Belong in the ``CANAILLE_SQL`` namespace."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.sql.configuration.SQLSettings.DATABASE_URI:1
|
||||
#: 657ca5834898413aada92c21e870127b
|
||||
#: f7ef728d7d5c479485f07a29067bc859
|
||||
msgid "The SQL server URI. For example::"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/backends/ldap/configuration.py:docstring of canaille.backends.ldap.configuration.LDAPSettings:1
|
||||
#: eb2efa5097154602b3712c16331eb618
|
||||
#: 76b7ccaf6b2c4331b5bbd89dab99e2ef
|
||||
msgid "Settings related to the LDAP backend."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/backends/ldap/configuration.py:docstring of canaille.backends.ldap.configuration.LDAPSettings:3
|
||||
#: b9b407b8429e4c6db8ff909834398889
|
||||
#: b7c638b46d6f48e2a582cd52a429e21b
|
||||
msgid "Belong in the ``CANAILLE_LDAP`` namespace."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.BIND_DN:1
|
||||
#: 73e722b3fe3740e2bb04a67dd1396814
|
||||
#: f58def90f0ff4c6a9f0808da3b22f1f8
|
||||
msgid "The LDAP bind DN."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.BIND_PW:1
|
||||
#: 06730a32df8d44f2a1708565fd514032
|
||||
#: bce683900aa34e788f1048c23cac2ebc
|
||||
msgid "The LDAP bind password."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.GROUP_BASE:1
|
||||
#: ccd8fe02e0da48349bc7c22960ab400a
|
||||
#: 6a505bac6a524976bb673d0a5fd63f7c
|
||||
msgid "The LDAP node under which groups will be looked for and saved."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.GROUP_BASE:3
|
||||
#: f5e60ac6241b4d988e17fb66c5ed8fa8
|
||||
#: 42031d1720714c0fb5b570d03c559465
|
||||
msgid "For instance `\"ou=groups,dc=mydomain,dc=tld\"`."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.GROUP_CLASS:1
|
||||
#: df9cbdb25acd4c6cb9b940028c470f70
|
||||
#: 2c26c317c3c641f2bd78deff9be4a3cc
|
||||
msgid "The object class to use for creating new groups."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.GROUP_NAME_ATTRIBUTE:1
|
||||
#: cd8d5769aea049e9a097a71d8e78705b
|
||||
#: db3ddf6effa14ec38baebd99dc50e5b2
|
||||
msgid "The attribute to use to identify a group."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.GROUP_RDN:1
|
||||
#: bbdd9122975a422d97bbb1124775f483
|
||||
#: dbb54871450e4c7e96d40454f3e29880
|
||||
msgid "The attribute to identify an object in the Group DN."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.ROOT_DN:1
|
||||
#: 9ec0421dc6d146aa9deb878b8b74c310
|
||||
#: c410c0b67b0043048e2063397ea4a07c
|
||||
msgid "The LDAP root DN."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.TIMEOUT:1
|
||||
#: 18aa1e3fda9044ffb3ec7c5b66eb927f
|
||||
#: dc829580b65647098bde180a8681398f
|
||||
msgid "The LDAP connection timeout."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.URI:1
|
||||
#: 5e5f46a65b914960bee9cab8c1ed8295
|
||||
#: bf2bc54274ec49ab9532e43f9db7dfea
|
||||
msgid "The LDAP server URI."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.USER_BASE:1
|
||||
#: 37e84f4b6c9a4f2aac524b211eec92a2
|
||||
#: 8417a756a71f4d57b9179bce44c738fd
|
||||
msgid "The LDAP node under which users will be looked for and saved."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.USER_BASE:3
|
||||
#: 865d8a39af0c4081a0e5efbdb093e64d
|
||||
#: d8c7de846fd54c1683622862a57ee7cd
|
||||
msgid "For instance `ou=users,dc=mydomain,dc=tld`."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.USER_CLASS:1
|
||||
#: f2a1aa79a096443b82bf75ffed902328
|
||||
#: 016c6da2807146d8b336efc419545973
|
||||
msgid "The object class to use for creating new users."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.USER_FILTER:1
|
||||
#: d2867ad1a2cf42b6834d173c1596fb11
|
||||
#: 14d6048df0344b1497539f9179bd28dc
|
||||
msgid "Filter to match users on sign in."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.ldap.configuration.LDAPSettings.USER_FILTER:3
|
||||
#: 7eb49bc6bd41495cb8703166a9142961
|
||||
#: 15d58563699e4d05b4394f603a2aa7d2
|
||||
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
|
||||
#: 1b1a300a828f46248b0c26e37cc00c26
|
||||
#: 7dc67476e9a241959631d0cb75a01d94
|
||||
msgid "The attribute to identify an object in the User DN."
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:81
|
||||
#: 6a9df3aff9164276819573e73de3cf28
|
||||
#: 9ad50ee44eed4db98c81f6750d174085
|
||||
msgid "Example file"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/configuration.rst:83
|
||||
#: 9f661407953e4eceaf59f39040594f94
|
||||
#: 97c604b45a2041c991b43cab19fd784d
|
||||
msgid "Here is a configuration file example:"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,6 +17,6 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../references/index.rst:2
|
||||
#: 7e0a9ca5df284cb4aefaaa69849afa67
|
||||
#: 983008b557cf40dab35f71a21049eac4
|
||||
msgid "References"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,74 +17,74 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../references/models.rst:2
|
||||
#: 41a7dc7b250e480db46d41e3aee22ad1
|
||||
#: 022e1b3cf73440848f54dcfa34e42ba7
|
||||
msgid "Data models"
|
||||
msgstr ""
|
||||
|
||||
#: ../references/models.rst:4
|
||||
#: 1b1a39298a8748d695327d8c3205861e
|
||||
#: d149fff6a989475a8be86c904d978f4c
|
||||
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.py:docstring of canaille.backends.models.Model:1
|
||||
#: 5dfedb2673a34cffab2636c959e69517
|
||||
#: 180db8c2a5484efcaaedab0d0259893c
|
||||
#: 89ef1d33d7924bfdb5e279d1103bbcad
|
||||
#: a462c61f57f44ad08f0a8e562830af68
|
||||
msgid "Bases: :py:class:`object`"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/backends/models.py:docstring of canaille.backends.models.BackendModel:1
|
||||
#: 054dc8cb64204518901c6f741d0a78db
|
||||
#: b3c50358d06640a7a9fe4e59e7fd9827
|
||||
msgid "The backend model abstract class."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/backends/models.py:docstring of canaille.backends.models.BackendModel:3
|
||||
#: d5425365fe8544d99d250bc36f79a9b9
|
||||
#: a930a4499fef45d1b0942fc6c1e36b56
|
||||
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
|
||||
#: eed98eef84344fa8a1dfa96630a2308d
|
||||
#: 455dfc35495747599564cc0de69b6204
|
||||
msgid "The model abstract class."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/backends/models.py:docstring of canaille.backends.models.Model:3
|
||||
#: e45bdfd99f954f4c8fc3dc213443ff33
|
||||
#: d3d24c3cf53649fa9952d0acd46baaec
|
||||
msgid "It details all the common attributes shared by every models."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.models.Model.created:1
|
||||
#: 499d3761712a4423ada0b6c9e7336b9d
|
||||
#: 0b9f08586ec4479f95610436345a2df4
|
||||
msgid "The :class:`~datetime.datetime` that the resource was added to the service provider."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.backends.models.Model.id:1
|
||||
#: eb26542ddccf459bbd8179d12e546226
|
||||
#: 73ab147ab6f44612a5d639fc060bbaaf
|
||||
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
|
||||
#: 99a3ebf8e2f0425f8f6b2cb0fd43b1aa
|
||||
#: 04db3a45228d44168cbb27c89577d6dc
|
||||
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
|
||||
#: d3ab1a41021449649f7fc65d7faa4b5a
|
||||
#: 2ea5fc24d36f4c83b49bc6509fc30f36
|
||||
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
|
||||
#: 730b5beedf3345e7a1f3c9152b471d76
|
||||
#: 8de478a9d8f44e5ebf9ffd959187d3e7
|
||||
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
|
||||
#: 6654492d947545cf99532d0bc78c607d
|
||||
#: 9b5885a4658141839d61820edf411982
|
||||
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
|
||||
#: a06610bf90c745bf97d7332606ee3e14
|
||||
#: 659528401e8e404ca22250d8a132a8af
|
||||
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 ""
|
||||
|
||||
|
@ -94,539 +94,539 @@ msgstr ""
|
|||
#: ../../canaille/oidc/basemodels.py:docstring of canaille.oidc.basemodels.Client:1
|
||||
#: ../../canaille/oidc/basemodels.py:docstring of canaille.oidc.basemodels.Consent:1
|
||||
#: ../../canaille/oidc/basemodels.py:docstring of canaille.oidc.basemodels.Token:1
|
||||
#: 25aac7c6a4de47149abecdba2643cf16
|
||||
#: 2fcb719579614323832335e883920d06
|
||||
#: 9fcbd7a341574bb0a12735c80577678c
|
||||
#: e686b323e13d49108d090d0ccec91b95
|
||||
#: a2f9ebd1047445d68a4211e9f7e7939d
|
||||
#: 474767a737ea4abeb51431231c5eeecd
|
||||
#: b0cbb8436a2e4726a04c452b6464b07c
|
||||
#: a46cf872f3124dfebe8074d928294b37
|
||||
#: 490030c82e9f4ca7a39b4dd4e47c6da1
|
||||
#: 9593236b11104e0782a0ec1d2422f081
|
||||
#: c26fabc7468147da80b51e22269685ff
|
||||
#: 3266b57754fd4ab3ad8752c56797ec3f
|
||||
msgid "Bases: :py:class:`~canaille.backends.models.Model`"
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/models.py:docstring of canaille.core.models.Group:1
|
||||
#: 75d84fdf9b3e4d40a7388fde78daf7d4
|
||||
#: b508bfbf52f549b0a2e7036942e5ae2e
|
||||
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
|
||||
#: b34781220a204e858e24409b1a1059c7
|
||||
#: 18d85d6d4d3647f1a2ec4e540fd71f0c
|
||||
msgid "A human-readable name for the Group."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.Group.display_name:3
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.client_id:1
|
||||
#: 08b43e57fa894ae3b6317cc37297342c
|
||||
#: 48449512919d4b3ab2aa12fe6c48a3f4
|
||||
#: 732a62dcb7c14d6ebe0cbb87a056506b
|
||||
#: eeba3149bca04af9b37b5b8a6942a31a
|
||||
msgid "REQUIRED."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.Group.members:1
|
||||
#: 6028207848c745e381bd6946ce2d276d
|
||||
#: d3c1eb7c79cd4c329aa5889db10437c4
|
||||
msgid "A list of members of the Group."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.Group.members:3
|
||||
#: f75ea88690b0435a917de111ae26b22b
|
||||
#: 84f35590c5e343d794d68c66b238dc99
|
||||
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
|
||||
#: 539d0e7b4b0143c39c76c5e9ef16bd86
|
||||
#: 693317bbc24b4bb38a0c34eabe8c27a6
|
||||
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
|
||||
#: 87eda29a61a745199883fc289a13c314
|
||||
#: d512cb33bc1b4f34910c1f3d20b00415
|
||||
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
|
||||
#: c2e676f9335f408ab8318ffd79b0aa8a
|
||||
#: a85b1f762528426fb7c866f8acff33a7
|
||||
msgid "Identifies the name of a department."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.display_name:1
|
||||
#: 5881ae5858d447058eca54d075e1799a
|
||||
#: ccac75608a514817bc2657221c84c8d4
|
||||
msgid "The name of the user, suitable for display to end-users."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.display_name:3
|
||||
#: 270a39dc6d7f49b49f5e21b2048c6c9a
|
||||
#: 12cb2626a8b8428386ab833d1a57a44c
|
||||
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
|
||||
#: 8cb604df1a19481284ee1359685e6af0
|
||||
#: 1d01bb2833434fefbd8e26282f88c2b5
|
||||
msgid "Email addresses for the User."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.emails:3
|
||||
#: cf1562e8f9334a6f9f9d1d8ed7fad99f
|
||||
#: 2c83d0f48a2c4b20b11e0f59a8fd1015
|
||||
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
|
||||
#: 636ed55260c74feeacbf312e64f05846
|
||||
#: 221bb9f4d412453e8aab759ea9b8e9b1
|
||||
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
|
||||
#: 64675e899765403b9e7f5f7e20b6a4d4
|
||||
#: 2bc5c5485b0e472383061267c89b9843
|
||||
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
|
||||
#: d7bc625574aa4a92922b80a678dd2603
|
||||
#: 1a46356c5b514ef39560fc6bf3e37a1f
|
||||
msgid "The full mailing address, formatted for display or use with a mailing label."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.formatted_address:4
|
||||
#: 7b5cfe72fe824e41acc01e5b12836c38
|
||||
#: f52de344799e4ceeb276ed4f02955181
|
||||
msgid "This attribute MAY contain newlines."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.formatted_name:1
|
||||
#: 3a0ffada2e8445b28acbba22cc25b66c
|
||||
#: 5c155ee534eb441fba949e3d9607c7ce
|
||||
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
|
||||
#: 61ce490296b54da7ae1b542c1f705d86
|
||||
#: b045a3658e1d46aaa2be9115e8412458
|
||||
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
|
||||
#: 690f1b154c004cd4b73b9f3942abe467
|
||||
#: 3ac337f269234f93a9adee6541ae355f
|
||||
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
|
||||
#: 2eb7b172e9b244b784e9be7ae251f62c
|
||||
#: 63c40fd148cf4a49b7e68d521d7e6489
|
||||
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
|
||||
#: 40ee4db8c45f4003bb48204deb440d98
|
||||
#: bf9ca86e1fdf4aec978ae51efe4493c3
|
||||
msgid "Check whether a password has been set for the user."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.locality:1
|
||||
#: 3512695046244d34b61291df0b2982f7
|
||||
#: 0d4cf2a502c74826bf7403b6740b9982
|
||||
msgid "The city or locality component."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.lock_date:1
|
||||
#: 31216009e3274f90bb09e07a3c667ccd
|
||||
#: 0b6933781a174c2bad8d274d52dcc8d0
|
||||
msgid "A DateTime indicating when the resource was locked."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/models.py:docstring of canaille.core.models.User.locked:1
|
||||
#: 1c62d35ba0c44d53870acd58383ae845
|
||||
#: 1cbdffaaae3d46a885a2cc92bcf846f7
|
||||
msgid "Whether the user account has been locked or has expired."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.organization:1
|
||||
#: 9e66d1ff732c4c9498199b3cd30133c2
|
||||
#: 92976f5262824ee9b3e0a65fb798b8b4
|
||||
msgid "Identifies the name of an organization."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.password:1
|
||||
#: dc7683784aaf49ad82908015dddc3327
|
||||
#: 2cb2af496f3042c3966013ea767e5406
|
||||
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
|
||||
#: 75d933d5170e459d871c082acdc18867
|
||||
#: 48b6e0f8a7164393abc72168bccfa18c
|
||||
msgid "Prepare the cleartext value for international language comparison. See Section 7.8 of [RFC7644]."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.password:12
|
||||
#: 8448f08bb8d94e489d01759c44573b27
|
||||
#: ddd96221e9c2438eb6c1d0a9dca2da76
|
||||
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
|
||||
#: c21e45acd3eb4c948f20fad79c2589fb
|
||||
#: d76e3ac607d140bc951e00ad3392ea2f
|
||||
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
|
||||
#: 71a63d1b1da4473aab7849d83bae865d
|
||||
#: 873d9d6bed204708a8d85cfe4d9d9eaa
|
||||
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
|
||||
#: 6e667adf52f041cd91027ad22ec29e79
|
||||
#: 43840faf65d749eba3318ec708692933
|
||||
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
|
||||
#: c5b24096ff7b4a70982efaf2b4a590a0
|
||||
#: 88ef2343a00a4cf2ab352ac63d38dfc9
|
||||
msgid "Prepares the filter value for international language comparison. See Section 7.8 of [RFC7644]."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.password:35
|
||||
#: a01917d7f406402aae04d9fab29cce1f
|
||||
#: 2ca8f00a08984448bfcdd17b066e8742
|
||||
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
|
||||
#: d014072927a8489c959cf01f30a02e52
|
||||
#: c3f9a3035bdf47e6917199ac4358c006
|
||||
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
|
||||
#: 22dabe92b12f42999acc57125936d9a4
|
||||
#: 97901cdb7c7a48248f43e9d3172a6aef
|
||||
msgid "Phone numbers for the user."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.phone_numbers:3
|
||||
#: 4e9f962969504e419f1ee1e42018b7e3
|
||||
#: 06c2bdfccac54d558c5f0996124cf0e7
|
||||
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
|
||||
#: 8a1be24639d748fbb92e9026057c6108
|
||||
#: 1b1f45abe24f408896ad3f11cc6808c7
|
||||
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
|
||||
#: 3c9a2c89c2e144e4a8e3a549099a0afc
|
||||
#: 9d5908c5c4c943009e34f83028518e5c
|
||||
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
|
||||
#: b8fd039fd49448fb8a1f2602864cdb31
|
||||
#: be3a35536d93497eb6d9d585837b2283
|
||||
msgid "The zip code or postal code component."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.preferred_language:1
|
||||
#: 78cc188b2ee94614ab5e68931c93b5e4
|
||||
#: c128776195cd492f9ad3d7949bbc3b54
|
||||
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
|
||||
#: e957b1c5b5a0404d887870c7cb30361e
|
||||
#: 2f1af307075f44638377fff8773edfba
|
||||
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
|
||||
#: 076f48982818474ca185bbb7ecc083bf
|
||||
#: aed0249175b44f0b9f2feb1aa515c775
|
||||
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
|
||||
#: 850461e9fb3b4d709fcf76dd09c142b0
|
||||
#: daa70d8170444df5a30410cc87f393db
|
||||
msgid "URIs are canonicalized per Section 6.2 of [RFC3986]."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/core/models.py:docstring of canaille.core.models.User.readable_fields:1
|
||||
#: b97df5cf09a748e79ea9971b8dba39d1
|
||||
#: debf78051e654f52af684f36c1629415
|
||||
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
|
||||
#: b76c15b84378406fbc1249573072e5ca
|
||||
#: 797042e3224245dbb82b8e2c6c7882be
|
||||
msgid "This does not include the :attr:`writable <canaille.core.models.User.writable_fields>` fields."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.region:1
|
||||
#: 082b19222f8f4e25a4aa0aa0ecba0929
|
||||
#: adca0f9fe25e411e8e82b9fd9a78b778
|
||||
msgid "The state or region component."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.street:1
|
||||
#: 2c8f12c4f115443998f8cd1e22299be9
|
||||
#: 3a12008e383748b9a68f380f06740b99
|
||||
msgid "The full street address component, which may include house number, street name, P.O."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.street:4
|
||||
#: aba448bfd8da42758924353149dadc87
|
||||
#: 28be3cbf04994e0f84565569a0cab6db
|
||||
msgid "box, and multi-line extended street address information. This attribute MAY contain newlines."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.title:1
|
||||
#: 62e0f8e9c68a4ecfac80add78ccd7142
|
||||
#: bc37ec09dcf441b18e6a7a14f4fa032b
|
||||
msgid "The user's title, such as \"Vice President\"."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.core.models.User.user_name:1
|
||||
#: 293d739a09e94a099259ed4650bae8ac
|
||||
#: f3748083c91b42a3a188413f1c0b9003
|
||||
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
|
||||
#: c13edd0588bc4f9d991306cdfd54d80a
|
||||
#: 5fb20fd2207e4f00941d6491626145fc
|
||||
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
|
||||
#: bce25550d966456fb325f488d3989446
|
||||
#: 118f89cc1cbd40e1904344299ec0ff2f
|
||||
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
|
||||
#: edd3de5bfc4d4ae881494d6ba9e94342
|
||||
#: 9facc36af225404d9779eaf6bf2bfab7
|
||||
msgid "OpenID Connect temporary authorization code definition."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/oidc/basemodels.py:docstring of canaille.oidc.basemodels.Client:1
|
||||
#: 8e9b301343f149de94a1d40e8b591125
|
||||
#: 3bdc94d169f4438894bf0425d195e506
|
||||
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
|
||||
#: e45f4fee2fdb46e7bb31460fddf3400a
|
||||
#: 9c71570390a0463e962bce31ea5088b3
|
||||
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
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.client_secret:1
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.post_logout_redirect_uris:1
|
||||
#: c9328ff136fb490cb6810fd738cd32c3
|
||||
#: 7e4168f5eef24ce7a0fdfcd1a34ac0b1
|
||||
#: 1ea64fb459e343a58a8c09ffb8fb046c
|
||||
#: 3c32fe5a481b412bb1e1b937ee4869ec
|
||||
#: 044bd6e4946b410198e0d298277e7dd4
|
||||
#: 6c48ff3f31a641aa937776cb3fae89b3
|
||||
msgid "OPTIONAL."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.client_id_issued_at:3
|
||||
#: 673ada2798054ac5aaceccb2e11fa62c
|
||||
#: 2f4229be751d4e5caa1b9069d15f33b8
|
||||
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
|
||||
#: 884645dd183e4deaacd7b26efbeae4b0
|
||||
#: 956366c2776548e6a62315bcb4247b8e
|
||||
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
|
||||
#: e71d8bfba20a4451bf78c67859250e85
|
||||
#: 4d83c77c154048298477394cfcb5fc9a
|
||||
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
|
||||
#: 317b9d7d12754d8e81ccdbdbb69027a3
|
||||
#: dce117516b124deab7b810b6c54fa0ac
|
||||
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
|
||||
#: 4e7d6ee56b7d4f3ba2bdda60e9a8428c
|
||||
#: b85460cc7e254321ac121e50eaffbd3a
|
||||
msgid "REQUIRED if \"client_secret\" is issued."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.client_secret_expires_at:3
|
||||
#: 7eff790c6fed4a40b4afbf0c48e8f9b7
|
||||
#: a760adab225b4b7f8569ac1aedcd0fe4
|
||||
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
|
||||
#: c808c4be36474628b978c4f87622d9bb
|
||||
#: 368fa31181994524b25de364044e969d
|
||||
msgid "URL string of a web page providing information about the client."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.client_uri:3
|
||||
#: eadc2f25087d476fb020f699c9f630c0
|
||||
#: 0a20833287484008ac3e4a7377b83fae
|
||||
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
|
||||
#: b2ba960845ec4d37955854ef04ff3439
|
||||
#: 9b6834ade33a4cd6941bb4ce4fbbe533
|
||||
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
|
||||
#: f16aba83e47541b9a0a1b9fb36d5ebbd
|
||||
#: af5b08bc89ec4d77b081ecb7134fa27f
|
||||
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
|
||||
#: 9279cc2620e247239620ce27cc3f25be
|
||||
#: a98a93fb09664916a5e87eb824142864
|
||||
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
|
||||
#: 3531d80222174772b72c7d0365ae585b
|
||||
#: 5b3b26e17f8b4debb5f24b1f09741112
|
||||
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
|
||||
#: 700823977a854c0ab4b31683d3537526
|
||||
#: 2e3fc7ab9197457a9cb841b2ad5db74c
|
||||
msgid "\"implicit\": The implicit grant type defined in OAuth 2.0, Section 4.2."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.grant_types:10
|
||||
#: 9edafc4daf7d495d91ad5c3e3945373f
|
||||
#: 4b0a5a3917a1404489a1c35523b3101e
|
||||
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
|
||||
#: 606dd7b652ee432db4df96731cb74c83
|
||||
#: 857eea7248a341aa921cd8fd5b724fbe
|
||||
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
|
||||
#: e89ed9beba1c4bad87c8debcb3a6f7ea
|
||||
#: f5f2816191814d21bfec694ca69ff1d1
|
||||
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
|
||||
#: 278f7b5438fc4abba32e99a2cfd051e0
|
||||
#: c541d54100d34722acd417b25e98bd5c
|
||||
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
|
||||
#: f6d6e6c6e6fd4d059f4414322c5b2816
|
||||
#: 2ea0af9e26be4d2db3d332e953e8ca8b
|
||||
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
|
||||
#: df3a20a122e44a0f85ff153097c75299
|
||||
#: 57292fb5f1634d3bba1da0262c280fcb
|
||||
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
|
||||
#: b28be1904349499bbb8a81a044e4d67d
|
||||
#: d4b452db75264d40be92a7a921f87428
|
||||
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
|
||||
#: f70ddda717154155a67fd9257f4e2a29
|
||||
#: bf3972f670c941ad85e0478d1808ff37
|
||||
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
|
||||
#: e77c6d704ba34b1a8ae9191a549fc105
|
||||
#: 268c5ebb6d01426daf157137967ceb71
|
||||
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
|
||||
#: 07c3977b5cc6478582c40bfda3818dca
|
||||
#: 7fc031400ba5483787d3755a50404f52
|
||||
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
|
||||
#: 1e78b0b24ba74fce9796a178d03f9a68
|
||||
#: 2e7ce4c75ee742bca61f56435df8c8ba
|
||||
msgid "URL string that references a logo for the client."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.logo_uri:3
|
||||
#: 8047900a37a946c5819126e4d5b1a6f2
|
||||
#: 9b60b488494740178fa0eb696a830276
|
||||
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
|
||||
#: 196ad277ca0d48e39e3b050fbd6c7420
|
||||
#: 6196df903f044a869d63d7bfe59029ec
|
||||
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
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.tos_uri:5
|
||||
#: 44ffb5b8755147ffa444c857bb4cb9d7
|
||||
#: ccc2d89b967b4e17a53b8ac2c26b263f
|
||||
#: 4a2485a600f84752af39a53edb626de6
|
||||
#: 7107cb606a41467ba4620b8833bce409
|
||||
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
|
||||
#: 40a2fe5d5daf49c184873ddddffa1893
|
||||
#: c72d1bb71dd94b548279d1efbc710585
|
||||
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
|
||||
#: 9a28211e567845cbba7ac1bee6666f4a
|
||||
#: 2e06e42021994d9880933a147f75ac42
|
||||
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
|
||||
#: 2afba64218f040f1989433931c19d5e1
|
||||
#: d620c8983f004e97b068e92227d397ca
|
||||
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
|
||||
#: 89ed3097a94f43dc83b564e94b3179f7
|
||||
#: 0199d813ba7048eab35fcd268b27bfcc
|
||||
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
|
||||
#: f58fbc4e912f4a07910f7dde4deb4886
|
||||
#: 4bab6b2fed8a4f1ab9108994d6fb98e0
|
||||
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
|
||||
#: ea813f0274b44fe2a03e1215606dcca0
|
||||
#: 00457e11ffec4ca3b872fb7f97e43510
|
||||
msgid "\"token\": The implicit response type defined in OAuth 2.0, Section 4.2."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.response_types:11
|
||||
#: e855edc4d7984aa68dd8bd2609bd4925
|
||||
#: 7fd3e01f1e3e4a3e98a4a71071fde775
|
||||
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
|
||||
#: 203b6265a65f43678bd3525158d35ed5
|
||||
#: 8b411c3c4d744e66a74e7e4bf52e621c
|
||||
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
|
||||
#: ccb3e8902413435da8ef2b347ee6f524
|
||||
#: 953f41806c6e4932b7c4edf6f0ddd507
|
||||
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
|
||||
#: 1c3a6b1855e6484286e2a7ead64545ca
|
||||
#: 4fc9f0306c584316aa4c1b3c2d844099
|
||||
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
|
||||
#: 92bca122a33f4ad2aa156a357d7abbc9
|
||||
#: 2125d1eb4c6b4718b6c4331052fe7faa
|
||||
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
|
||||
#: 7b41f56df51642a99f7bdbaf40269981
|
||||
#: 40e1b0990ec746bf8c9d05c246211b2f
|
||||
msgid "A version identifier string for the client software identified by \"software_id\"."
|
||||
msgstr ""
|
||||
|
||||
#: ../../docstring of canaille.oidc.basemodels.Client.software_version:4
|
||||
#: 02558244f5a141e193400a177f45b84e
|
||||
#: 34d17136e48a479b9fe5b56d79bae90b
|
||||
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
|
||||
#: e508c45da1ae48f19b7ee8441976c669
|
||||
#: 4c0d764f9b464300b91cb575bec81042
|
||||
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
|
||||
#: 8a3f3b84f62b4438a5ed5fbb9e98bef5
|
||||
#: 06c9b086f72f4839b8e624dafa032e65
|
||||
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
|
||||
#: 0a2a945397264911947f1eb4e8591bbf
|
||||
#: f0c62329f807478fba3956bb2b215eff
|
||||
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
|
||||
#: 3852640761c84dbfb1e94502c59cd753
|
||||
#: 6aae16f0c1f44fbca7c2cf890999a8d7
|
||||
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
|
||||
#: e1a40f43702c4916bcfa4584c26611ea
|
||||
#: 93316ec1de384670bee6411eeeee736a
|
||||
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
|
||||
#: a6cd2971183b42bcbb8e50649d19fc7e
|
||||
#: 688470bc69ac41dcbde0543cf71e5479
|
||||
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
|
||||
#: 5b6f0884f0fa40aa8a74cc3a3553d88f
|
||||
#: fbc25995a4954ad89cf6363836c086b9
|
||||
msgid "Long-term user consent to an application."
|
||||
msgstr ""
|
||||
|
||||
#: ../../canaille/oidc/basemodels.py:docstring of canaille.oidc.basemodels.Token:1
|
||||
#: 0536543f92654e49b7a69b057d076a38
|
||||
#: c24dba2ff5d047d18e4c44c48289f2dc
|
||||
msgid "OpenID Connect token definition."
|
||||
msgstr ""
|
||||
|
|
453
doc/gettext/tutorial.pot
Normal file
453
doc/gettext/tutorial.pot
Normal file
|
@ -0,0 +1,453 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) 2024, Yaal Coop
|
||||
# This file is distributed under the same license as the canaille package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 17:21+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../tutorial/databases.rst:2
|
||||
#: 34b6a5df315e4629b9710884e3f5be9e
|
||||
msgid "Databases"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:4
|
||||
#: 31f93a60c87648478dfe7a6c74d5f36a
|
||||
msgid "Canaille can read and save data in different databases. This page presents the different database backends and their specificities:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:8
|
||||
#: 8dc081315c7a4eea8be2e81b8a049162
|
||||
msgid "Memory"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:10
|
||||
#: 08608b21b52a4a22ac26b3a2a2d29f6a
|
||||
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
|
||||
#: dbb9009fcf724d6290135aa1d6a32026
|
||||
msgid "This backend is only for test purpose and should not be used in production environments."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:16
|
||||
#: 06113268bf4a49d0880cdae75f961fc5
|
||||
msgid "SQL"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:18
|
||||
#: 2bb9cb1d3c4f4e4f93d649960bca123d
|
||||
msgid "Canaille can use any database supported by `SQLAlchemy <https://www.sqlalchemy.org/>`_, such as sqlite, postgresql or mariadb."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:21
|
||||
#: bb4ec73e439d430aa8dbdddb0301bf5b
|
||||
msgid "It is used when the ``CANAILLE_SQL`` configuration parameter is defined. For instance:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:23
|
||||
#: ../tutorial/databases.rst:37
|
||||
#: 7de375f96b054244a9fb0c7c60663f32
|
||||
#: ebab073f2f894dfb87705d06ebb870af
|
||||
msgid "config.toml"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:29
|
||||
#: 6e78f6be25cb4151951a1bc6994643a9
|
||||
msgid "You can find more details on the SQL configuration in the :class:`dedicated section <canaille.backends.sql.configuration.SQLSettings>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:32
|
||||
#: bcfa707ba3b2494ab1af853bcdc7673f
|
||||
msgid "LDAP"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:34
|
||||
#: 426e632fa07a44369bdadb8a290672bf
|
||||
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
|
||||
#: 0c319bcdd3b649569745572bb2944fec
|
||||
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
|
||||
#: ebc6e35e9a6049be8bc66eb127adf882
|
||||
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
|
||||
#: 6a9ec2b8bf724122b5752c753bdaea7a
|
||||
msgid "OpenLDAP overlays integration"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:62
|
||||
#: ce6daa0ac4974084990221c2806a5549
|
||||
msgid "Canaille can integrate with several OpenLDAP overlays:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:65
|
||||
#: 24a7dc4d61504545ac841910fbaca48b
|
||||
msgid "memberof / refint"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:67
|
||||
#: d24183e3349f42bfbbecde663f03f846
|
||||
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
|
||||
#: 65357e9c96e341128f9448507ce02f1b
|
||||
#: 692bdeebfc9c40999c9b09c8d9371e52
|
||||
msgid "Here is a configuration example compatible with canaille:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:73
|
||||
#: 511312387435410987a190cf7b68f2ab
|
||||
msgid "memberof-config.ldif"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:77
|
||||
#: c95e78d9dde84102b1a97c2399430c23
|
||||
msgid "refint-config.ldif"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:81
|
||||
#: ../tutorial/databases.rst:104
|
||||
#: 2e0fddced7e949f8a66653530c8a120b
|
||||
#: 8686380cd79949259b48f68fe6c4d3b8
|
||||
msgid "You can adapt and load those configuration files with:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:90
|
||||
#: af864ca7a8ef4d128d3fbe54749a944c
|
||||
msgid "ppolicy"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:92
|
||||
#: fc8d77f8ca4d48de9eba6c408a9f5fc2
|
||||
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
|
||||
#: 15e6cfdc691149efbbdc2f3834c7a3d0
|
||||
msgid "ppolicy-config.ldif"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:100
|
||||
#: ef7f7bd8dd0445be8596864cb1b50fa5
|
||||
msgid "ppolicy.ldif"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:2
|
||||
#: a7ef8cd4696b4e53a1ffdb87fb18c375
|
||||
msgid "Deployment"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:5
|
||||
#: 0f1f7c0caa8a4dfcb659c15bedda5aae
|
||||
msgid "Application service"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:7
|
||||
#: b93527ef33ad4a65af273da09bb780f3
|
||||
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
|
||||
#: 1ffbe89a8ff744fc9686484ce526e541
|
||||
msgid "gunicorn"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:13
|
||||
#: 418a0ab3603442f2b0a515962f003029
|
||||
msgid "Todo"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:15
|
||||
#: c40ad558fd584c01a6c564f8f72d12f3
|
||||
msgid "Write a gunicorn configuration sample file."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:18
|
||||
#: ec3a0c7c05b74be6b1640ff6a4090aec
|
||||
msgid "uwsgi"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:42
|
||||
#: 5c4862bc3810432195a2e9a353f60b54
|
||||
msgid "Webserver"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:44
|
||||
#: 94e56452db9741f0a3eee45f672e73a8
|
||||
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
|
||||
#: 7c4ae615fbd44c3f8ab3ece2d0201ed7
|
||||
msgid "Nginx"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:114
|
||||
#: ac66da9f7d1342bdad81dbdf97218b4e
|
||||
msgid "Apache"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:153
|
||||
#: ad13e4fdf804422facdde8b1b619e9a2
|
||||
msgid "Recurrent jobs"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:155
|
||||
#: b9ba07959e7f4d57846b44490735d913
|
||||
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
|
||||
#: 4a9929824eba46a883f1147dcdaa526e
|
||||
msgid "Webfinger"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:166
|
||||
#: cbd15001d4a043e5a0ec93a5eff80b9f
|
||||
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
|
||||
#: e515d97f8d8248f98081746a9b723611
|
||||
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
|
||||
#: 3c7cb4cd4a2d498098fe4387a5ae3b2a
|
||||
msgid "Here are configuration examples for Nginx or Apache:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:172
|
||||
#: a11ff6002ffc46b7b401b29c222cb984
|
||||
msgid "Nginx webfinger configuration for a top level domain"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:181
|
||||
#: cc81b2ca58b842bab2583d46cd8ac1dc
|
||||
msgid "Apache webfinger configuration for a top level domain"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:191
|
||||
#: b9b3713c6f724e5cb3cad50756e8211c
|
||||
msgid "Create the first user"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:193
|
||||
#: 02df7f55e6df4452ac60d899b5a98cc2
|
||||
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
|
||||
#: 3deeb02f520e41b4a510d72bdd446046
|
||||
msgid "Tutorial"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:2
|
||||
#: 36b529fead5242468a36bdbbbdd28544
|
||||
msgid "Installation"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:6
|
||||
#: c717982f410e46a28e3f97a9a1096146
|
||||
msgid "Canaille is under heavy development and may not fit a production environment yet."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:8
|
||||
#: 6e7bc4fde5d74dceb03c1f03a95fa779
|
||||
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
|
||||
#: 25f53875201f4538b26df4d537d355ea
|
||||
msgid "Get the code"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:13
|
||||
#: ac342d74e14244c4badfab8c1f829d94
|
||||
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
|
||||
#: 15d4a0b372c44934a05f1ed6eb327a87
|
||||
msgid "Extras"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:26
|
||||
#: 6c563bb9847e4766a5c3d0d461a35c2f
|
||||
msgid "Canaille provides different package options:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:28
|
||||
#: 65dbf1cc88e14dcda675a7a20f71477b
|
||||
msgid "`front` provides all the things needed to produce the user interface;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:29
|
||||
#: 932751ee90ac445f8271d5f0bf062139
|
||||
msgid "`oidc` provides the dependencies to perform OAuth2/OIDC authentication;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:30
|
||||
#: 33ba6546cbf94064ab5290438b1120a8
|
||||
msgid "`ldap` provides the dependencies to enable the LDAP backend;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:31
|
||||
#: e65f505181e448e58b1aa158e8af5d42
|
||||
msgid "`sqlite` provides the dependencies to enable the SQLite backend;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:32
|
||||
#: f3fa4d1a59674077b16bdc0e432f326e
|
||||
msgid "`postgresql` provides the dependencies to enable the PostgreSQL backend;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:33
|
||||
#: f914db4dca274ab9bc725faba6cc6e86
|
||||
msgid "`mysql` provides the dependencies to enable the MySQL backend;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:34
|
||||
#: 7dad7a35aea54e549ac3328577c8e3e1
|
||||
msgid "`sentry` provides sentry integration to watch Canaille exceptions;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:35
|
||||
#: 1cd7e38d50bd4f439e285c870a8b005c
|
||||
msgid "`all` provides all the extras above."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:37
|
||||
#: cf6a1f2144114c7abfe4177c427d72f8
|
||||
msgid "They can be installed with:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:44
|
||||
#: 51d6f24a101c4511aa3d49db1914fa3a
|
||||
msgid "Configure"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:46
|
||||
#: 4efc51c21f274c449ecdd33dcc439625
|
||||
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
|
||||
#: 90dd73339c3e43f18395eb80d9749456
|
||||
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
|
||||
#: 3ff3b9dbf5904b3dbb2494ee61825d15
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:59
|
||||
#: 56e161c2e2ed4ae7a7d55bcc024135a1
|
||||
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
|
||||
#: e4b60f64108549189d9627699af12a91
|
||||
msgid "Check"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:70
|
||||
#: 1a9056c774724a0491bcb5060e8903f2
|
||||
msgid "After a manual installation, you can check your configuration file using the :ref:`check command <cli_install>`:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:2
|
||||
#: 8e2c5e7ea5f14416a11a2ec648a32593
|
||||
msgid "Troubleshooting"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:5
|
||||
#: d1d6667b4caa4506a5be55cc7c4df22a
|
||||
msgid "The web interface throws useless error messages"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:7
|
||||
#: a71c850aa84d41e99550cc54f23e5441
|
||||
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
|
||||
#: cc846be11ca448ddb1c1913d1e41ccbf
|
||||
msgid "How to manually install LDAP schemas?"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:16
|
||||
#: c9a20d92290541c0b5536e5cd150999d
|
||||
msgid "Schema installation can be automatically done using the :ref:`install command <cli_install>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:18
|
||||
#: 830b3a72844a44d386308540cc44f1e4
|
||||
msgid "As of OpenLDAP 2.4, two configuration methods are available:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:20
|
||||
#: 02db4b758cfd40f7b64bfb79bea9f5c3
|
||||
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
|
||||
#: 0b24de0faa944ae3b1af5c604a71098f
|
||||
msgid "The new one, based on a configuration directory (generally ``/etc/ldap/slapd.d``)."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:23
|
||||
#: 7acd99c26fd7480e8733523fbd29db13
|
||||
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
|
||||
#: 3917d45c79604f16ba0aca4887ff6dac
|
||||
msgid "Old fashion: Copy the schemas in your filesystem"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:35
|
||||
#: 430b74fa77a94624bcae8606289222a3
|
||||
msgid "New fashion: Use slapadd to add the schemas"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:37
|
||||
#: 9fdc2c09b2dc44b3b5e45ed1271b3e7c
|
||||
msgid "Be careful to stop your ldap server before running ``slapadd``"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:46
|
||||
#: cc6bfd549bd541eead7a37af15a25aef
|
||||
msgid "How to manually generate the OIDC keypair?"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:50
|
||||
#: 6dc2d317536b41ff839d98287a84f358
|
||||
msgid "The keypair generation can be automatically done using the :ref:`install command <cli_install>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:52
|
||||
#: 31db4facc32b4691b3625065562ef5c3
|
||||
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 ""
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,137 +17,137 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../tutorial/databases.rst:2
|
||||
#: 527d8f3cbe0a441abe4e66c3c3a8e45b
|
||||
#: 34b6a5df315e4629b9710884e3f5be9e
|
||||
msgid "Databases"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:4
|
||||
#: 7ba0b9a14fce436595c5ebde78aae946
|
||||
#: 31f93a60c87648478dfe7a6c74d5f36a
|
||||
msgid "Canaille can read and save data in different databases. This page presents the different database backends and their specificities:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:8
|
||||
#: 79cee50c147545ce9bdac814bcfe8609
|
||||
#: 8dc081315c7a4eea8be2e81b8a049162
|
||||
msgid "Memory"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:10
|
||||
#: e3f9746afd40417e9b6324eb9feed900
|
||||
#: 08608b21b52a4a22ac26b3a2a2d29f6a
|
||||
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
|
||||
#: c99976af30a84dd88144af1f94fa4f1f
|
||||
#: dbb9009fcf724d6290135aa1d6a32026
|
||||
msgid "This backend is only for test purpose and should not be used in production environments."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:16
|
||||
#: 2cc56bb5b80e44acbf72f33c06b160ac
|
||||
#: 06113268bf4a49d0880cdae75f961fc5
|
||||
msgid "SQL"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:18
|
||||
#: 810f5fc5e5c44da2aeed71b98964cdb5
|
||||
#: 2bb9cb1d3c4f4e4f93d649960bca123d
|
||||
msgid "Canaille can use any database supported by `SQLAlchemy <https://www.sqlalchemy.org/>`_, such as sqlite, postgresql or mariadb."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:21
|
||||
#: 2bc43b31141a40ee931dd4dccb78072b
|
||||
#: bb4ec73e439d430aa8dbdddb0301bf5b
|
||||
msgid "It is used when the ``CANAILLE_SQL`` configuration parameter is defined. For instance:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:23
|
||||
#: ../tutorial/databases.rst:37
|
||||
#: 4c8504504a3647198afac5c8d87813f7
|
||||
#: 196b09a796c04d4b9066bd463f5e239b
|
||||
#: 7de375f96b054244a9fb0c7c60663f32
|
||||
#: ebab073f2f894dfb87705d06ebb870af
|
||||
msgid "config.toml"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:29
|
||||
#: 05c9a85af5f04ad08741ff83efa7a3a0
|
||||
#: 6e78f6be25cb4151951a1bc6994643a9
|
||||
msgid "You can find more details on the SQL configuration in the :class:`dedicated section <canaille.backends.sql.configuration.SQLSettings>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:32
|
||||
#: 91a683cbbdc745549e37499598c1aa4a
|
||||
#: bcfa707ba3b2494ab1af853bcdc7673f
|
||||
msgid "LDAP"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:34
|
||||
#: 0dcba883340c4f67b21d69b9f9078c48
|
||||
#: 426e632fa07a44369bdadb8a290672bf
|
||||
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
|
||||
#: 90ed3908de454594b1e76e5725056c81
|
||||
#: 0c319bcdd3b649569745572bb2944fec
|
||||
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
|
||||
#: 2c43e9f79276492c84248e35508188a9
|
||||
#: ebc6e35e9a6049be8bc66eb127adf882
|
||||
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
|
||||
#: ad13059a843e41ceb3d105e609722063
|
||||
#: 6a9ec2b8bf724122b5752c753bdaea7a
|
||||
msgid "OpenLDAP overlays integration"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:62
|
||||
#: 4574a3d570f04d96a49722ff77c2695a
|
||||
#: ce6daa0ac4974084990221c2806a5549
|
||||
msgid "Canaille can integrate with several OpenLDAP overlays:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:65
|
||||
#: 4dd1354faaac48559deae338b4f090b5
|
||||
#: 24a7dc4d61504545ac841910fbaca48b
|
||||
msgid "memberof / refint"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:67
|
||||
#: 0439ad64ecb844fdaa1737a3c9e473cc
|
||||
#: d24183e3349f42bfbbecde663f03f846
|
||||
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
|
||||
#: faa33ea8871f4e34ac2c64cc72fdf812
|
||||
#: 06709ee4d5f844568221f14c64b5c30b
|
||||
#: 65357e9c96e341128f9448507ce02f1b
|
||||
#: 692bdeebfc9c40999c9b09c8d9371e52
|
||||
msgid "Here is a configuration example compatible with canaille:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:73
|
||||
#: ebbf217acbd74c889aa84489628bae35
|
||||
#: 511312387435410987a190cf7b68f2ab
|
||||
msgid "memberof-config.ldif"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:77
|
||||
#: 6b433a46ef87490bbaba6472563969c4
|
||||
#: c95e78d9dde84102b1a97c2399430c23
|
||||
msgid "refint-config.ldif"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:81
|
||||
#: ../tutorial/databases.rst:104
|
||||
#: 861e354e7cfb47049661986cb4e35787
|
||||
#: b8ccf6ef78aa471ead32733e0381b055
|
||||
#: 2e0fddced7e949f8a66653530c8a120b
|
||||
#: 8686380cd79949259b48f68fe6c4d3b8
|
||||
msgid "You can adapt and load those configuration files with:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:90
|
||||
#: 3a182ba0d6784956b95eaf634a6fc06f
|
||||
#: af864ca7a8ef4d128d3fbe54749a944c
|
||||
msgid "ppolicy"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:92
|
||||
#: 83a2d62977b045ad8abe86ccc98759cb
|
||||
#: fc8d77f8ca4d48de9eba6c408a9f5fc2
|
||||
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
|
||||
#: 791a6d05f787498487e083e108ce34de
|
||||
#: 15e6cfdc691149efbbdc2f3834c7a3d0
|
||||
msgid "ppolicy-config.ldif"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/databases.rst:100
|
||||
#: 0f9d8b20ec7f4043b83d6312b1058939
|
||||
#: ef7f7bd8dd0445be8596864cb1b50fa5
|
||||
msgid "ppolicy.ldif"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,106 +17,106 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../tutorial/deployment.rst:2
|
||||
#: eeee7ba0fc3d44e7ad224ef2b2aad5d0
|
||||
#: a7ef8cd4696b4e53a1ffdb87fb18c375
|
||||
msgid "Deployment"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:5
|
||||
#: e9ce862abbc94cd280400ab2e3b54839
|
||||
#: 0f1f7c0caa8a4dfcb659c15bedda5aae
|
||||
msgid "Application service"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:7
|
||||
#: 433485ad5c09467dafdf34069fca8cf7
|
||||
#: b93527ef33ad4a65af273da09bb780f3
|
||||
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
|
||||
#: b95ad5bdf60a4fa38668de444a350143
|
||||
#: 1ffbe89a8ff744fc9686484ce526e541
|
||||
msgid "gunicorn"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:13
|
||||
#: 71031d675d424a039075b7010b6aecaa
|
||||
#: 418a0ab3603442f2b0a515962f003029
|
||||
msgid "Todo"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:15
|
||||
#: b4cd24e95f8649feb0bccc4077c530cc
|
||||
#: c40ad558fd584c01a6c564f8f72d12f3
|
||||
msgid "Write a gunicorn configuration sample file."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:18
|
||||
#: 1035487ff04444699065497aa5c27428
|
||||
#: ec3a0c7c05b74be6b1640ff6a4090aec
|
||||
msgid "uwsgi"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:42
|
||||
#: 99cd8ef482f84cbb9a924a9a3fef3f8f
|
||||
#: 5c4862bc3810432195a2e9a353f60b54
|
||||
msgid "Webserver"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:44
|
||||
#: 123b2a6d36ba426cb333611e82f4b49f
|
||||
#: 94e56452db9741f0a3eee45f672e73a8
|
||||
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
|
||||
#: a4206d1009c949e1aa406adc1e6f37a0
|
||||
#: 7c4ae615fbd44c3f8ab3ece2d0201ed7
|
||||
msgid "Nginx"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:114
|
||||
#: 15b5ad9ca9d3428f889b223b0ffb58c7
|
||||
#: ac66da9f7d1342bdad81dbdf97218b4e
|
||||
msgid "Apache"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:153
|
||||
#: fb75b2d60ce34f30a23ebcb46860c0b4
|
||||
#: ad13e4fdf804422facdde8b1b619e9a2
|
||||
msgid "Recurrent jobs"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:155
|
||||
#: 7f2c34b8393547c3ae17c156d98e0080
|
||||
#: b9ba07959e7f4d57846b44490735d913
|
||||
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
|
||||
#: 0189b125934b4accb96c2ac6431dda33
|
||||
#: 4a9929824eba46a883f1147dcdaa526e
|
||||
msgid "Webfinger"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:166
|
||||
#: 2fb122255bb94ea38ac3fe43bc6ee696
|
||||
#: cbd15001d4a043e5a0ec93a5eff80b9f
|
||||
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
|
||||
#: 2d0d75109fc0461282d6917878208cea
|
||||
#: e515d97f8d8248f98081746a9b723611
|
||||
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
|
||||
#: 82732f3561f44bba97416ecd74352d0e
|
||||
#: 3c7cb4cd4a2d498098fe4387a5ae3b2a
|
||||
msgid "Here are configuration examples for Nginx or Apache:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:172
|
||||
#: b9f6e24c2e3b4b3c8ba3e8a7c225d03c
|
||||
#: a11ff6002ffc46b7b401b29c222cb984
|
||||
msgid "Nginx webfinger configuration for a top level domain"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:181
|
||||
#: 6613fc5b59614b38b1a967034e5ba97e
|
||||
#: cc81b2ca58b842bab2583d46cd8ac1dc
|
||||
msgid "Apache webfinger configuration for a top level domain"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:191
|
||||
#: c8e3fbc8941d4a40861b215a2e7fb645
|
||||
#: b9b3713c6f724e5cb3cad50756e8211c
|
||||
msgid "Create the first user"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/deployment.rst:193
|
||||
#: c96af5c60d2b4472ac220cde78341607
|
||||
#: 02df7f55e6df4452ac60d899b5a98cc2
|
||||
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 ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,6 +17,6 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../tutorial/index.rst:2
|
||||
#: c7edcdeccf6f40c388fc80d827c09096
|
||||
#: 3deeb02f520e41b4a510d72bdd446046
|
||||
msgid "Tutorial"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,116 +17,116 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../tutorial/install.rst:2
|
||||
#: 3461075d4b16480d9daabb8d1d789005
|
||||
#: 36b529fead5242468a36bdbbbdd28544
|
||||
msgid "Installation"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:6
|
||||
#: 8def0eb60a6747fe917c611b88e4671b
|
||||
#: c717982f410e46a28e3f97a9a1096146
|
||||
msgid "Canaille is under heavy development and may not fit a production environment yet."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:8
|
||||
#: 1d89fce4c8e741b28fea91ad93806d31
|
||||
#: 6e7bc4fde5d74dceb03c1f03a95fa779
|
||||
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
|
||||
#: f36a9eed165f438199b75da27df7c168
|
||||
#: 25f53875201f4538b26df4d537d355ea
|
||||
msgid "Get the code"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:13
|
||||
#: ccb1d89539184e6ea49b201aeadd4ca0
|
||||
#: ac342d74e14244c4badfab8c1f829d94
|
||||
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
|
||||
#: bbce9cea800b4f43b5438ad52438b744
|
||||
#: 15d4a0b372c44934a05f1ed6eb327a87
|
||||
msgid "Extras"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:26
|
||||
#: 99d5dad5e3db42e188605845597aade5
|
||||
#: 6c563bb9847e4766a5c3d0d461a35c2f
|
||||
msgid "Canaille provides different package options:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:28
|
||||
#: 9f420ef948f842f580648d92b8df7905
|
||||
#: 65dbf1cc88e14dcda675a7a20f71477b
|
||||
msgid "`front` provides all the things needed to produce the user interface;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:29
|
||||
#: d8e6f9d5f7f44b66b1e8cba275ad5ee3
|
||||
#: 932751ee90ac445f8271d5f0bf062139
|
||||
msgid "`oidc` provides the dependencies to perform OAuth2/OIDC authentication;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:30
|
||||
#: 5c3be3c28af94a87bdbc7a45f64533a2
|
||||
#: 33ba6546cbf94064ab5290438b1120a8
|
||||
msgid "`ldap` provides the dependencies to enable the LDAP backend;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:31
|
||||
#: e33c8883f49846b1b821424dbf8f07e1
|
||||
#: e65f505181e448e58b1aa158e8af5d42
|
||||
msgid "`sqlite` provides the dependencies to enable the SQLite backend;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:32
|
||||
#: 38f9ec9aa2f842f5b1b7bdf330080037
|
||||
#: f3fa4d1a59674077b16bdc0e432f326e
|
||||
msgid "`postgresql` provides the dependencies to enable the PostgreSQL backend;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:33
|
||||
#: 9ca2ef4d86c54b3badef060b2973b9e4
|
||||
#: f914db4dca274ab9bc725faba6cc6e86
|
||||
msgid "`mysql` provides the dependencies to enable the MySQL backend;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:34
|
||||
#: f814e1792e0241558307dbccf11edbce
|
||||
#: 7dad7a35aea54e549ac3328577c8e3e1
|
||||
msgid "`sentry` provides sentry integration to watch Canaille exceptions;"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:35
|
||||
#: 116fca1cb69748238bc82a0f37310059
|
||||
#: 1cd7e38d50bd4f439e285c870a8b005c
|
||||
msgid "`all` provides all the extras above."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:37
|
||||
#: 48e42538a8604a87be1b3c65e21efd82
|
||||
#: cf6a1f2144114c7abfe4177c427d72f8
|
||||
msgid "They can be installed with:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:44
|
||||
#: 992c7266ab8a417bb15541cf159b1402
|
||||
#: 51d6f24a101c4511aa3d49db1914fa3a
|
||||
msgid "Configure"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:46
|
||||
#: 245524dcf0c84750b2e48712ce6f03e7
|
||||
#: 4efc51c21f274c449ecdd33dcc439625
|
||||
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
|
||||
#: bdf30558d57c43c5a47552341bb537e1
|
||||
#: 90dd73339c3e43f18395eb80d9749456
|
||||
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
|
||||
#: de2f194462264504aa4590443184e4c7
|
||||
#: 3ff3b9dbf5904b3dbb2494ee61825d15
|
||||
msgid "Install"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:59
|
||||
#: fe3a5ed380e14ea0bbc9d43035e4157a
|
||||
#: 56e161c2e2ed4ae7a7d55bcc024135a1
|
||||
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
|
||||
#: ca9856eb1ee74dc7830a408ed12fd806
|
||||
#: e4b60f64108549189d9627699af12a91
|
||||
msgid "Check"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/install.rst:70
|
||||
#: 976deff22c0c4ddb871dbe4b8c3f2fa4
|
||||
#: 1a9056c774724a0491bcb5060e8903f2
|
||||
msgid "After a manual installation, you can check your configuration file using the :ref:`check command <cli_install>`:"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: canaille 0.0.56\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-11-22 16:20+0100\n"
|
||||
"POT-Creation-Date: 2024-11-22 17:26+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -17,76 +17,76 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:2
|
||||
#: a7d8552e4975449789812d67b23b345f
|
||||
#: 8e2c5e7ea5f14416a11a2ec648a32593
|
||||
msgid "Troubleshooting"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:5
|
||||
#: 00bfa2fa35ff434fae80081ae567520b
|
||||
#: d1d6667b4caa4506a5be55cc7c4df22a
|
||||
msgid "The web interface throws useless error messages"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:7
|
||||
#: ec56d81e02e049808b5aa5d51d4b0c40
|
||||
#: a71c850aa84d41e99550cc54f23e5441
|
||||
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
|
||||
#: 6cd00bba302b4ac7a814318fff5f1d98
|
||||
#: cc846be11ca448ddb1c1913d1e41ccbf
|
||||
msgid "How to manually install LDAP schemas?"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:16
|
||||
#: 383bf19fef474ad0bfcd432537867b7d
|
||||
#: c9a20d92290541c0b5536e5cd150999d
|
||||
msgid "Schema installation can be automatically done using the :ref:`install command <cli_install>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:18
|
||||
#: cfce89f0ed5141699a0b428579e47d58
|
||||
#: 830b3a72844a44d386308540cc44f1e4
|
||||
msgid "As of OpenLDAP 2.4, two configuration methods are available:"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:20
|
||||
#: f025a0ef2a9042cc82640e1686ca12ff
|
||||
#: 02db4b758cfd40f7b64bfb79bea9f5c3
|
||||
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
|
||||
#: a096f639d51d4f6fb17bb854d6afd1d7
|
||||
#: 0b24de0faa944ae3b1af5c604a71098f
|
||||
msgid "The new one, based on a configuration directory (generally ``/etc/ldap/slapd.d``)."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:23
|
||||
#: 87e24d478fbd4509bf4651ad0be9726f
|
||||
#: 7acd99c26fd7480e8733523fbd29db13
|
||||
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
|
||||
#: e0948dcef218449b91b5908a0c030dc5
|
||||
#: 3917d45c79604f16ba0aca4887ff6dac
|
||||
msgid "Old fashion: Copy the schemas in your filesystem"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:35
|
||||
#: ff09602b1964432ca92439fcaab6c199
|
||||
#: 430b74fa77a94624bcae8606289222a3
|
||||
msgid "New fashion: Use slapadd to add the schemas"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:37
|
||||
#: 6b3246d97f7744b19c937e63c4e0c223
|
||||
#: 9fdc2c09b2dc44b3b5e45ed1271b3e7c
|
||||
msgid "Be careful to stop your ldap server before running ``slapadd``"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:46
|
||||
#: c5be7d8dd34e4f36a0a4fb76f00bea5f
|
||||
#: cc6bfd549bd541eead7a37af15a25aef
|
||||
msgid "How to manually generate the OIDC keypair?"
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:50
|
||||
#: d73bed635d4748789de6ede7f53cc73d
|
||||
#: 6dc2d317536b41ff839d98287a84f358
|
||||
msgid "The keypair generation can be automatically done using the :ref:`install command <cli_install>`."
|
||||
msgstr ""
|
||||
|
||||
#: ../tutorial/troubleshooting.rst:52
|
||||
#: 0b9b5fcf3a594f0baaddf334e7880455
|
||||
#: 31db4facc32b4691b3625065562ef5c3
|
||||
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 ""
|
||||
|
|
Loading…
Reference in a new issue