From d64db126084861fc7214f5eaf32fb7396b88f302 Mon Sep 17 00:00:00 2001 From: Alexander Bokovoy Date: Mon, 7 Feb 2022 08:47:25 +0200 Subject: [PATCH] translations: regenerate translations after changes in help message in sudorule A change to replace -h and -p options in OpenLDAP command line utilities causes also an update in the help text in sudorule plugin. This, sadly, makes existing translations of that text not valid anymore. However, we have to change the text as OpenLDAP 2.6+ will make the command referenced in the help text incorrect. The change in OpenLDAP 2.6+ implements deprecation that was announced by OpenLDAP project around 20 years ago, so all existing tools support -H option. See also: https://bugs.openldap.org/show_bug.cgi?id=8618 Related: https://pagure.io/freeipa/issue/9106 Signed-off-by: Alexander Bokovoy Reviewed-By: Florence Blanc-Renaud --- po/es.po | 150 +- po/fr.po | 14 +- po/ipa.pot | 19458 ++++++++++++++++++++++++++------------------------- po/ru.po | 394 +- po/si.po | 6 +- po/uk.po | 382 +- 6 files changed, 10205 insertions(+), 10199 deletions(-) diff --git a/po/es.po b/po/es.po index f78980e8a..f47629f97 100644 --- a/po/es.po +++ b/po/es.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: freeipa 4.9.0.dev201908140712+gitc9938e3d8\n" "Report-Msgid-Bugs-To: https://pagure.io/freeipa/new_issue\n" -"POT-Creation-Date: 2021-11-25 18:55+0100\n" +"POT-Creation-Date: 2022-02-07 08:35+0200\n" "PO-Revision-Date: 2021-04-26 19:02+0000\n" "Last-Translator: Emilio Herrera \n" "Language-Team: Spanish \n" "Language-Team: French\n" @@ -6098,15 +6098,15 @@ msgstr "" msgid "" "\n" "To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +"example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc," +"dc=example,dc=com\n" msgstr "" "\n" "Pour activer « binddn », exécuter la commande pour fixer le mot de passe :\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +"example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc," +"dc=example,dc=com\n" msgid "" "\n" diff --git a/po/ipa.pot b/po/ipa.pot index 2d86db811..5f8a6432b 100644 --- a/po/ipa.pot +++ b/po/ipa.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: freeipa 4.10.0.dev202111251755+git20f68d817\n" +"Project-Id-Version: freeipa 4.10.0.dev202202070628+git3c1f4ba99\n" "Report-Msgid-Bugs-To: https://pagure.io/freeipa/new_issue\n" -"POT-Creation-Date: 2021-11-25 18:55+0100\n" +"POT-Creation-Date: 2022-02-07 08:35+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,145 +18,6 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" -#: client/config.c:56 -#, c-format -msgid "cannot open configuration file %s\n" -msgstr "" - -#: client/config.c:63 -#, c-format -msgid "cannot stat() configuration file %s\n" -msgstr "" - -#: client/config.c:69 -#, c-format -msgid "out of memory\n" -msgstr "" - -#: client/config.c:80 -#, c-format -msgid "read error\n" -msgstr "" - -#: client/ipa-rmkeytab.c:51 -#, c-format -msgid "Unable to parse principal name\n" -msgstr "" - -#: client/ipa-rmkeytab.c:53 -#, c-format -msgid "krb5_parse_name %1$d: %2$s\n" -msgstr "" - -#: client/ipa-rmkeytab.c:63 -#, c-format -msgid "Removing principal %s\n" -msgstr "" - -#: client/ipa-rmkeytab.c:76 -#, c-format -msgid "Failed to open keytab\n" -msgstr "" - -#: client/ipa-rmkeytab.c:80 -#, c-format -msgid "principal not found\n" -msgstr "" - -#: client/ipa-rmkeytab.c:82 -#, c-format -msgid "krb5_kt_get_entry %1$d: %2$s\n" -msgstr "" - -#: client/ipa-rmkeytab.c:90 -#, c-format -msgid "Unable to remove entry\n" -msgstr "" - -#: client/ipa-rmkeytab.c:92 -#, c-format -msgid "kvno %d\n" -msgstr "" - -#: client/ipa-rmkeytab.c:93 -#, c-format -msgid "krb5_kt_remove_entry %1$d: %2$s\n" -msgstr "" - -#: client/ipa-rmkeytab.c:124 client/ipa-rmkeytab.c:146 -#: client/ipa-rmkeytab.c:160 client/ipa-rmkeytab.c:263 -#, c-format -msgid "Failed to set cursor '%1$s'\n" -msgstr "" - -#: client/ipa-rmkeytab.c:133 -#, c-format -msgid "Unable to parse principal\n" -msgstr "" - -#: client/ipa-rmkeytab.c:135 -#, c-format -msgid "krb5_unparse_name %1$d: %2$s\n" -msgstr "" - -#: client/ipa-rmkeytab.c:169 -#, c-format -msgid "realm not found\n" -msgstr "" - -#: client/ipa-rmkeytab.c:195 client/ipa-getkeytab.c:942 -msgid "Print debugging information" -msgstr "" - -#: client/ipa-rmkeytab.c:195 -msgid "Debugging output" -msgstr "" - -#: client/ipa-rmkeytab.c:197 -msgid "" -"The principal to remove from the keytab (ex: ftp/ftp.example.com@EXAMPLE.COM)" -msgstr "" - -#: client/ipa-rmkeytab.c:198 client/ipa-getkeytab.c:948 -msgid "Kerberos Service Principal Name" -msgstr "" - -#: client/ipa-rmkeytab.c:200 -msgid "The keytab file to remove the principcal(s) from" -msgstr "" - -#: client/ipa-rmkeytab.c:200 client/ipa-getkeytab.c:952 -msgid "Keytab File Name" -msgstr "" - -#: client/ipa-rmkeytab.c:202 -msgid "Remove all principals in this realm" -msgstr "" - -#: client/ipa-rmkeytab.c:202 ipaclient/remote_plugins/2_114/trust.py:111 -msgid "Realm name" -msgstr "" - -#: client/ipa-rmkeytab.c:216 client/ipa-getkeytab.c:1001 -#, c-format -msgid "Kerberos context initialization failed\n" -msgstr "" - -#: client/ipa-rmkeytab.c:256 -#, c-format -msgid "Failed to open keytab '%1$s': %2$s\n" -msgstr "" - -#: client/ipa-rmkeytab.c:279 -#, c-format -msgid "Closing keytab failed\n" -msgstr "" - -#: client/ipa-rmkeytab.c:281 -#, c-format -msgid "krb5_kt_close %1$d: %2$s\n" -msgstr "" - #: client/ipa-getkeytab.c:254 #, c-format msgid "Kerberos context initialization failed: %1$s (%2$d)\n" @@ -305,6 +166,10 @@ msgstr "" msgid "Output only on errors" msgstr "" +#: client/ipa-getkeytab.c:942 client/ipa-rmkeytab.c:195 +msgid "Print debugging information" +msgstr "" + #: client/ipa-getkeytab.c:942 msgid "Output debug info" msgstr "" @@ -321,12 +186,20 @@ msgstr "" msgid "The principal to get a keytab for (ex: ftp/ftp.example.com@EXAMPLE.COM)" msgstr "" +#: client/ipa-getkeytab.c:948 client/ipa-rmkeytab.c:198 +msgid "Kerberos Service Principal Name" +msgstr "" + #: client/ipa-getkeytab.c:950 msgid "" "The keytab file to append the new key to (will be created if it does not " "exist)." msgstr "" +#: client/ipa-getkeytab.c:952 client/ipa-rmkeytab.c:200 +msgid "Keytab File Name" +msgstr "" + #: client/ipa-getkeytab.c:954 msgid "Encryption types to request" msgstr "" @@ -395,6 +268,11 @@ msgstr "" msgid "Retrieve current keys without changing them" msgstr "" +#: client/ipa-getkeytab.c:1001 client/ipa-rmkeytab.c:216 +#, c-format +msgid "Kerberos context initialization failed\n" +msgstr "" + #: client/ipa-getkeytab.c:1014 util/ipa_krb5.c:892 #, c-format msgid "No system preferred enctypes ?!\n" @@ -544,14 +422,136 @@ msgstr "" msgid "Keytab successfully retrieved and stored in: %s\n" msgstr "" +#: client/config.c:56 +#, c-format +msgid "cannot open configuration file %s\n" +msgstr "" + +#: client/config.c:63 +#, c-format +msgid "cannot stat() configuration file %s\n" +msgstr "" + +#: client/config.c:69 +#, c-format +msgid "out of memory\n" +msgstr "" + +#: client/config.c:80 +#, c-format +msgid "read error\n" +msgstr "" + +#: client/ipa-rmkeytab.c:51 +#, c-format +msgid "Unable to parse principal name\n" +msgstr "" + +#: client/ipa-rmkeytab.c:53 +#, c-format +msgid "krb5_parse_name %1$d: %2$s\n" +msgstr "" + +#: client/ipa-rmkeytab.c:63 +#, c-format +msgid "Removing principal %s\n" +msgstr "" + +#: client/ipa-rmkeytab.c:76 +#, c-format +msgid "Failed to open keytab\n" +msgstr "" + +#: client/ipa-rmkeytab.c:80 +#, c-format +msgid "principal not found\n" +msgstr "" + +#: client/ipa-rmkeytab.c:82 +#, c-format +msgid "krb5_kt_get_entry %1$d: %2$s\n" +msgstr "" + +#: client/ipa-rmkeytab.c:90 +#, c-format +msgid "Unable to remove entry\n" +msgstr "" + +#: client/ipa-rmkeytab.c:92 +#, c-format +msgid "kvno %d\n" +msgstr "" + +#: client/ipa-rmkeytab.c:93 +#, c-format +msgid "krb5_kt_remove_entry %1$d: %2$s\n" +msgstr "" + +#: client/ipa-rmkeytab.c:124 client/ipa-rmkeytab.c:146 +#: client/ipa-rmkeytab.c:160 client/ipa-rmkeytab.c:263 +#, c-format +msgid "Failed to set cursor '%1$s'\n" +msgstr "" + +#: client/ipa-rmkeytab.c:133 +#, c-format +msgid "Unable to parse principal\n" +msgstr "" + +#: client/ipa-rmkeytab.c:135 +#, c-format +msgid "krb5_unparse_name %1$d: %2$s\n" +msgstr "" + +#: client/ipa-rmkeytab.c:169 +#, c-format +msgid "realm not found\n" +msgstr "" + +#: client/ipa-rmkeytab.c:195 +msgid "Debugging output" +msgstr "" + +#: client/ipa-rmkeytab.c:197 +msgid "" +"The principal to remove from the keytab (ex: ftp/ftp.example.com@EXAMPLE.COM)" +msgstr "" + +#: client/ipa-rmkeytab.c:200 +msgid "The keytab file to remove the principcal(s) from" +msgstr "" + +#: client/ipa-rmkeytab.c:202 +msgid "Remove all principals in this realm" +msgstr "" + +#: client/ipa-rmkeytab.c:202 ipaclient/remote_plugins/2_114/trust.py:111 +msgid "Realm name" +msgstr "" + +#: client/ipa-rmkeytab.c:256 +#, c-format +msgid "Failed to open keytab '%1$s': %2$s\n" +msgstr "" + +#: client/ipa-rmkeytab.c:279 +#, c-format +msgid "Closing keytab failed\n" +msgstr "" + +#: client/ipa-rmkeytab.c:281 +#, c-format +msgid "krb5_kt_close %1$d: %2$s\n" +msgstr "" + #: client/ipa-join.c:66 client/ipa-join.c:422 client/ipa-join.c:440 -#: client/ipa-join.c:540 client/ipa-join.c:1089 util/ipa_krb5.c:1024 +#: client/ipa-join.c:540 client/ipa-join.c:1080 util/ipa_krb5.c:1024 #: util/ipa_krb5.c:1058 #, c-format msgid "Out of memory!\n" msgstr "" -#: client/ipa-join.c:81 client/ipa-join.c:826 +#: client/ipa-join.c:81 client/ipa-join.c:823 #, c-format msgid "No permission to join this host to the IPA domain.\n" msgstr "" @@ -611,7 +611,7 @@ msgstr "" msgid "principal not found in XML-RPC response\n" msgstr "" -#: client/ipa-join.c:610 client/ipa-join.c:964 +#: client/ipa-join.c:610 client/ipa-join.c:957 #, c-format msgid "Host is already joined.\n" msgstr "" @@ -641,847 +641,224 @@ msgstr "" msgid "curl_easy_init() failed\n" msgstr "" -#: client/ipa-join.c:747 +#: client/ipa-join.c:746 #, c-format msgid "json_dumps() failed\n" msgstr "" -#: client/ipa-join.c:755 +#: client/ipa-join.c:754 #, c-format msgid "" "JSON-RPC request:\n" "%s\n" msgstr "" -#: client/ipa-join.c:762 +#: client/ipa-join.c:760 #, c-format msgid "JSON-RPC call failed: %s\n" msgstr "" -#: client/ipa-join.c:773 +#: client/ipa-join.c:770 #, c-format msgid "JSON-RPC call failed with status code: %li\n" msgstr "" -#: client/ipa-join.c:776 +#: client/ipa-join.c:773 #, c-format msgid "JSON-RPC call was unauthorized. Check your credentials.\n" msgstr "" -#: client/ipa-join.c:783 +#: client/ipa-join.c:780 #, c-format msgid "" "JSON-RPC response:\n" "%s\n" msgstr "" -#: client/ipa-join.c:818 +#: client/ipa-join.c:815 #, c-format msgid "Extracting the error from the JSON-RPC response failed: %s\n" msgstr "" -#: client/ipa-join.c:852 +#: client/ipa-join.c:848 #, c-format msgid "Parsing JSON-RPC response failed: %s\n" msgstr "" -#: client/ipa-join.c:868 +#: client/ipa-join.c:863 #, c-format msgid "Parsing JSON-RPC response failed: no 'result' value found.\n" msgstr "" -#: client/ipa-join.c:901 client/ipa-join.c:994 +#: client/ipa-join.c:895 client/ipa-join.c:986 #, c-format msgid "Extracting the data from the JSON-RPC response failed: %s\n" msgstr "" -#: client/ipa-join.c:945 client/ipa-join.c:1025 +#: client/ipa-join.c:938 client/ipa-join.c:1016 #, c-format msgid "json_pack_ex() failed: %s\n" msgstr "" -#: client/ipa-join.c:1041 client/ipa-join.c:1120 +#: client/ipa-join.c:1032 client/ipa-join.c:1111 #, c-format msgid "Unenrollment successful.\n" msgstr "" -#: client/ipa-join.c:1044 client/ipa-join.c:1123 +#: client/ipa-join.c:1035 client/ipa-join.c:1114 #, c-format msgid "Unenrollment failed.\n" msgstr "" -#: client/ipa-join.c:1128 +#: client/ipa-join.c:1119 #, c-format msgid "result not found in XML-RPC response\n" msgstr "" -#: client/ipa-join.c:1170 client/ipa-join.c:1310 +#: client/ipa-join.c:1161 client/ipa-join.c:1301 #, c-format msgid "Unable to determine IPA server from %s\n" msgstr "" -#: client/ipa-join.c:1182 client/ipa-join.c:1320 +#: client/ipa-join.c:1173 client/ipa-join.c:1311 #, c-format msgid "Unable to join host: Kerberos context initialization failed\n" msgstr "" -#: client/ipa-join.c:1189 +#: client/ipa-join.c:1180 #, c-format msgid "Unable to join host: Kerberos Credential Cache not found\n" msgstr "" -#: client/ipa-join.c:1197 +#: client/ipa-join.c:1188 #, c-format msgid "" "Unable to join host: Kerberos User Principal not found and host password not " "provided.\n" msgstr "" -#: client/ipa-join.c:1216 +#: client/ipa-join.c:1207 #, c-format msgid "fork() failed\n" msgstr "" -#: client/ipa-join.c:1245 +#: client/ipa-join.c:1236 #, c-format msgid "ipa-getkeytab not found\n" msgstr "" -#: client/ipa-join.c:1248 +#: client/ipa-join.c:1239 #, c-format msgid "ipa-getkeytab has bad permissions?\n" msgstr "" -#: client/ipa-join.c:1251 +#: client/ipa-join.c:1242 #, c-format msgid "executing ipa-getkeytab failed, errno %d\n" msgstr "" -#: client/ipa-join.c:1263 +#: client/ipa-join.c:1254 #, c-format msgid "child exited with %d\n" msgstr "" -#: client/ipa-join.c:1329 +#: client/ipa-join.c:1320 #, c-format msgid "Error resolving keytab: %s.\n" msgstr "" -#: client/ipa-join.c:1338 +#: client/ipa-join.c:1329 #, c-format msgid "Error getting default Kerberos realm: %s.\n" msgstr "" -#: client/ipa-join.c:1349 +#: client/ipa-join.c:1340 #, c-format msgid "Error parsing \"%1$s\": %2$s.\n" msgstr "" -#: client/ipa-join.c:1368 +#: client/ipa-join.c:1359 #, c-format msgid "Error obtaining initial credentials: %s.\n" msgstr "" -#: client/ipa-join.c:1380 client/ipa-join.c:1388 +#: client/ipa-join.c:1371 client/ipa-join.c:1379 #, c-format msgid "Unable to generate Kerberos Credential Cache\n" msgstr "" -#: client/ipa-join.c:1397 +#: client/ipa-join.c:1388 #, c-format msgid "Error storing creds in credential cache: %s.\n" msgstr "" -#: client/ipa-join.c:1453 +#: client/ipa-join.c:1444 msgid "Print the raw XML-RPC output in GSSAPI mode" msgstr "" -#: client/ipa-join.c:1455 +#: client/ipa-join.c:1446 msgid "Quiet mode. Only errors are displayed." msgstr "" -#: client/ipa-join.c:1457 +#: client/ipa-join.c:1448 msgid "Unenroll this host from IPA server" msgstr "" -#: client/ipa-join.c:1459 +#: client/ipa-join.c:1450 msgid "Hostname of this server" msgstr "" -#: client/ipa-join.c:1459 client/ipa-join.c:1461 +#: client/ipa-join.c:1450 client/ipa-join.c:1452 msgid "hostname" msgstr "" -#: client/ipa-join.c:1461 +#: client/ipa-join.c:1452 msgid "IPA Server to use" msgstr "" -#: client/ipa-join.c:1463 +#: client/ipa-join.c:1454 msgid "Specifies where to store keytab information." msgstr "" -#: client/ipa-join.c:1463 +#: client/ipa-join.c:1454 msgid "filename" msgstr "" -#: client/ipa-join.c:1465 +#: client/ipa-join.c:1456 msgid "Force the host join. Rejoin even if already joined." msgstr "" -#: client/ipa-join.c:1467 +#: client/ipa-join.c:1458 msgid "LDAP password (if not using Kerberos)" msgstr "" -#: client/ipa-join.c:1467 +#: client/ipa-join.c:1458 msgid "password" msgstr "" -#: client/ipa-join.c:1469 +#: client/ipa-join.c:1460 msgid "LDAP basedn" msgstr "" -#: client/ipa-join.c:1469 +#: client/ipa-join.c:1460 msgid "basedn" msgstr "" -#: client/ipa-join.c:1503 +#: client/ipa-join.c:1494 #, c-format msgid "Cannot get host's FQDN!\n" msgstr "" -#: client/ipa-join.c:1509 +#: client/ipa-join.c:1500 #, c-format msgid "The hostname must be fully-qualified: %s\n" msgstr "" -#: client/ipa-join.c:1515 +#: client/ipa-join.c:1506 #, c-format msgid "The hostname must not be: %s\n" msgstr "" -#: ipaclient/frontend.py:28 ipaclient/frontend.py:90 -#: ipaserver/plugins/baseldap.py:53 -msgid "Failed members" -msgstr "" - -#: ipaclient/frontend.py:32 ipaserver/plugins/baseldap.py:176 -msgid "Failed source hosts/hostgroups" -msgstr "" - -#: ipaclient/frontend.py:36 ipaserver/plugins/baseldap.py:179 -msgid "Failed hosts/hostgroups" -msgstr "" - -#: ipaclient/frontend.py:40 ipaserver/plugins/baseldap.py:182 -msgid "Failed users/groups" -msgstr "" - -#: ipaclient/frontend.py:44 ipaserver/plugins/baseldap.py:185 -msgid "Failed service/service groups" -msgstr "" - -#: ipaclient/frontend.py:48 ipaserver/plugins/baseldap.py:188 -msgid "Failed to remove" -msgstr "" - -#: ipaclient/frontend.py:53 ipaserver/plugins/baseldap.py:192 -msgid "Failed RunAs" -msgstr "" - -#: ipaclient/frontend.py:57 ipaserver/plugins/baseldap.py:195 -msgid "Failed RunAsGroup" -msgstr "" - -#: ipaclient/frontend.py:62 ipaserver/plugins/caacl.py:473 -msgid "Failed profiles" -msgstr "" - -#: ipaclient/frontend.py:66 ipaserver/plugins/caacl.py:476 -msgid "Failed CAs" -msgstr "" - -#: ipaclient/frontend.py:71 ipaserver/plugins/group.py:183 -#: ipaserver/plugins/hostgroup.py:95 -msgid "Failed member manager" -msgstr "" - -#: ipaclient/frontend.py:76 ipaserver/plugins/host.py:209 -msgid "Failed managedby" -msgstr "" - -#: ipaclient/frontend.py:81 ipaserver/plugins/host.py:236 -#: ipaserver/plugins/service.py:158 -msgid "Failed allowed to retrieve keytab" -msgstr "" - -#: ipaclient/frontend.py:85 ipaserver/plugins/host.py:239 -#: ipaserver/plugins/service.py:161 -msgid "Failed allowed to create keytab" -msgstr "" - -#: ipaclient/frontend.py:94 -msgid "Failed targets" -msgstr "" - -#: ipaclient/frontend.py:99 ipaclient/remote_plugins/2_156/vault.py:223 -#: ipaserver/plugins/vault.py:637 -msgid "Failed owners" -msgstr "" - -#: ipaclient/plugins/automember.py:33 ipaserver/plugins/automember.py:342 -msgid "Failed to add" -msgstr "" - -#: ipaclient/plugins/automount.py:101 -msgid "maps not connected to /etc/auto.master:" -msgstr "" - -#: ipaclient/plugins/automount.py:120 -msgid "Import automount files for a specific location." -msgstr "" - -#: ipaclient/plugins/automount.py:124 -msgid "Master file" -msgstr "" - -#: ipaclient/plugins/automount.py:125 -msgid "Automount master file." -msgstr "" - -#: ipaclient/plugins/automount.py:132 -msgid "" -"Continuous operation mode. Errors are reported but the process continues." -msgstr "" - -#: ipaclient/plugins/automount.py:150 -#, python-format -msgid "File %(file)s not found" -msgstr "" - -#: ipaclient/plugins/automount.py:200 -#, python-format -msgid "key %(key)s already exists" -msgstr "" - -#: ipaclient/plugins/automount.py:215 -#, python-format -msgid "map %(map)s already exists" -msgstr "" - -#: ipaclient/plugins/automount.py:264 -msgid "Imported maps:" -msgstr "" - -#: ipaclient/plugins/automount.py:267 -#, python-format -msgid "Added %(map)s" -msgstr "" - -#: ipaclient/plugins/automount.py:271 -msgid "Imported keys:" -msgstr "" - -#: ipaclient/plugins/automount.py:274 -#, python-format -msgid "Added %(src)s to %(dst)s" -msgstr "" - -#: ipaclient/plugins/automount.py:281 -msgid "Ignored keys:" -msgstr "" - -#: ipaclient/plugins/automount.py:284 -#, python-format -msgid "Ignored %(src)s to %(dst)s" -msgstr "" - -#: ipaclient/plugins/automount.py:292 -msgid "Duplicate maps skipped:" -msgstr "" - -#: ipaclient/plugins/automount.py:295 -#, python-format -msgid "Skipped %(map)s" -msgstr "" - -#: ipaclient/plugins/automount.py:301 -msgid "Duplicate keys skipped:" -msgstr "" - -#: ipaclient/plugins/automount.py:304 -#, python-format -msgid "Skipped %(key)s" -msgstr "" - -#: ipaclient/plugins/ca.py:19 ipaclient/plugins/cert.py:39 -msgid "Write certificate (chain if --chain used) to file" -msgstr "" - -#: ipaclient/plugins/cert.py:107 -msgid "Unrevoked" -msgstr "" - -#: ipaclient/plugins/cert.py:110 ipaserver/plugins/internal.py:293 -msgid "Error" -msgstr "" - -#: ipaclient/plugins/cert.py:120 -msgid "Input filename" -msgstr "" - -#: ipaclient/plugins/cert.py:121 -msgid "File to load the certificate from." -msgstr "" - -#: ipaclient/plugins/cert.py:130 ipaclient/plugins/certmap.py:41 -msgid "cannot specify both raw certificate and file" -msgstr "" - -#: ipaclient/plugins/certmap.py:19 -msgid "Input file" -msgstr "" - -#: ipaclient/plugins/certmap.py:20 -msgid "File to load the certificate from" -msgstr "" - -#: ipaclient/plugins/certprofile.py:25 -#, python-format -msgid "Profile configuration stored in file '%(file)s'" -msgstr "" - -#: ipaclient/plugins/dns.py:137 ipaserver/plugins/dns.py:3576 -msgid "Split DNS record to parts" -msgstr "" - -#: ipaclient/plugins/dns.py:237 -msgid "Please choose a type of DNS resource record to be added" -msgstr "" - -#: ipaclient/plugins/dns.py:238 -#, python-format -msgid "The most common types for this type of zone are: %s\n" -msgstr "" - -#: ipaclient/plugins/dns.py:243 -msgid "DNS resource record type" -msgstr "" - -#: ipaclient/plugins/dns.py:261 -#, python-format -msgid "Invalid or unsupported type. Allowed values are: %s" -msgstr "" - -#: ipaclient/plugins/dns.py:286 -msgid "No option to modify specific record provided." -msgstr "" - -#: ipaclient/plugins/dns.py:289 ipaclient/plugins/dns.py:355 -msgid "Current DNS record contents:\n" -msgstr "" - -#: ipaclient/plugins/dns.py:312 -#, python-format -msgid "Modify %(name)s '%(value)s'?" -msgstr "" - -#: ipaclient/plugins/dns.py:321 -#, python-format -msgid "" -"%(count)d %(type)s record skipped. Only one value per DNS record type can be " -"modified at one time." -msgid_plural "" -"%(count)d %(type)s records skipped. Only one value per DNS record type can " -"be modified at one time." -msgstr[0] "" -msgstr[1] "" - -#: ipaclient/plugins/dns.py:329 ipaserver/plugins/dns.py:3876 -msgid "" -"Neither --del-all nor options to delete a specific record provided.\n" -"Command help may be consulted for all supported record types." -msgstr "" - -#: ipaclient/plugins/dns.py:347 -msgid "No option to delete specific record provided." -msgstr "" - -#: ipaclient/plugins/dns.py:348 -msgid "Delete all?" -msgstr "" - -#: ipaclient/plugins/dns.py:376 -#, python-format -msgid "Delete %(name)s '%(value)s'?" -msgstr "" - -#: ipaclient/plugins/dns.py:392 ipaclient/plugins/dns.py:409 -#: ipaclient/plugins/dns.py:421 -msgid "Server will check DNS forwarder(s)." -msgstr "" - -#: ipaclient/plugins/dns.py:394 ipaclient/plugins/dns.py:411 -#: ipaclient/plugins/dns.py:423 -msgid "This may take some time, please wait ..." -msgstr "" - -#: ipaclient/plugins/dns.py:403 -msgid "DNS forwarder" -msgstr "" - -#: ipaclient/plugins/dns.py:434 -msgid "file to store DNS records in nsupdate format" -msgstr "" - -#: ipaclient/plugins/host.py:41 ipaclient/plugins/service.py:43 -#: ipaclient/plugins/user.py:74 -#, python-format -msgid "Certificate(s) stored in file '%(file)s'" -msgstr "" - -#: ipaclient/plugins/location.py:23 -msgid "Servers details:" -msgstr "" - -#: ipaclient/plugins/migration.py:37 -msgid "" -"Migration mode is disabled.\n" -"Use 'ipa config-mod --enable-migration=TRUE' to enable it." -msgstr "" - -#: ipaclient/plugins/migration.py:41 -msgid "" -"Passwords have been migrated in pre-hashed format.\n" -"IPA is unable to generate Kerberos keys unless provided\n" -"with clear text passwords. All migrated users need to\n" -"login at https://your.domain/ipa/migration/ before they\n" -"can use their Kerberos accounts." -msgstr "" - -#: ipaclient/plugins/otptoken.py:66 -msgid "" -"Unable to display QR code using the configured output encoding. Please use " -"the token URI to configure your OTP device" -msgstr "" - -#: ipaclient/plugins/otptoken.py:82 -msgid "" -"QR code width is greater than that of the output tty. Please resize your " -"terminal." -msgstr "" - -#: ipaclient/plugins/otptoken.py:137 -msgid "Synchronize an OTP token." -msgstr "" - -#: ipaclient/plugins/otptoken.py:142 -msgid "User ID" -msgstr "" - -#: ipaclient/plugins/otptoken.py:143 ipaclient/remote_plugins/2_114/host.py:187 -#: ipaserver/plugins/baseuser.py:279 ipaserver/plugins/internal.py:190 -#: ipaserver/plugins/internal.py:408 ipaserver/plugins/internal.py:1714 -#: ipaserver/plugins/migration.py:534 -msgid "Password" -msgstr "" - -#: ipaclient/plugins/otptoken.py:144 -msgid "First Code" -msgstr "" - -#: ipaclient/plugins/otptoken.py:145 -msgid "Second Code" -msgstr "" - -#: ipaclient/plugins/otptoken.py:149 ipaserver/plugins/internal.py:1724 -msgid "Token ID" -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:35 -msgid "python-yubico is not installed." -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:40 -msgid "" -"\n" -"YubiKey Tokens\n" -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:42 -msgid "" -"\n" -"Manage YubiKey tokens.\n" -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:44 -msgid "" -"\n" -"This code is an extension to the otptoken plugin and provides support for\n" -"reading/writing YubiKey tokens directly.\n" -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:47 ipaserver/plugins/automember.py:63 -#: ipaserver/plugins/ca.py:35 ipaserver/plugins/cert.py:99 -#: ipaserver/plugins/certmap.py:60 ipaserver/plugins/dnsserver.py:39 -#: ipaserver/plugins/host.py:104 ipaserver/plugins/location.py:37 -#: ipaserver/plugins/otptoken.py:49 ipaserver/plugins/permission.py:97 -#: ipaserver/plugins/radiusproxy.py:43 ipaserver/plugins/schema.py:28 -#: ipaserver/plugins/serverrole.py:19 ipaserver/plugins/vault.py:90 -#: ipaserver/plugins/server.py:40 ipaserver/plugins/sudorule.py:76 -msgid "" -"\n" -"EXAMPLES:\n" -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:49 -msgid "" -"\n" -" Add a new token:\n" -" ipa otptoken-add-yubikey --owner=jdoe --desc=\"My YubiKey\"\n" -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:72 -msgid "Add a new YubiKey OTP token." -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:77 -msgid "YubiKey slot" -msgstr "" - -#: ipaclient/plugins/otptoken_yubikey.py:146 -msgid "No free YubiKey slot!" -msgstr "" - -#: ipaclient/plugins/server.py:20 -#, python-format -msgid "Removing %(servers)s from replication topology, please wait..." -msgstr "" - -#: ipaclient/plugins/topology.py:25 -#, python-format -msgid "Replication topology of suffix \"%(suffix)s\" is in order." -msgstr "" - -#: ipaclient/plugins/topology.py:30 -#, python-format -msgid "Replication topology of suffix \"%(suffix)s\" contains errors." -msgstr "" - -#: ipaclient/plugins/topology.py:33 -msgid "Topology is disconnected" -msgstr "" - -#: ipaclient/plugins/topology.py:35 -#, python-format -msgid "Server %(srv)s can't contact servers: %(replicas)s" -msgstr "" - -#: ipaclient/plugins/topology.py:40 -msgid "Recommended maximum number of agreements per replica exceeded" -msgstr "" - -#: ipaclient/plugins/topology.py:43 -msgid "Maximum number of agreements per replica" -msgstr "" - -#: ipaclient/plugins/topology.py:47 -#, python-format -msgid "Server \"%(srv)s\" has %(n)d agreements with servers:" -msgstr "" - -#: ipaclient/plugins/user.py:40 -msgid "Delete a user, keeping the entry available for future use" -msgstr "" - -#: ipaclient/plugins/user.py:45 -msgid "Delete a user" -msgstr "" - -#: ipaclient/plugins/user.py:54 -msgid "preserve and no-preserve cannot be both set" -msgstr "" - -#: ipaclient/plugins/vault.py:67 ipaclient/plugins/vault.py:833 -#, python-format -msgid "Cannot read file '%(filename)s': %(exc)s" -msgstr "" - -#: ipaclient/plugins/vault.py:74 -#, python-format -msgid "Cannot decode file '%(filename)s': %(exc)s" -msgstr "" - -#: ipaclient/plugins/vault.py:144 ipaclient/plugins/vault.py:163 -#: ipaserver/plugins/passwd.py:149 -msgid "Invalid credentials" -msgstr "" - -#: ipaclient/plugins/vault.py:181 -msgid "Create a new vault." -msgstr "" - -#: ipaclient/plugins/vault.py:187 ipaclient/plugins/vault.py:728 -#: ipaclient/plugins/vault.py:961 -msgid "Vault password" -msgstr "" - -#: ipaclient/plugins/vault.py:192 ipaclient/plugins/vault.py:733 -#: ipaclient/plugins/vault.py:966 -msgid "File containing the vault password" -msgstr "" - -#: ipaclient/plugins/vault.py:197 -msgid "File containing the vault public key" -msgstr "" - -#: ipaclient/plugins/vault.py:257 -msgid "Password can be specified only for symmetric vault" -msgstr "" - -#: ipaclient/plugins/vault.py:263 -msgid "Public key can be specified only for asymmetric vault" -msgstr "" - -#: ipaclient/plugins/vault.py:283 ipaclient/plugins/vault.py:866 -#: ipaclient/plugins/vault.py:1094 -msgid "Password specified multiple times" -msgstr "" - -#: ipaclient/plugins/vault.py:306 -msgid "Public key specified multiple times" -msgstr "" - -#: ipaclient/plugins/vault.py:322 -msgid "Missing vault public key" -msgstr "" - -#: ipaclient/plugins/vault.py:334 -#, python-format -msgid "Invalid or unsupported vault public key: %s" -msgstr "" - -#: ipaclient/plugins/vault.py:368 ipaserver/plugins/vault.py:921 -msgid "Modify a vault." -msgstr "" - -#: ipaclient/plugins/vault.py:373 ipaserver/plugins/internal.py:1731 -msgid "Change password" -msgstr "" - -#: ipaclient/plugins/vault.py:378 -msgid "Old vault password" -msgstr "" - -#: ipaclient/plugins/vault.py:383 -msgid "File containing the old vault password" -msgstr "" - -#: ipaclient/plugins/vault.py:388 -msgid "New vault password" -msgstr "" - -#: ipaclient/plugins/vault.py:393 -msgid "File containing the new vault password" -msgstr "" - -#: ipaclient/plugins/vault.py:398 -msgid "Old vault private key" -msgstr "" - -#: ipaclient/plugins/vault.py:403 -msgid "File containing the old vault private key" -msgstr "" - -#: ipaclient/plugins/vault.py:408 -msgid "File containing the new vault public key" -msgstr "" - -#: ipaclient/plugins/vault.py:514 -msgid "New public key specified multiple times" -msgstr "" - -#: ipaclient/plugins/vault.py:527 -msgid "Missing new vault public key" -msgstr "" - -#: ipaclient/plugins/vault.py:714 ipaserver/plugins/vault.py:1017 -msgid "Archive data into a vault." -msgstr "" - -#: ipaclient/plugins/vault.py:719 -msgid "Binary data to archive" -msgstr "" - -#: ipaclient/plugins/vault.py:723 -msgid "File containing data to archive" -msgstr "" - -#: ipaclient/plugins/vault.py:737 -msgid "Override existing password" -msgstr "" - -#: ipaclient/plugins/vault.py:819 -msgid "Input data specified multiple times" -msgstr "" - -#: ipaclient/plugins/vault.py:824 ipaclient/plugins/vault.py:837 -#, python-format -msgid "" -"Size of data exceeds the limit. Current vault data size limit is %(limit)d B" -msgstr "" - -#: ipaclient/plugins/vault.py:920 ipaclient/plugins/vault.py:1144 -msgid "Invalid vault type" -msgstr "" - -#: ipaclient/plugins/vault.py:951 -msgid "Retrieve a data from a vault." -msgstr "" - -#: ipaclient/plugins/vault.py:956 -msgid "File to store retrieved data" -msgstr "" - -#: ipaclient/plugins/vault.py:971 -msgid "Vault private key" -msgstr "" - -#: ipaclient/plugins/vault.py:976 -msgid "File containing the vault private key" -msgstr "" - -#: ipaclient/plugins/vault.py:983 ipaserver/plugins/internal.py:757 -msgid "Data" -msgstr "" - -#: ipaclient/plugins/vault.py:1120 -msgid "Private key specified multiple times" -msgstr "" - -#: ipaclient/plugins/vault.py:1133 -msgid "Missing vault private key" -msgstr "" - -#: ipaclient/plugins/sudorule.py:30 -#, python-format -msgid "Enabled Sudo Rule \"%s\"" -msgstr "" - -#: ipaclient/plugins/sudorule.py:36 -#, python-format -msgid "Disabled Sudo Rule \"%s\"" -msgstr "" - -#: ipaclient/plugins/sudorule.py:44 -#, python-format -msgid "Added option \"%(option)s\" to Sudo Rule \"%(rule)s\"" -msgstr "" - -#: ipaclient/plugins/sudorule.py:57 -#, python-format -msgid "Removed option \"%(option)s\" from Sudo Rule \"%(rule)s\"" -msgstr "" - msgid "" "\n" "Directory Server Access Control Instructions (ACIs)\n" @@ -1613,17 +990,17 @@ msgstr "" msgid "Permission ACI grants access to" msgstr "" -#: ipaserver/plugins/delegation.py:97 +#: ipaserver/plugins/delegation.py:97 ipaserver/plugins/aci.py:457 msgid "User group" msgstr "" -#: ipaserver/plugins/delegation.py:98 +#: ipaserver/plugins/delegation.py:98 ipaserver/plugins/aci.py:458 msgid "User group ACI grants access to" msgstr "" -#: ipaserver/plugins/aci.py:463 ipaserver/plugins/baseldap.py:74 -#: ipaserver/plugins/delegation.py:81 ipaserver/plugins/permission.py:230 -#: ipaserver/plugins/selfservice.py:84 +#: ipaserver/plugins/delegation.py:81 ipaserver/plugins/aci.py:463 +#: ipaserver/plugins/permission.py:230 ipaserver/plugins/selfservice.py:84 +#: ipaserver/plugins/baseldap.py:74 msgid "Permissions" msgstr "" @@ -1633,12 +1010,12 @@ msgstr "" msgid "Attributes to which the permission applies" msgstr "" -#: ipaserver/plugins/aci.py:472 ipaserver/plugins/delegation.py:86 +#: ipaserver/plugins/delegation.py:86 ipaserver/plugins/aci.py:472 #: ipaserver/plugins/selfservice.py:89 msgid "Attributes" msgstr "" -#: ipaserver/plugins/otptoken.py:165 ipaserver/plugins/permission.py:346 +#: ipaserver/plugins/permission.py:346 ipaserver/plugins/otptoken.py:165 #: ipaserver/plugins/schema.py:448 ipaserver/plugins/vault.py:600 msgid "Type" msgstr "" @@ -1739,7 +1116,7 @@ msgstr "" msgid "A string searched in all relevant object attributes" msgstr "" -#: ipaserver/plugins/cert.py:1569 ipaserver/plugins/schema.py:121 +#: ipaserver/plugins/schema.py:121 ipaserver/plugins/baseldap.py:1956 msgid "Primary key only" msgstr "" @@ -1767,288 +1144,6 @@ msgstr "" msgid "Location of the ACI" msgstr "" -msgid "" -"\n" -"Auto Membership Rule.\n" -"\n" -"Bring clarity to the membership of hosts and users by configuring inclusive\n" -"or exclusive regex patterns, you can automatically assign a new entries " -"into\n" -"a group or hostgroup based upon attribute information.\n" -"\n" -"A rule is directly associated with a group by name, so you cannot create\n" -"a rule without an accompanying group or hostgroup.\n" -"\n" -"A condition is a regular expression used by 389-ds to match a new incoming\n" -"entry with an automember rule. If it matches an inclusive rule then the\n" -"entry is added to the appropriate group or hostgroup.\n" -"\n" -"A default group or hostgroup could be specified for entries that do not\n" -"match any rule. In case of user entries this group will be a fallback group\n" -"because all users are by default members of group specified in IPA config.\n" -"\n" -"The automember-rebuild command can be used to retroactively run automember " -"rules\n" -"against existing entries, thus rebuilding their membership.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add the initial group or hostgroup:\n" -" ipa hostgroup-add --desc=\"Web Servers\" webservers\n" -" ipa group-add --desc=\"Developers\" devel\n" -"\n" -" Add the initial rule:\n" -" ipa automember-add --type=hostgroup webservers\n" -" ipa automember-add --type=group devel\n" -"\n" -" Add a condition to the rule:\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" -" ipa automember-add-condition --key=manager --type=group --inclusive-" -"regex=^uid=mscott devel\n" -"\n" -" Add an exclusive condition to the rule to prevent auto assignment:\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" -"regex=^web5\\.example\\.com webservers\n" -"\n" -" Add a host:\n" -" ipa host-add web1.example.com\n" -"\n" -" Add a user:\n" -" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" -"\n" -" Verify automembership:\n" -" ipa hostgroup-show webservers\n" -" Host-group: webservers\n" -" Description: Web Servers\n" -" Member hosts: web1.example.com\n" -"\n" -" ipa group-show devel\n" -" Group name: devel\n" -" Description: Developers\n" -" GID: 1004200000\n" -" Member users: tuser\n" -"\n" -" Remove a condition from the rule:\n" -" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" -"\n" -" Modify the automember rule:\n" -" ipa automember-mod\n" -"\n" -" Set the default (fallback) target group:\n" -" ipa automember-default-group-set --default-group=webservers --" -"type=hostgroup\n" -" ipa automember-default-group-set --default-group=ipausers --type=group\n" -"\n" -" Remove the default (fallback) target group:\n" -" ipa automember-default-group-remove --type=hostgroup\n" -" ipa automember-default-group-remove --type=group\n" -"\n" -" Show the default (fallback) target group:\n" -" ipa automember-default-group-show --type=hostgroup\n" -" ipa automember-default-group-show --type=group\n" -"\n" -" Find all of the automember rules:\n" -" ipa automember-find\n" -"\n" -" Display a automember rule:\n" -" ipa automember-show --type=hostgroup webservers\n" -" ipa automember-show --type=group devel\n" -"\n" -" Delete an automember rule:\n" -" ipa automember-del --type=hostgroup webservers\n" -" ipa automember-del --type=group devel\n" -"\n" -" Rebuild membership for all users:\n" -" ipa automember-rebuild --type=group\n" -"\n" -" Rebuild membership for all hosts:\n" -" ipa automember-rebuild --type=hostgroup\n" -"\n" -" Rebuild membership for specified users:\n" -" ipa automember-rebuild --users=tuser1 --users=tuser2\n" -"\n" -" Rebuild membership for specified hosts:\n" -" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example." -"com\n" -msgstr "" - -#: ipaserver/plugins/automember.py:257 ipaserver/plugins/automount.py:364 -#: ipaserver/plugins/ca.py:89 ipaserver/plugins/caacl.py:175 -#: ipaserver/plugins/certmap.py:279 ipaserver/plugins/group.py:342 -#: ipaserver/plugins/hbacrule.py:253 ipaserver/plugins/hbacsvc.py:108 -#: ipaserver/plugins/hbacsvcgroup.py:120 ipaserver/plugins/host.py:473 -#: ipaserver/plugins/hostgroup.py:193 ipaserver/plugins/idviews.py:142 -#: ipaserver/plugins/idviews.py:775 ipaserver/plugins/location.py:111 -#: ipaserver/plugins/netgroup.py:210 ipaserver/plugins/otptoken.py:174 -#: ipaserver/plugins/privilege.py:159 ipaserver/plugins/radiusproxy.py:117 -#: ipaserver/plugins/role.py:153 ipaserver/plugins/selinuxusermap.py:265 -#: ipaserver/plugins/subid.py:143 ipaserver/plugins/sudocmd.py:128 -#: ipaserver/plugins/sudocmdgroup.py:130 ipaserver/plugins/vault.py:594 -#: ipaserver/plugins/sudorule.py:247 -msgid "Description" -msgstr "" - -#: ipaserver/plugins/automember.py:258 -msgid "A description of this auto member rule" -msgstr "" - -#: ipaserver/plugins/automember.py:262 ipaserver/plugins/automember.py:585 -msgid "Default (fallback) Group" -msgstr "" - -#: ipaserver/plugins/automember.py:263 -msgid "Default group for entries to land" -msgstr "" - -msgid "Add an automember rule." -msgstr "" - -#: ipaserver/plugins/automember.py:249 ipaserver/plugins/automember.py:250 -msgid "Automember Rule" -msgstr "" - -msgid "" -"Set an attribute to a name/value pair. Format is attr=value.\n" -"For multi-valued attributes, the command replaces the values already present." -msgstr "" - -msgid "" -"Add an attribute/value pair. Format is attr=value. The attribute\n" -"must be part of the schema." -msgstr "" - -#: ipaserver/plugins/automember.py:184 -msgid "Grouping Type" -msgstr "" - -#: ipaserver/plugins/automember.py:185 -msgid "Grouping to which the rule applies" -msgstr "" - -msgid "Add conditions to an automember rule." -msgstr "" - -#: ipaserver/plugins/automember.py:160 ipaserver/plugins/automember.py:161 -msgid "Inclusive Regex" -msgstr "" - -#: ipaserver/plugins/automember.py:167 ipaserver/plugins/automember.py:168 -msgid "Exclusive Regex" -msgstr "" - -#: ipaserver/plugins/automember.py:176 -msgid "Attribute Key" -msgstr "" - -#: ipaserver/plugins/automember.py:177 -msgid "" -"Attribute to filter via regex. For example fqdn for a host, or manager for a " -"user" -msgstr "" - -#: ipaserver/plugins/automember.py:357 -msgid "Conditions that could not be added" -msgstr "" - -#: ipaserver/plugins/automember.py:361 -msgid "Number of conditions added" -msgstr "" - -msgid "Remove default (fallback) group for all unmatched entries." -msgstr "" - -msgid "Set default (fallback) group for all unmatched entries." -msgstr "" - -#: ipaserver/plugins/automember.py:586 -msgid "Default (fallback) group for entries to land" -msgstr "" - -msgid "Display information about the default (fallback) automember groups." -msgstr "" - -msgid "Delete an automember rule." -msgstr "" - -#: ipalib/output.py:204 -msgid "List of deletions that failed" -msgstr "" - -msgid "Search for automember rules." -msgstr "" - -msgid "Modify an automember rule." -msgstr "" - -msgid "" -"Delete an attribute/value pair. The option will be evaluated\n" -"last, after all sets and adds." -msgstr "" - -#: ipaserver/plugins/baseldap.py:1398 ipaserver/plugins/baseldap.py:1473 -msgid "Rights" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1399 ipaserver/plugins/baseldap.py:1474 -msgid "" -"Display the access rights of this entry (requires --all). See ipa man page " -"for details." -msgstr "" - -#: ipaserver/plugins/automember.py:683 -msgid "Rebuild auto membership." -msgstr "" - -#: ipaserver/plugins/automember.py:693 -msgid "Rebuild membership for all members of a grouping" -msgstr "" - -#: ipaserver/plugins/automember.py:697 ipaserver/plugins/baseuser.py:198 -#: ipaserver/plugins/caacl.py:220 ipaserver/plugins/hbacrule.py:260 -#: ipaserver/plugins/internal.py:1189 ipaserver/plugins/selinuxusermap.py:272 -#: ipaserver/plugins/user.py:161 ipaserver/plugins/sudorule.py:291 -msgid "Users" -msgstr "" - -#: ipaserver/plugins/automember.py:698 -msgid "Rebuild membership for specified users" -msgstr "" - -#: ipaserver/plugins/automember.py:702 ipaserver/plugins/caacl.py:228 -#: ipaserver/plugins/hbacrule.py:268 ipaserver/plugins/host.py:461 -#: ipaserver/plugins/internal.py:1163 ipaserver/plugins/selinuxusermap.py:280 -#: ipaserver/plugins/sudorule.py:304 -msgid "Hosts" -msgstr "" - -#: ipaserver/plugins/automember.py:703 -msgid "Rebuild membership for specified hosts" -msgstr "" - -#: ipaserver/plugins/automember.py:708 -msgid "No wait" -msgstr "" - -#: ipaserver/plugins/automember.py:709 -msgid "Don't wait for rebuilding membership" -msgstr "" - -msgid "Remove conditions from an automember rule." -msgstr "" - -#: ipaserver/plugins/automember.py:441 -msgid "Conditions that could not be removed" -msgstr "" - -#: ipaserver/plugins/automember.py:445 -msgid "Number of conditions removed" -msgstr "" - -msgid "Display information about an automember rule." -msgstr "" - #: ipaserver/plugins/automount.py:41 msgid "" "\n" @@ -2157,8 +1252,8 @@ msgid "" " ipa automountkey-del baltimore auto.share --key=man\n" msgstr "" -#: ipaserver/plugins/automount.py:465 ipaserver/plugins/automount.py:712 -#: ipaserver/plugins/automount.py:819 ipaserver/plugins/otptoken.py:219 +#: ipaserver/plugins/otptoken.py:219 ipaserver/plugins/automount.py:465 +#: ipaserver/plugins/automount.py:712 ipaserver/plugins/automount.py:819 msgid "Key" msgstr "" @@ -2176,7 +1271,7 @@ msgstr "" msgid "description" msgstr "" -#: ipaserver/plugins/host.py:483 ipaserver/plugins/server.py:132 +#: ipaserver/plugins/host.py:483 ipaserver/plugins/automount.py:252 msgid "Location" msgstr "" @@ -2192,22 +1287,55 @@ msgstr "" msgid "Automount map name." msgstr "" +#: ipaserver/plugins/hbacsvcgroup.py:120 ipaserver/plugins/automember.py:257 +#: ipaserver/plugins/radiusproxy.py:117 ipaserver/plugins/ca.py:89 +#: ipaserver/plugins/sudocmdgroup.py:130 ipaserver/plugins/group.py:342 +#: ipaserver/plugins/privilege.py:159 ipaserver/plugins/role.py:153 +#: ipaserver/plugins/hbacrule.py:253 ipaserver/plugins/hostgroup.py:193 +#: ipaserver/plugins/host.py:473 ipaserver/plugins/otptoken.py:174 +#: ipaserver/plugins/idviews.py:142 ipaserver/plugins/idviews.py:775 +#: ipaserver/plugins/automount.py:364 ipaserver/plugins/location.py:111 +#: ipaserver/plugins/subid.py:143 ipaserver/plugins/caacl.py:175 +#: ipaserver/plugins/hbacsvc.py:108 ipaserver/plugins/selinuxusermap.py:265 +#: ipaserver/plugins/netgroup.py:210 ipaserver/plugins/sudocmd.py:128 +#: ipaserver/plugins/sudorule.py:247 ipaserver/plugins/certmap.py:279 +#: ipaserver/plugins/vault.py:594 +msgid "Description" +msgstr "" + #: ipaserver/plugins/automount.py:623 msgid "Create a new automount key." msgstr "" +#: ipaserver/plugins/baseldap.py:977 +msgid "" +"Set an attribute to a name/value pair. Format is attr=value.\n" +"For multi-valued attributes, the command replaces the values already present." +msgstr "" + +#: ipaserver/plugins/baseldap.py:983 +msgid "" +"Add an attribute/value pair. Format is attr=value. The attribute\n" +"must be part of the schema." +msgstr "" + #: ipaserver/plugins/automount.py:705 msgid "Delete an automount key." msgstr "" +#: ipaserver/plugins/baseldap.py:1377 msgid "Continuous mode: Don't stop on errors." msgstr "" +#: ipalib/output.py:204 +msgid "List of deletions that failed" +msgstr "" + #: ipaserver/plugins/automount.py:804 msgid "Search for an automount key." msgstr "" -#: ipaserver/plugins/cert.py:1574 ipaserver/plugins/pkinit.py:71 +#: ipaserver/plugins/pkinit.py:71 ipaserver/plugins/baseldap.py:1975 #: ipaserver/plugins/serverrole.py:123 msgid "Time Limit" msgstr "" @@ -2215,8 +1343,8 @@ msgstr "" msgid "Time limit of search in seconds" msgstr "" -#: ipaserver/plugins/cert.py:1579 ipaserver/plugins/hbactest.py:304 -#: ipaserver/plugins/pkinit.py:79 ipaserver/plugins/serverrole.py:131 +#: ipaserver/plugins/pkinit.py:79 ipaserver/plugins/hbactest.py:304 +#: ipaserver/plugins/baseldap.py:1982 ipaserver/plugins/serverrole.py:131 msgid "Size Limit" msgstr "" @@ -2227,6 +1355,22 @@ msgstr "" msgid "Modify an automount key." msgstr "" +#: ipaserver/plugins/baseldap.py:989 +msgid "" +"Delete an attribute/value pair. The option will be evaluated\n" +"last, after all sets and adds." +msgstr "" + +#: ipaserver/plugins/baseldap.py:1398 ipaserver/plugins/baseldap.py:1473 +msgid "Rights" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1399 ipaserver/plugins/baseldap.py:1474 +msgid "" +"Display the access rights of this entry (requires --all). See ipa man page " +"for details." +msgstr "" + #: ipaserver/plugins/automount.py:755 msgid "New mount information" msgstr "" @@ -2338,184 +1482,6 @@ msgstr "" msgid "Nested Methods to execute" msgstr "" -msgid "" -"\n" -"IPA certificate operations\n" -"\n" -"Implements a set of commands for managing server SSL certificates.\n" -"\n" -"Certificate requests exist in the form of a Certificate Signing Request " -"(CSR)\n" -"in PEM format.\n" -"\n" -"The dogtag CA uses just the CN value of the CSR and forces the rest of the\n" -"subject to values configured in the server.\n" -"\n" -"A certificate is stored with a service principal and a service principal\n" -"needs a host.\n" -"\n" -"In order to request a certificate:\n" -"\n" -"* The host must exist\n" -"* The service must exist (or you use the --add option to automatically add " -"it)\n" -"\n" -"SEARCHING:\n" -"\n" -"Certificates may be searched on by certificate subject, serial number,\n" -"revocation reason, validity dates and the issued date.\n" -"\n" -"When searching on dates the _from date does a >= search and the _to date\n" -"does a <= search. When combined these are done as an AND.\n" -"\n" -"Dates are treated as GMT to match the dates in the certificates.\n" -"\n" -"The date format is YYYY-mm-dd.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Request a new certificate and add the principal:\n" -" ipa cert-request --add --principal=HTTP/lion.example.com example.csr\n" -"\n" -" Retrieve an existing certificate:\n" -" ipa cert-show 1032\n" -"\n" -" Revoke a certificate (see RFC 5280 for reason details):\n" -" ipa cert-revoke --revocation-reason=6 1032\n" -"\n" -" Remove a certificate from revocation hold status:\n" -" ipa cert-remove-hold 1032\n" -"\n" -" Check the status of a signing request:\n" -" ipa cert-status 10\n" -"\n" -" Search for certificates by hostname:\n" -" ipa cert-find --subject=ipaserver.example.com\n" -"\n" -" Search for revoked certificates by reason:\n" -" ipa cert-find --revocation-reason=5\n" -"\n" -" Search for certificates based on issuance date\n" -" ipa cert-find --issuedon-from=2013-02-01 --issuedon-to=2013-02-07\n" -"\n" -"IPA currently immediately issues (or declines) all certificate requests so\n" -"the status of a request is not normally useful. This is for future use\n" -"or the case where a CA does not immediately issue a certificate.\n" -"\n" -"The following revocation reasons are supported:\n" -"\n" -" * 0 - unspecified\n" -" * 1 - keyCompromise\n" -" * 2 - cACompromise\n" -" * 3 - affiliationChanged\n" -" * 4 - superseded\n" -" * 5 - cessationOfOperation\n" -" * 6 - certificateHold\n" -" * 8 - removeFromCRL\n" -" * 9 - privilegeWithdrawn\n" -" * 10 - aACompromise\n" -"\n" -"Note that reason code 7 is not used. See RFC 5280 for more details:\n" -"\n" -"http://www.ietf.org/rfc/rfc5280.txt\n" -msgstr "" - -msgid "Checks if any of the servers has the CA service enabled." -msgstr "" - -msgid "Search for existing certificates." -msgstr "" - -msgid "Match cn attribute in subject" -msgstr "" - -msgid "Reason" -msgstr "" - -msgid "Reason for revoking the certificate (0-10)" -msgstr "" - -msgid "minimum serial number" -msgstr "" - -msgid "maximum serial number" -msgstr "" - -msgid "match the common name exactly" -msgstr "" - -msgid "Valid not after from this date (YYYY-mm-dd)" -msgstr "" - -msgid "Valid not after to this date (YYYY-mm-dd)" -msgstr "" - -msgid "Valid not before from this date (YYYY-mm-dd)" -msgstr "" - -msgid "Valid not before to this date (YYYY-mm-dd)" -msgstr "" - -msgid "Issued on from this date (YYYY-mm-dd)" -msgstr "" - -msgid "Issued on to this date (YYYY-mm-dd)" -msgstr "" - -msgid "Revoked on from this date (YYYY-mm-dd)" -msgstr "" - -msgid "Revoked on to this date (YYYY-mm-dd)" -msgstr "" - -msgid "Maximum number of certs returned" -msgstr "" - -msgid "Take a revoked certificate off hold." -msgstr "" - -msgid "Serial number" -msgstr "" - -msgid "Serial number in decimal or if prefixed with 0x in hexadecimal" -msgstr "" - -msgid "Submit a certificate signing request." -msgstr "" - -msgid "CSR" -msgstr "" - -msgid "Principal" -msgstr "" - -msgid "Service principal for this certificate (e.g. HTTP/test.example.com)" -msgstr "" - -msgid "automatically add the principal if it doesn't exist" -msgstr "" - -msgid "Dictionary mapping variable name to value" -msgstr "" - -msgid "Revoke a certificate." -msgstr "" - -msgid "Retrieve an existing certificate." -msgstr "" - -msgid "Output filename" -msgstr "" - -msgid "File to store the certificate in." -msgstr "" - -msgid "Check the status of a certificate signing request." -msgstr "" - -msgid "Request id" -msgstr "" - msgid "" "\n" "Server configuration\n" @@ -3415,8 +2381,8 @@ msgstr "" msgid "NAPTR Service" msgstr "" -#: ipaserver/plugins/hbactest.py:285 ipaserver/plugins/internal.py:1332 -#: ipaserver/plugins/internal.py:1676 ipaserver/plugins/service.py:494 +#: ipaserver/plugins/hbactest.py:285 ipaserver/plugins/service.py:494 +#: ipaserver/plugins/internal.py:1332 ipaserver/plugins/internal.py:1676 msgid "Service" msgstr "" @@ -3498,7 +2464,7 @@ msgstr "" msgid "SRV Priority" msgstr "" -#: ipaserver/plugins/certmap.py:304 ipaserver/plugins/pwpolicy.py:341 +#: ipaserver/plugins/pwpolicy.py:341 ipaserver/plugins/certmap.py:304 msgid "Priority" msgstr "" @@ -3736,9 +2702,9 @@ msgstr "" msgid "Add new DNS resource record." msgstr "" -#: ipaserver/plugins/dns.py:3597 ipaserver/plugins/host.py:672 -#: ipaserver/plugins/permission.py:1061 ipaserver/plugins/realmdomains.py:151 -#: ipaserver/plugins/service.py:655 +#: ipaserver/plugins/dns.py:3597 ipaserver/plugins/permission.py:1061 +#: ipaserver/plugins/host.py:672 ipaserver/plugins/service.py:655 +#: ipaserver/plugins/realmdomains.py:151 msgid "Force" msgstr "" @@ -3812,322 +2778,6 @@ msgstr "" msgid "Display information about a DNS zone (SOA record)." msgstr "" -msgid "" -"\n" -"Groups of users\n" -"\n" -"Manage groups of users. By default, new groups are POSIX groups. You\n" -"can add the --nonposix option to the group-add command to mark a new group\n" -"as non-POSIX. You can use the --posix argument with the group-mod command\n" -"to convert a non-POSIX group into a POSIX group. POSIX groups cannot be\n" -"converted to non-POSIX groups.\n" -"\n" -"Every group must have a description.\n" -"\n" -"POSIX groups must have a Group ID (GID) number. Changing a GID is\n" -"supported but can have an impact on your file permissions. It is not " -"necessary\n" -"to supply a GID when creating a group. IPA will generate one automatically\n" -"if it is not provided.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a new group:\n" -" ipa group-add --desc='local administrators' localadmins\n" -"\n" -" Add a new non-POSIX group:\n" -" ipa group-add --nonposix --desc='remote administrators' remoteadmins\n" -"\n" -" Convert a non-POSIX group to posix:\n" -" ipa group-mod --posix remoteadmins\n" -"\n" -" Add a new POSIX group with a specific Group ID number:\n" -" ipa group-add --gid=500 --desc='unix admins' unixadmins\n" -"\n" -" Add a new POSIX group and let IPA assign a Group ID number:\n" -" ipa group-add --desc='printer admins' printeradmins\n" -"\n" -" Remove a group:\n" -" ipa group-del unixadmins\n" -"\n" -" To add the \"remoteadmins\" group to the \"localadmins\" group:\n" -" ipa group-add-member --groups=remoteadmins localadmins\n" -"\n" -" Add multiple users to the \"localadmins\" group:\n" -" ipa group-add-member --users=test1 --users=test2 localadmins\n" -"\n" -" Remove a user from the \"localadmins\" group:\n" -" ipa group-remove-member --users=test2 localadmins\n" -"\n" -" Display information about a named group.\n" -" ipa group-show localadmins\n" -"\n" -"External group membership is designed to allow users from trusted domains\n" -"to be mapped to local POSIX groups in order to actually use IPA resources.\n" -"External members should be added to groups that specifically created as\n" -"external and non-POSIX. Such group later should be included into one of " -"POSIX\n" -"groups.\n" -"\n" -"An external group member is currently a Security Identifier (SID) as defined " -"by\n" -"the trusted domain. When adding external group members, it is possible to\n" -"specify them in either SID, or DOM\\name, or name@domain format. IPA will " -"attempt\n" -"to resolve passed name to SID with the use of Global Catalog of the trusted " -"domain.\n" -"\n" -"Example:\n" -"\n" -"1. Create group for the trusted domain admins' mapping and their local POSIX " -"group:\n" -"\n" -" ipa group-add --desc=' admins external map' ad_admins_external " -"--external\n" -" ipa group-add --desc=' admins' ad_admins\n" -"\n" -"2. Add security identifier of Domain Admins of the to the " -"ad_admins_external\n" -" group:\n" -"\n" -" ipa group-add-member ad_admins_external --external 'AD\\Domain Admins'\n" -"\n" -"3. Allow members of ad_admins_external group to be associated with ad_admins " -"POSIX group:\n" -"\n" -" ipa group-add-member ad_admins --groups ad_admins_external\n" -"\n" -"4. List members of external members of ad_admins_external group to see their " -"SIDs:\n" -"\n" -" ipa group-show ad_admins_external\n" -msgstr "" - -#: ipaserver/plugins/idviews.py:1122 -msgid "Group name" -msgstr "" - -#: ipaserver/plugins/group.py:343 ipaserver/plugins/sudocmdgroup.py:131 -msgid "Group description" -msgstr "" - -#: ipaserver/plugins/group.py:347 ipaserver/plugins/idviews.py:1032 -#: ipaserver/plugins/idviews.py:1127 -msgid "GID" -msgstr "" - -msgid "GID (use this option to set it manually)" -msgstr "" - -msgid "Member users" -msgstr "" - -msgid "Member groups" -msgstr "" - -msgid "Member of groups" -msgstr "" - -#: ipaserver/plugins/role.py:142 -msgid "Roles" -msgstr "" - -msgid "Member of netgroups" -msgstr "" - -msgid "Member of Sudo rule" -msgstr "" - -msgid "Member of HBAC rule" -msgstr "" - -msgid "Indirect Member users" -msgstr "" - -msgid "Indirect Member groups" -msgstr "" - -msgid "Indirect Member of group" -msgstr "" - -msgid "Indirect Member of netgroup" -msgstr "" - -msgid "Indirect Member of role" -msgstr "" - -msgid "Indirect Member of Sudo rule" -msgstr "" - -msgid "Indirect Member of HBAC rule" -msgstr "" - -msgid "Create a new group." -msgstr "" - -msgid "Create as a non-POSIX group" -msgstr "" - -msgid "Allow adding external non-IPA members from trusted domains" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1223 ipaserver/plugins/cert.py:1344 -msgid "Suppress processing of membership attributes." -msgstr "" - -msgid "Add members to a group." -msgstr "" - -msgid "External member" -msgstr "" - -msgid "Members of a trusted domain in DOM\\name or name@domain form" -msgstr "" - -msgid "member user" -msgstr "" - -msgid "users to add" -msgstr "" - -msgid "member group" -msgstr "" - -msgid "groups to add" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1766 ipaserver/plugins/baseldap.py:2253 -#: ipaserver/plugins/privilege.py:226 ipaserver/plugins/privilege.py:257 -#: ipaserver/plugins/role.py:231 ipaserver/plugins/role.py:255 -msgid "Members that could not be added" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1770 ipaserver/plugins/baseldap.py:2257 -msgid "Number of members added" -msgstr "" - -msgid "Delete group." -msgstr "" - -msgid "Detach a managed group from a user." -msgstr "" - -msgid "Search for groups." -msgstr "" - -msgid "search for private groups" -msgstr "" - -msgid "search for POSIX groups" -msgstr "" - -msgid "" -"search for groups with support of external non-IPA members from trusted " -"domains" -msgstr "" - -msgid "search for non-POSIX groups" -msgstr "" - -msgid "Results should contain primary key attribute only (\"group-name\")" -msgstr "" - -#: ipaserver/plugins/user.py:163 ipaserver/plugins/sudorule.py:442 -msgid "user" -msgstr "" - -msgid "Search for groups with these member users." -msgstr "" - -msgid "Search for groups without these member users." -msgstr "" - -#: ipaserver/plugins/group.py:417 ipaserver/plugins/group.py:678 -#: ipaserver/plugins/user.py:151 -msgid "group" -msgstr "" - -msgid "Search for groups with these member groups." -msgstr "" - -msgid "Search for groups without these member groups." -msgstr "" - -msgid "Search for groups with these member of groups." -msgstr "" - -msgid "Search for groups without these member of groups." -msgstr "" - -msgid "netgroup" -msgstr "" - -msgid "Search for groups with these member of netgroups." -msgstr "" - -msgid "Search for groups without these member of netgroups." -msgstr "" - -#: ipaserver/plugins/serverrole.py:185 -msgid "role" -msgstr "" - -msgid "Search for groups with these member of roles." -msgstr "" - -msgid "Search for groups without these member of roles." -msgstr "" - -msgid "HBAC rule" -msgstr "" - -msgid "Search for groups with these member of HBAC rules." -msgstr "" - -msgid "Search for groups without these member of HBAC rules." -msgstr "" - -msgid "sudo rule" -msgstr "" - -msgid "Search for groups with these member of sudo rules." -msgstr "" - -msgid "Search for groups without these member of sudo rules." -msgstr "" - -msgid "Modify a group." -msgstr "" - -msgid "change to a POSIX group" -msgstr "" - -msgid "change to support external non-IPA members from trusted domains" -msgstr "" - -msgid "Rename the group object" -msgstr "" - -msgid "Remove members from a group." -msgstr "" - -msgid "users to remove" -msgstr "" - -msgid "groups to remove" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1864 ipaserver/plugins/baseldap.py:2352 -msgid "Members that could not be removed" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1868 ipaserver/plugins/baseldap.py:2356 -msgid "Number of members removed" -msgstr "" - -msgid "Display information about a named group." -msgstr "" - #: ipaserver/plugins/hbacrule.py:39 msgid "" "\n" @@ -4179,8 +2829,8 @@ msgid "" " ipa hbacrule-del allow_server\n" msgstr "" -#: ipaserver/plugins/certmap.py:273 ipaserver/plugins/hbacrule.py:207 -#: ipaserver/plugins/selinuxusermap.py:239 ipaserver/plugins/sudorule.py:242 +#: ipaserver/plugins/hbacrule.py:207 ipaserver/plugins/selinuxusermap.py:239 +#: ipaserver/plugins/sudorule.py:242 ipaserver/plugins/certmap.py:273 msgid "Rule name" msgstr "" @@ -4192,28 +2842,29 @@ msgstr "" msgid "Rule type (allow)" msgstr "" -#: ipaserver/plugins/hbacrule.py:223 ipaserver/plugins/netgroup.py:227 -#: ipaserver/plugins/selinuxusermap.py:253 ipaserver/plugins/sudorule.py:255 +#: ipaserver/plugins/hbacrule.py:223 ipaserver/plugins/caacl.py:195 +#: ipaserver/plugins/selinuxusermap.py:253 ipaserver/plugins/netgroup.py:227 +#: ipaserver/plugins/sudorule.py:255 msgid "User category" msgstr "" -#: ipaserver/plugins/hbacrule.py:224 ipaserver/plugins/netgroup.py:228 -#: ipaserver/plugins/selinuxusermap.py:254 ipaserver/plugins/sudorule.py:256 +#: ipaserver/plugins/hbacrule.py:224 ipaserver/plugins/selinuxusermap.py:254 +#: ipaserver/plugins/netgroup.py:228 ipaserver/plugins/sudorule.py:256 msgid "User category the rule applies to" msgstr "" -#: ipaserver/plugins/caacl.py:201 ipaserver/plugins/hbacrule.py:229 -#: ipaserver/plugins/netgroup.py:233 ipaserver/plugins/selinuxusermap.py:259 +#: ipaserver/plugins/hbacrule.py:229 ipaserver/plugins/caacl.py:201 +#: ipaserver/plugins/selinuxusermap.py:259 ipaserver/plugins/netgroup.py:233 #: ipaserver/plugins/sudorule.py:261 msgid "Host category" msgstr "" -#: ipaserver/plugins/hbacrule.py:230 ipaserver/plugins/netgroup.py:234 -#: ipaserver/plugins/selinuxusermap.py:260 ipaserver/plugins/sudorule.py:262 +#: ipaserver/plugins/hbacrule.py:230 ipaserver/plugins/selinuxusermap.py:260 +#: ipaserver/plugins/netgroup.py:234 ipaserver/plugins/sudorule.py:262 msgid "Host category the rule applies to" msgstr "" -#: ipaserver/plugins/hbacrule.py:243 +#: ipaserver/plugins/hbacrule.py:243 ipaserver/plugins/caacl.py:207 msgid "Service category" msgstr "" @@ -4221,25 +2872,41 @@ msgstr "" msgid "Service category the rule applies to" msgstr "" -#: ipaserver/plugins/certmap.py:310 ipaserver/plugins/hbacrule.py:256 -#: ipaserver/plugins/internal.py:1935 ipaserver/plugins/selinuxusermap.py:268 -#: ipaserver/plugins/sudorule.py:250 +#: ipaserver/plugins/hbacrule.py:256 ipaserver/plugins/internal.py:1935 +#: ipaserver/plugins/caacl.py:178 ipaserver/plugins/selinuxusermap.py:268 +#: ipaserver/plugins/sudorule.py:250 ipaserver/plugins/certmap.py:310 msgid "Enabled" msgstr "" -#: ipaserver/plugins/group.py:327 ipaserver/plugins/hbacrule.py:264 -#: ipaserver/plugins/internal.py:878 ipaserver/plugins/internal.py:1188 +#: ipaserver/plugins/automember.py:697 ipaserver/plugins/hbacrule.py:260 +#: ipaserver/plugins/user.py:161 ipaserver/plugins/internal.py:1189 +#: ipaserver/plugins/caacl.py:220 ipaserver/plugins/selinuxusermap.py:272 +#: ipaserver/plugins/sudorule.py:291 ipaserver/plugins/baseuser.py:198 +msgid "Users" +msgstr "" + +#: ipaserver/plugins/hbacrule.py:264 ipaserver/plugins/internal.py:878 +#: ipaserver/plugins/internal.py:1188 ipaserver/plugins/caacl.py:224 #: ipaserver/plugins/selinuxusermap.py:276 ipaserver/plugins/sudorule.py:295 msgid "User Groups" msgstr "" +#: ipaserver/plugins/automember.py:702 ipaserver/plugins/hbacrule.py:268 +#: ipaserver/plugins/host.py:461 ipaserver/plugins/internal.py:1163 +#: ipaserver/plugins/caacl.py:228 ipaserver/plugins/selinuxusermap.py:280 +#: ipaserver/plugins/sudorule.py:304 +msgid "Hosts" +msgstr "" + #: ipaserver/plugins/hbacrule.py:272 ipaserver/plugins/hostgroup.py:178 #: ipaserver/plugins/internal.py:1072 ipaserver/plugins/internal.py:1162 -#: ipaserver/plugins/selinuxusermap.py:284 ipaserver/plugins/sudorule.py:308 +#: ipaserver/plugins/caacl.py:232 ipaserver/plugins/selinuxusermap.py:284 +#: ipaserver/plugins/sudorule.py:308 msgid "Host Groups" msgstr "" -#: ipaserver/plugins/internal.py:955 ipaserver/plugins/service.py:493 +#: ipaserver/plugins/service.py:493 ipaserver/plugins/internal.py:955 +#: ipaserver/plugins/caacl.py:236 msgid "Services" msgstr "" @@ -4254,6 +2921,10 @@ msgstr "" msgid "Create a new HBAC rule." msgstr "" +#: ipaserver/plugins/cert.py:1344 ipaserver/plugins/baseldap.py:1223 +msgid "Suppress processing of membership attributes." +msgstr "" + #: ipaserver/plugins/hbacrule.py:534 msgid "Add target hosts and hostgroups to an HBAC rule." msgstr "" @@ -4270,6 +2941,16 @@ msgstr "" msgid "host groups to add" msgstr "" +#: ipaserver/plugins/privilege.py:226 ipaserver/plugins/privilege.py:257 +#: ipaserver/plugins/role.py:231 ipaserver/plugins/role.py:255 +#: ipaserver/plugins/baseldap.py:1766 ipaserver/plugins/baseldap.py:2253 +msgid "Members that could not be added" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1770 ipaserver/plugins/baseldap.py:2257 +msgid "Number of members added" +msgstr "" + #: ipaserver/plugins/hbacrule.py:591 msgid "Add services to an HBAC rule." msgstr "" @@ -4290,6 +2971,18 @@ msgstr "" msgid "Add users and groups to an HBAC rule." msgstr "" +msgid "member user" +msgstr "" + +msgid "users to add" +msgstr "" + +msgid "member group" +msgstr "" + +msgid "groups to add" +msgstr "" + #: ipaserver/plugins/hbacrule.py:314 msgid "Delete an HBAC rule." msgstr "" @@ -4320,6 +3013,14 @@ msgstr "" msgid "host groups to remove" msgstr "" +#: ipaserver/plugins/baseldap.py:1864 ipaserver/plugins/baseldap.py:2352 +msgid "Members that could not be removed" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1868 ipaserver/plugins/baseldap.py:2356 +msgid "Number of members removed" +msgstr "" + #: ipaserver/plugins/hbacrule.py:613 msgid "Remove service and service groups from an HBAC rule." msgstr "" @@ -4334,6 +3035,12 @@ msgstr "" msgid "Remove users and groups from an HBAC rule." msgstr "" +msgid "users to remove" +msgstr "" + +msgid "groups to remove" +msgstr "" + #: ipaserver/plugins/hbacrule.py:375 msgid "Display the properties of an HBAC rule." msgstr "" @@ -4461,255 +3168,6 @@ msgstr "" msgid "Display information about an HBAC service group." msgstr "" -msgid "" -"\n" -"Simulate use of Host-based access controls\n" -"\n" -"HBAC rules control who can access what services on what hosts.\n" -"You can use HBAC to control which users or groups can access a service,\n" -"or group of services, on a target host.\n" -"\n" -"Since applying HBAC rules implies use of a production environment,\n" -"this plugin aims to provide simulation of HBAC rules evaluation without\n" -"having access to the production environment.\n" -"\n" -" Test user coming to a service on a named host against\n" -" existing enabled rules.\n" -"\n" -" ipa hbactest --user= --host= --service=\n" -" [--rules=rules-list] [--nodetail] [--enabled] [--disabled]\n" -" [--sizelimit= ]\n" -"\n" -" --user, --host, and --service are mandatory, others are optional.\n" -"\n" -" If --rules is specified simulate enabling of the specified rules and test\n" -" the login of the user using only these rules.\n" -"\n" -" If --enabled is specified, all enabled HBAC rules will be added to " -"simulation\n" -"\n" -" If --disabled is specified, all disabled HBAC rules will be added to " -"simulation\n" -"\n" -" If --nodetail is specified, do not return information about rules matched/" -"not matched.\n" -"\n" -" If both --rules and --enabled are specified, apply simulation to --rules " -"_and_\n" -" all IPA enabled rules.\n" -"\n" -" If no --rules specified, simulation is run against all IPA enabled rules.\n" -" By default there is a IPA-wide limit to number of entries fetched, you can " -"change it\n" -" with --sizelimit option.\n" -"\n" -"EXAMPLES:\n" -"\n" -" 1. Use all enabled HBAC rules in IPA database to simulate:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: my-third-rule\n" -" Not matched rules: myrule\n" -" Matched rules: allow_all\n" -"\n" -" 2. Disable detailed summary of how rules were applied:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd --nodetail\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -"\n" -" 3. Test explicitly specified HBAC rules:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\n" -" --rules=myrule --rules=my-second-rule\n" -" ---------------------\n" -" Access granted: False\n" -" ---------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: myrule\n" -"\n" -" 4. Use all enabled HBAC rules in IPA database + explicitly specified " -"rules:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\n" -" --rules=myrule --rules=my-second-rule --enabled\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: my-third-rule\n" -" Not matched rules: myrule\n" -" Matched rules: allow_all\n" -"\n" -" 5. Test all disabled HBAC rules in IPA database:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd --disabled\n" -" ---------------------\n" -" Access granted: False\n" -" ---------------------\n" -" Not matched rules: new-rule\n" -"\n" -" 6. Test all disabled HBAC rules in IPA database + explicitly specified " -"rules:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\n" -" --rules=myrule --rules=my-second-rule --disabled\n" -" ---------------------\n" -" Access granted: False\n" -" ---------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: my-third-rule\n" -" Not matched rules: myrule\n" -"\n" -" 7. Test all (enabled and disabled) HBAC rules in IPA database:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\n" -" --enabled --disabled\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: my-third-rule\n" -" Not matched rules: myrule\n" -" Not matched rules: new-rule\n" -" Matched rules: allow_all\n" -"\n" -"\n" -"HBACTEST AND TRUSTED DOMAINS\n" -"\n" -"When an external trusted domain is configured in IPA, HBAC rules are also " -"applied\n" -"on users accessing IPA resources from the trusted domain. Trusted domain " -"users and\n" -"groups (and their SIDs) can be then assigned to external groups which can " -"be\n" -"members of POSIX groups in IPA which can be used in HBAC rules and thus " -"allowing\n" -"access to resources protected by the HBAC system.\n" -"\n" -"hbactest plugin is capable of testing access for both local IPA users and " -"users\n" -"from the trusted domains, either by a fully qualified user name or by user " -"SID.\n" -"Such user names need to have a trusted domain specified as a short name\n" -"(DOMAIN\\Administrator) or with a user principal name (UPN), " -"Administrator@ad.test.\n" -"\n" -"Please note that hbactest executed with a trusted domain user as --user " -"parameter\n" -"can be only run by members of \"trust admins\" group.\n" -"\n" -"EXAMPLES:\n" -"\n" -" 1. Test if a user from a trusted domain specified by its shortname " -"matches any\n" -" rule:\n" -"\n" -" $ ipa hbactest --user 'DOMAIN\\Administrator' --host `hostname` --" -"service sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Matched rules: can_login\n" -"\n" -" 2. Test if a user from a trusted domain specified by its domain name " -"matches\n" -" any rule:\n" -"\n" -" $ ipa hbactest --user 'Administrator@domain.com' --host `hostname` --" -"service sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Matched rules: can_login\n" -"\n" -" 3. Test if a user from a trusted domain specified by its SID matches any " -"rule:\n" -"\n" -" $ ipa hbactest --user S-1-5-21-3035198329-144811719-1378114514-500 \\\n" -" --host `hostname` --service sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Matched rules: can_login\n" -"\n" -" 4. Test if other user from a trusted domain specified by its SID matches " -"any rule:\n" -"\n" -" $ ipa hbactest --user S-1-5-21-3035198329-144811719-1378114514-1203 \\\n" -" --host `hostname` --service sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Not matched rules: can_login\n" -"\n" -" 5. Test if other user from a trusted domain specified by its shortname " -"matches\n" -" any rule:\n" -"\n" -" $ ipa hbactest --user 'DOMAIN\\Otheruser' --host `hostname` --service " -"sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Not matched rules: can_login\n" -msgstr "" - -#: ipaserver/plugins/hbactest.py:256 -msgid "Simulate use of Host-based access controls" -msgstr "" - -#: ipaserver/plugins/krbtpolicy.py:134 ipaserver/plugins/passwd.py:94 -msgid "User name" -msgstr "" - -#: ipaserver/plugins/hbactest.py:281 -msgid "Target host" -msgstr "" - -#: ipaserver/plugins/hbactest.py:289 -msgid "Rules to test. If not specified, --enabled is assumed" -msgstr "" - -#: ipaserver/plugins/hbactest.py:293 -msgid "Hide details which rules are matched, not matched, or invalid" -msgstr "" - -#: ipaserver/plugins/hbactest.py:297 -msgid "Include all enabled IPA rules into test [default]" -msgstr "" - -#: ipaserver/plugins/hbactest.py:301 -msgid "Include all disabled IPA rules into test" -msgstr "" - -#: ipaserver/plugins/hbactest.py:305 -msgid "Maximum number of rules to process when no --rules is specified" -msgstr "" - -#: ipaserver/plugins/hbactest.py:260 -msgid "Warning" -msgstr "" - -#: ipaserver/plugins/hbactest.py:261 -msgid "Matched rules" -msgstr "" - -#: ipaserver/plugins/hbactest.py:262 -msgid "Not matched rules" -msgstr "" - -#: ipaserver/plugins/hbactest.py:263 -msgid "Non-existent or invalid rules" -msgstr "" - -#: ipaserver/plugins/hbactest.py:264 -msgid "Result of simulation" -msgstr "" - msgid "" "\n" "Hosts/Machines\n" @@ -4811,22 +3269,22 @@ msgstr "" msgid "Generate a random password to be used in bulk enrollment" msgstr "" -#: ipaserver/plugins/host.py:508 +#: ipaserver/plugins/baseuser.py:291 msgid "Random password" msgstr "" +#: ipaserver/plugins/ca.py:112 ipaserver/plugins/host.py:513 +#: ipaserver/plugins/service.py:519 ipaserver/plugins/internal.py:638 +#: ipaserver/plugins/internal.py:722 ipaserver/plugins/idviews.py:1055 #: ipaserver/plugins/baseuser.py:400 ipaserver/plugins/baseuser.py:845 -#: ipaserver/plugins/ca.py:112 ipaserver/plugins/cert.py:353 -#: ipaserver/plugins/certmap.py:605 ipaserver/plugins/host.py:513 -#: ipaserver/plugins/idviews.py:1055 ipaserver/plugins/internal.py:638 -#: ipaserver/plugins/internal.py:722 ipaserver/plugins/service.py:519 +#: ipaserver/plugins/certmap.py:605 msgid "Certificate" msgstr "" msgid "Base-64 encoded server certificate" msgstr "" -#: ipaserver/plugins/host.py:555 ipaserver/plugins/service.py:501 +#: ipaserver/plugins/service.py:501 ipaserver/plugins/baseuser.py:251 msgid "Principal name" msgstr "" @@ -4836,11 +3294,11 @@ msgstr "" msgid "Hardware MAC address(es) on this host" msgstr "" -#: ipaserver/plugins/host.py:576 ipaserver/plugins/idviews.py:1049 +#: ipaserver/plugins/idviews.py:1049 ipaserver/plugins/baseuser.py:350 msgid "SSH public key" msgstr "" -#: ipaserver/plugins/host.py:586 +#: ipaserver/plugins/baseuser.py:367 msgid "Class" msgstr "" @@ -4869,13 +3327,44 @@ msgstr "" msgid "Client credentials may be delegated to the service" msgstr "" +#: ipaserver/plugins/migration.py:534 ipaserver/plugins/internal.py:190 +#: ipaserver/plugins/internal.py:408 ipaserver/plugins/internal.py:1714 +#: ipaserver/plugins/baseldap.py:50 ipaserver/plugins/baseuser.py:279 +msgid "Password" +msgstr "" + #: ipaserver/plugins/baseldap.py:71 msgid "Member of host-groups" msgstr "" +#: ipaserver/plugins/baseldap.py:80 +msgid "Roles" +msgstr "" + +msgid "Member of netgroups" +msgstr "" + +msgid "Member of Sudo rule" +msgstr "" + +msgid "Member of HBAC rule" +msgstr "" + +msgid "Indirect Member of netgroup" +msgstr "" + msgid "Indirect Member of host-group" msgstr "" +msgid "Indirect Member of role" +msgstr "" + +msgid "Indirect Member of Sudo rule" +msgstr "" + +msgid "Indirect Member of HBAC rule" +msgstr "" + #: ipaserver/plugins/service.py:128 msgid "Keytab" msgstr "" @@ -4975,30 +3464,47 @@ msgstr "" msgid "Search for hosts without these member of host groups." msgstr "" +msgid "netgroup" +msgstr "" + msgid "Search for hosts with these member of netgroups." msgstr "" msgid "Search for hosts without these member of netgroups." msgstr "" +#: ipaserver/plugins/serverrole.py:185 +msgid "role" +msgstr "" + msgid "Search for hosts with these member of roles." msgstr "" msgid "Search for hosts without these member of roles." msgstr "" +msgid "HBAC rule" +msgstr "" + msgid "Search for hosts with these member of HBAC rules." msgstr "" msgid "Search for hosts without these member of HBAC rules." msgstr "" +msgid "sudo rule" +msgstr "" + msgid "Search for hosts with these member of sudo rules." msgstr "" msgid "Search for hosts without these member of sudo rules." msgstr "" +#: ipaserver/plugins/user.py:163 ipaserver/plugins/sudorule.py:442 +msgid "user" +msgstr "" + msgid "Search for hosts with these enrolled by users." msgstr "" @@ -5036,7 +3542,7 @@ msgstr "" msgid "Display information about a host." msgstr "" -#: ipaserver/plugins/service.py:987 ipaserver/plugins/user.py:928 +#: ipaserver/plugins/host.py:1137 ipaserver/plugins/service.py:987 msgid "file to store certificate in" msgstr "" @@ -5164,243 +3670,6 @@ msgstr "" msgid "Display information about a hostgroup." msgstr "" -msgid "" -"\n" -"ID ranges\n" -"\n" -"Manage ID ranges used to map Posix IDs to SIDs and back.\n" -"\n" -"There are two type of ID ranges which are both handled by this utility:\n" -"\n" -" - the ID ranges of the local domain\n" -" - the ID ranges of trusted remote domains\n" -"\n" -"Both types have the following attributes in common:\n" -"\n" -" - base-id: the first ID of the Posix ID range\n" -" - range-size: the size of the range\n" -"\n" -"With those two attributes a range object can reserve the Posix IDs starting\n" -"with base-id up to but not including base-id+range-size exclusively.\n" -"\n" -"Additionally an ID range of the local domain may set\n" -" - rid-base: the first RID(*) of the corresponding RID range\n" -" - secondary-rid-base: first RID of the secondary RID range\n" -"\n" -"and an ID range of a trusted domain must set\n" -" - rid-base: the first RID of the corresponding RID range\n" -" - sid: domain SID of the trusted domain\n" -"\n" -"\n" -"\n" -"EXAMPLE: Add a new ID range for a trusted domain\n" -"\n" -"Since there might be more than one trusted domain the domain SID must be " -"given\n" -"while creating the ID range.\n" -"\n" -" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" -"base=0 --dom-sid=S-1-5-21-123-456-789 trusted_dom_range\n" -"\n" -"This ID range is then used by the IPA server and the SSSD IPA provider to\n" -"assign Posix UIDs to users from the trusted domain.\n" -"\n" -"If e.g. a range for a trusted domain is configured with the following " -"values:\n" -" base-id = 1200000\n" -" range-size = 200000\n" -" rid-base = 0\n" -"the RIDs 0 to 199999 are mapped to the Posix ID from 1200000 to 13999999. " -"So\n" -"RID 1000 <-> Posix ID 1201000\n" -"\n" -"\n" -"\n" -"EXAMPLE: Add a new ID range for the local domain\n" -"\n" -"To create an ID range for the local domain it is not necessary to specify a\n" -"domain SID. But since it is possible that a user and a group can have the " -"same\n" -"value as Posix ID a second RID interval is needed to handle conflicts.\n" -"\n" -" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" -"base=1000 --secondary-rid-base=1000000 local_range\n" -"\n" -"The data from the ID ranges of the local domain are used by the IPA server\n" -"internally to assign SIDs to IPA users and groups. The SID will then be " -"stored\n" -"in the user or group objects.\n" -"\n" -"If e.g. the ID range for the local domain is configured with the values " -"from\n" -"the example above then a new user with the UID 1200007 will get the RID " -"1007.\n" -"If this RID is already used by a group the RID will be 1000007. This can " -"only\n" -"happen if a user or a group object was created with a fixed ID because the\n" -"automatic assignment will not assign the same ID twice. Since there are " -"only\n" -"users and groups sharing the same ID namespace it is sufficient to have " -"only\n" -"one fallback range to handle conflicts.\n" -"\n" -"To find the Posix ID for a given RID from the local domain it has to be\n" -"checked first if the RID falls in the primary or secondary RID range and\n" -"the rid-base or the secondary-rid-base has to be subtracted, respectively,\n" -"and the base-id has to be added to get the Posix ID.\n" -"\n" -"Typically the creation of ID ranges happens behind the scenes and this CLI\n" -"must not be used at all. The ID range for the local domain will be created\n" -"during installation or upgrade from an older version. The ID range for a\n" -"trusted domain will be created together with the trust by 'ipa trust-" -"add ...'.\n" -"\n" -"USE CASES:\n" -"\n" -" Add an ID range from a transitively trusted domain\n" -"\n" -" If the trusted domain (A) trusts another domain (B) as well and this " -"trust\n" -" is transitive 'ipa trust-add domain-A' will only create a range for\n" -" domain A. The ID range for domain B must be added manually.\n" -"\n" -" Add an additional ID range for the local domain\n" -"\n" -" If the ID range of the local domain is exhausted, i.e. no new IDs can " -"be\n" -" assigned to Posix users or groups by the DNA plugin, a new range has to " -"be\n" -" created to allow new users and groups to be added. (Currently there is " -"no\n" -" connection between this range CLI and the DNA plugin, but a future " -"version\n" -" might be able to modify the configuration of the DNS plugin as well)\n" -"\n" -"In general it is not necessary to modify or delete ID ranges. If there is " -"no\n" -"other way to achieve a certain configuration than to modify or delete an ID\n" -"range it should be done with great care. Because UIDs are stored in the " -"file\n" -"system and are used for access control it might be possible that users are\n" -"allowed to access files of other users if an ID range got deleted and " -"reused\n" -"for a different domain.\n" -"\n" -"(*) The RID is typically the last integer of a user or group SID which " -"follows\n" -"the domain SID. E.g. if the domain SID is S-1-5-21-123-456-789 and a user " -"from\n" -"this domain has the SID S-1-5-21-123-456-789-1010 then 1010 is the RID of " -"the\n" -"user. RIDs are unique in a domain, 32bit values and are used for users and\n" -"groups.\n" -"\n" -"WARNING:\n" -"\n" -"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " -"the\n" -"local domain. Currently the DNA plugin *cannot* be reconfigured itself " -"based\n" -"on the local ranges set via this family of commands.\n" -"\n" -"Manual configuration change has to be done in the DNA plugin configuration " -"for\n" -"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" -"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " -"be\n" -"modified to match the new range.\n" -msgstr "" - -#: ipaserver/plugins/idrange.py:219 -msgid "Range name" -msgstr "" - -#: ipaserver/plugins/idrange.py:224 -msgid "First Posix ID of the range" -msgstr "" - -#: ipaserver/plugins/idrange.py:230 -msgid "Number of IDs in the range" -msgstr "" - -#: ipaserver/plugins/idrange.py:236 -msgid "First RID of the corresponding RID range" -msgstr "" - -#: ipaserver/plugins/idrange.py:240 -msgid "First RID of the secondary RID range" -msgstr "" - -#: ipaserver/plugins/idrange.py:245 ipaserver/plugins/idrange.py:655 -msgid "Domain SID of the trusted domain" -msgstr "" - -#: ipaserver/plugins/idrange.py:250 ipaserver/plugins/idrange.py:663 -msgid "Name of the trusted domain" -msgstr "" - -#: ipaserver/plugins/idrange.py:253 ipaserver/plugins/internal.py:1246 -#: ipaserver/plugins/trust.py:710 -msgid "Range type" -msgstr "" - -msgid "ID range type, one of ipa-ad-trust-posix, ipa-ad-trust, ipa-local" -msgstr "" - -msgid "" -"\n" -"Add new ID range.\n" -"\n" -" To add a new ID range you always have to specify\n" -"\n" -" --base-id\n" -" --range-size\n" -"\n" -" Additionally\n" -"\n" -" --rid-base\n" -" --secondary-rid-base\n" -"\n" -" may be given for a new ID range for the local domain while\n" -"\n" -" --rid-base\n" -" --dom-sid\n" -"\n" -" must be given to add a new range for a trusted AD domain.\n" -"\n" -" WARNING:\n" -"\n" -" DNA plugin in 389-ds will allocate IDs based on the ranges configured " -"for the\n" -" local domain. Currently the DNA plugin *cannot* be reconfigured itself " -"based\n" -" on the local ranges set via this family of commands.\n" -"\n" -" Manual configuration change has to be done in the DNA plugin " -"configuration for\n" -" the new local range. Specifically, The dnaNextRange attribute of " -"'cn=Posix\n" -" IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has " -"to be\n" -" modified to match the new range.\n" -" " -msgstr "" - -#: ipaserver/plugins/idrange.py:556 -msgid "Delete an ID range." -msgstr "" - -#: ipaserver/plugins/idrange.py:604 -msgid "Search for ranges." -msgstr "" - -msgid "Modify ID range." -msgstr "" - -#: ipaserver/plugins/idrange.py:627 -msgid "Display information about a range." -msgstr "" - msgid "" "\n" "ID Views\n" @@ -5418,15 +3687,24 @@ msgstr "" msgid "Anchor to override" msgstr "" -#: ipaserver/plugins/idviews.py:1033 ipaserver/plugins/idviews.py:1128 +#: ipaserver/plugins/idviews.py:1122 +msgid "Group name" +msgstr "" + +#: ipaserver/plugins/idviews.py:1032 ipaserver/plugins/idviews.py:1127 +#: ipaserver/plugins/baseuser.py:301 +msgid "GID" +msgstr "" + +#: ipaserver/plugins/idviews.py:1128 ipaserver/plugins/baseuser.py:302 msgid "Group ID Number" msgstr "" -#: ipaserver/plugins/idviews.py:1019 +#: ipaserver/plugins/baseuser.py:207 msgid "User login" msgstr "" -#: ipaserver/plugins/idviews.py:1024 +#: ipaserver/plugins/baseuser.py:296 msgid "UID" msgstr "" @@ -5434,15 +3712,15 @@ msgstr "" msgid "User ID Number" msgstr "" -#: ipaserver/plugins/baseuser.py:240 ipaserver/plugins/idviews.py:1029 +#: ipaserver/plugins/idviews.py:1029 ipaserver/plugins/baseuser.py:240 msgid "GECOS" msgstr "" -#: ipaserver/plugins/idviews.py:1038 +#: ipaserver/plugins/baseuser.py:237 msgid "Home directory" msgstr "" -#: ipaserver/plugins/idviews.py:1042 +#: ipaserver/plugins/baseuser.py:246 msgid "Login shell" msgstr "" @@ -5690,6 +3968,10 @@ msgid "" " ipa krbtpolicy-mod admin --maxlife=3600\n" msgstr "" +#: ipaserver/plugins/passwd.py:94 ipaserver/plugins/krbtpolicy.py:134 +msgid "User name" +msgstr "" + #: ipaserver/plugins/krbtpolicy.py:135 msgid "Manage ticket policy for specific user" msgstr "" @@ -5991,6 +4273,9 @@ msgid "" "retrieve and print all attributes from the server. Affects command output." msgstr "" +msgid "Dictionary mapping variable name to value" +msgstr "" + msgid "Total number of variables env (>= count)" msgstr "" @@ -6107,6 +4392,11 @@ msgstr "" msgid "Search for netgroups without these member users." msgstr "" +#: ipaserver/plugins/group.py:417 ipaserver/plugins/group.py:678 +#: ipaserver/plugins/user.py:151 +msgid "group" +msgstr "" + msgid "Search for netgroups with these member groups." msgstr "" @@ -6214,186 +4504,6 @@ msgstr "" msgid "Show the current OTP configuration." msgstr "" -msgid "" -"\n" -"OTP Tokens\n" -"\n" -"Manage OTP tokens.\n" -"\n" -"IPA supports the use of OTP tokens for multi-factor authentication. This\n" -"code enables the management of OTP tokens.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a new token:\n" -" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n" -"\n" -" Examine the token:\n" -" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n" -"\n" -" Change the vendor:\n" -" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat" -"\"\n" -"\n" -" Delete a token:\n" -" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n" -msgstr "" - -#: ipaserver/plugins/otptoken.py:160 ipaserver/plugins/subid.py:136 -msgid "Unique ID" -msgstr "" - -#: ipaserver/plugins/otptoken.py:166 -msgid "Type of the token" -msgstr "" - -#: ipaserver/plugins/otptoken.py:175 -msgid "Token description (informational only)" -msgstr "" - -#: ipaserver/plugins/internal.py:1372 ipaserver/plugins/otptoken.py:179 -#: ipaserver/plugins/subid.py:149 ipaserver/plugins/subid.py:467 -msgid "Owner" -msgstr "" - -#: ipaserver/plugins/otptoken.py:180 -msgid "Assigned user of the token (default: self)" -msgstr "" - -#: ipaserver/plugins/otptoken.py:183 -msgid "Manager" -msgstr "" - -#: ipaserver/plugins/otptoken.py:184 -msgid "Assigned manager of the token (default: self)" -msgstr "" - -#: ipaserver/plugins/internal.py:1933 ipaserver/plugins/otptoken.py:189 -msgid "Disabled" -msgstr "" - -#: ipaserver/plugins/otptoken.py:190 -msgid "Mark the token as disabled (default: false)" -msgstr "" - -#: ipaserver/plugins/otptoken.py:194 -msgid "Validity start" -msgstr "" - -#: ipaserver/plugins/otptoken.py:195 -msgid "First date/time the token can be used" -msgstr "" - -#: ipaserver/plugins/otptoken.py:199 -msgid "Validity end" -msgstr "" - -#: ipaserver/plugins/otptoken.py:200 -msgid "Last date/time the token can be used" -msgstr "" - -#: ipaserver/plugins/otptoken.py:204 -msgid "Vendor" -msgstr "" - -#: ipaserver/plugins/otptoken.py:205 -msgid "Token vendor name (informational only)" -msgstr "" - -#: ipaserver/plugins/otptoken.py:209 -msgid "Model" -msgstr "" - -#: ipaserver/plugins/otptoken.py:210 -msgid "Token model (informational only)" -msgstr "" - -#: ipaserver/plugins/otptoken.py:214 -msgid "Serial" -msgstr "" - -#: ipaserver/plugins/otptoken.py:215 -msgid "Token serial (informational only)" -msgstr "" - -#: ipaserver/plugins/otptoken.py:220 -msgid "Token secret (Base32; default: random)" -msgstr "" - -#: ipaserver/plugins/otptoken.py:230 -msgid "Token hash algorithm" -msgstr "" - -#: ipaserver/plugins/otptoken.py:238 -msgid "Digits" -msgstr "" - -#: ipaserver/plugins/otptoken.py:239 -msgid "Number of digits each token code will have" -msgstr "" - -#: ipaserver/plugins/otptoken.py:247 -msgid "Clock offset" -msgstr "" - -#: ipaserver/plugins/otptoken.py:248 -msgid "TOTP token / IPA server time difference" -msgstr "" - -#: ipaserver/plugins/otptoken.py:255 -msgid "Clock interval" -msgstr "" - -#: ipaserver/plugins/otptoken.py:256 -msgid "Length of TOTP token code validity" -msgstr "" - -#: ipaserver/plugins/otptoken.py:264 -msgid "Counter" -msgstr "" - -#: ipaserver/plugins/otptoken.py:265 -msgid "Initial counter for the HOTP token" -msgstr "" - -#: ipaserver/plugins/otptoken.py:280 -msgid "Add a new OTP token." -msgstr "" - -#: ipaserver/plugins/otptoken.py:284 -msgid "(deprecated)" -msgstr "" - -#: ipaserver/plugins/otptoken.py:285 -msgid "Do not display QR code" -msgstr "" - -#: ipaserver/plugins/otptoken.py:463 -msgid "Add users that can manage this token." -msgstr "" - -#: ipaserver/plugins/otptoken.py:366 -msgid "Delete an OTP token." -msgstr "" - -#: ipaserver/plugins/otptoken.py:421 -msgid "Search for OTP token." -msgstr "" - -msgid "Results should contain primary key attribute only (\"id\")" -msgstr "" - -#: ipaserver/plugins/otptoken.py:372 -msgid "Modify a OTP token." -msgstr "" - -msgid "Rename the OTP token object" -msgstr "" - -#: ipaserver/plugins/otptoken.py:450 -msgid "Display information about an OTP token." -msgstr "" - msgid "" "\n" "YubiKey Tokens\n" @@ -6432,16 +4542,15 @@ msgstr "" msgid "Set a user's password." msgstr "" -#: ipaserver/plugins/internal.py:1698 ipaserver/plugins/passwd.py:101 +#: ipaserver/plugins/internal.py:1698 msgid "New Password" msgstr "" -#: ipaserver/plugins/internal.py:1692 ipaserver/plugins/passwd.py:104 +#: ipaserver/plugins/internal.py:1692 msgid "Current Password" msgstr "" #: ipaserver/plugins/internal.py:188 ipaserver/plugins/internal.py:1700 -#: ipaserver/plugins/passwd.py:113 msgid "OTP" msgstr "" @@ -6879,7 +4988,7 @@ msgid "" " ipa pwpolicy-mod --minclasses=2 localadmins\n" msgstr "" -#: ipaserver/plugins/internal.py:1653 ipaserver/plugins/pwpolicy.py:303 +#: ipaserver/plugins/pwpolicy.py:303 ipaserver/plugins/internal.py:1653 msgid "Group" msgstr "" @@ -6981,9 +5090,9 @@ msgstr "" msgid "Display information about password policy." msgstr "" -#: ipaserver/plugins/baseuser.py:199 ipaserver/plugins/internal.py:1187 -#: ipaserver/plugins/internal.py:1299 ipaserver/plugins/internal.py:1687 -#: ipaserver/plugins/user.py:162 ipaserver/plugins/pwpolicy.py:624 +#: ipaserver/plugins/pwpolicy.py:624 ipaserver/plugins/user.py:162 +#: ipaserver/plugins/internal.py:1187 ipaserver/plugins/internal.py:1299 +#: ipaserver/plugins/internal.py:1687 ipaserver/plugins/baseuser.py:199 msgid "User" msgstr "" @@ -7112,8 +5221,8 @@ msgid "" " ipa realmdomains-mod --del-domain=olddomain.com\n" msgstr "" -#: ipaserver/plugins/internal.py:714 ipaserver/plugins/internal.py:1534 -#: ipaserver/plugins/realmdomains.py:115 ipaserver/plugins/trust.py:1245 +#: ipaserver/plugins/internal.py:1534 ipaserver/plugins/trust.py:1245 +#: ipaserver/plugins/realmdomains.py:115 ipaserver/plugins/certmap.py:566 msgid "Domain" msgstr "" @@ -7181,6 +5290,12 @@ msgstr "" msgid "A description of this role-group" msgstr "" +msgid "Member users" +msgstr "" + +msgid "Member groups" +msgstr "" + msgid "Privileges" msgstr "" @@ -7471,6 +5586,9 @@ msgid "" "httpd.keytab\n" msgstr "" +msgid "Principal" +msgstr "" + #: ipaserver/plugins/service.py:502 msgid "Service principal" msgstr "" @@ -8172,8 +6290,8 @@ msgstr "" msgid "A description of this command" msgstr "" -#: ipaserver/plugins/baseldap.py:83 ipaserver/plugins/sudocmdgroup.py:118 -#: ipaserver/plugins/sudocmdgroup.py:138 +#: ipaserver/plugins/sudocmdgroup.py:118 ipaserver/plugins/sudocmdgroup.py:138 +#: ipaserver/plugins/baseldap.py:83 msgid "Sudo Command Groups" msgstr "" @@ -8228,7 +6346,11 @@ msgstr "" msgid "Sudo Command Group" msgstr "" -#: ipaserver/plugins/internal.py:1400 ipaserver/plugins/sudocmdgroup.py:134 +#: ipaserver/plugins/sudocmdgroup.py:131 ipaserver/plugins/group.py:343 +msgid "Group description" +msgstr "" + +#: ipaserver/plugins/sudocmdgroup.py:134 ipaserver/plugins/internal.py:1400 msgid "Commands" msgstr "" @@ -8276,6 +6398,1784 @@ msgstr "" msgid "Display Sudo Command Group." msgstr "" +msgid "" +"\n" +"Users\n" +"\n" +"Manage user entries. All users are POSIX users.\n" +"\n" +"IPA supports a wide range of username formats, but you need to be aware of " +"any\n" +"restrictions that may apply to your particular environment. For example,\n" +"usernames that start with a digit or usernames that exceed a certain length\n" +"may cause problems for some UNIX systems.\n" +"Use 'ipa config-mod' to change the username format allowed by IPA tools.\n" +"\n" +"Disabling a user account prevents that user from obtaining new Kerberos\n" +"credentials. It does not invalidate any credentials that have already\n" +"been issued.\n" +"\n" +"Password management is not a part of this module. For more information\n" +"about this topic please see: ipa help passwd\n" +"\n" +"Account lockout on password failure happens per IPA master. The user-status\n" +"command can be used to identify which master the user is locked out on.\n" +"It is on that master the administrator must unlock the user.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Add a new user:\n" +" ipa user-add --first=Tim --last=User --password tuser1\n" +"\n" +" Find all users whose entries include the string \"Tim\":\n" +" ipa user-find Tim\n" +"\n" +" Find all users with \"Tim\" as the first name:\n" +" ipa user-find --first=Tim\n" +"\n" +" Disable a user account:\n" +" ipa user-disable tuser1\n" +"\n" +" Enable a user account:\n" +" ipa user-enable tuser1\n" +"\n" +" Delete a user:\n" +" ipa user-del tuser1\n" +msgstr "" + +msgid "First name" +msgstr "" + +msgid "Last name" +msgstr "" + +#: ipaserver/plugins/baseuser.py:221 +msgid "Full name" +msgstr "" + +msgid "Display name" +msgstr "" + +msgid "Initials" +msgstr "" + +msgid "Kerberos principal" +msgstr "" + +#: ipaserver/plugins/baseuser.py:267 +msgid "Kerberos principal expiration" +msgstr "" + +msgid "Email address" +msgstr "" + +msgid "Prompt to set the user password" +msgstr "" + +msgid "Generate a random user password" +msgstr "" + +msgid "User ID Number (system will assign one if not provided)" +msgstr "" + +msgid "Street address" +msgstr "" + +msgid "City" +msgstr "" + +msgid "State/Province" +msgstr "" + +msgid "ZIP" +msgstr "" + +msgid "Telephone Number" +msgstr "" + +msgid "Mobile Telephone Number" +msgstr "" + +msgid "Pager Number" +msgstr "" + +msgid "Fax Number" +msgstr "" + +msgid "Org. Unit" +msgstr "" + +msgid "Job Title" +msgstr "" + +#: ipaserver/plugins/baseuser.py:343 +msgid "Manager" +msgstr "" + +msgid "Car License" +msgstr "" + +msgid "Account disabled" +msgstr "" + +#: ipaserver/plugins/baseuser.py:361 +msgid "User authentication types" +msgstr "" + +#: ipaserver/plugins/baseuser.py:362 +msgid "Types of supported user authentication" +msgstr "" + +#: ipaserver/plugins/baseuser.py:368 +msgid "" +"User category (semantics placed on this attribute are for local " +"interpretation)" +msgstr "" + +#: ipaserver/plugins/baseuser.py:373 +msgid "RADIUS proxy configuration" +msgstr "" + +#: ipaserver/plugins/baseuser.py:377 +msgid "RADIUS proxy username" +msgstr "" + +#: ipaserver/plugins/baseuser.py:380 +msgid "Department Number" +msgstr "" + +#: ipaserver/plugins/baseuser.py:383 +msgid "Employee Number" +msgstr "" + +#: ipaserver/plugins/baseuser.py:386 +msgid "Employee Type" +msgstr "" + +#: ipaserver/plugins/baseuser.py:389 +msgid "Preferred Language" +msgstr "" + +msgid "Member of groups" +msgstr "" + +msgid "Indirect Member of group" +msgstr "" + +msgid "Kerberos keys available" +msgstr "" + +msgid "Add a new user." +msgstr "" + +msgid "Don't create user private group" +msgstr "" + +msgid "Delete a user." +msgstr "" + +msgid "Disable a user account." +msgstr "" + +msgid "Enable a user account." +msgstr "" + +msgid "Search for users." +msgstr "" + +msgid "Self" +msgstr "" + +msgid "Display user record for current Kerberos principal" +msgstr "" + +msgid "Results should contain primary key attribute only (\"login\")" +msgstr "" + +msgid "Search for users with these member of groups." +msgstr "" + +msgid "Search for users without these member of groups." +msgstr "" + +msgid "Search for users with these member of netgroups." +msgstr "" + +msgid "Search for users without these member of netgroups." +msgstr "" + +msgid "Search for users with these member of roles." +msgstr "" + +msgid "Search for users without these member of roles." +msgstr "" + +msgid "Search for users with these member of HBAC rules." +msgstr "" + +msgid "Search for users without these member of HBAC rules." +msgstr "" + +msgid "Search for users with these member of sudo rules." +msgstr "" + +msgid "Search for users without these member of sudo rules." +msgstr "" + +msgid "Modify a user." +msgstr "" + +msgid "Rename the user object" +msgstr "" + +msgid "Display information about a user." +msgstr "" + +msgid "" +"\n" +"Lockout status of a user account\n" +"\n" +" An account may become locked if the password is entered incorrectly too\n" +" many times within a specific time period as controlled by password\n" +" policy. A locked account is a temporary condition and may be unlocked " +"by\n" +" an administrator.\n" +"\n" +" This connects to each IPA master and displays the lockout status on\n" +" each one.\n" +"\n" +" To determine whether an account is locked on a given server you need\n" +" to compare the number of failed logins and the time of the last " +"failure.\n" +" For an account to be locked it must exceed the maxfail failures within\n" +" the failinterval duration as specified in the password policy " +"associated\n" +" with the user.\n" +"\n" +" The failed login counter is modified only when a user attempts a log in\n" +" so it is possible that an account may appear locked but the last failed\n" +" login attempt is older than the lockouttime of the password policy. " +"This\n" +" means that the user may attempt a login again.\n" +" " +msgstr "" + +msgid "" +"\n" +"Unlock a user account\n" +"\n" +" An account may become locked if the password is entered incorrectly too\n" +" many times within a specific time period as controlled by password\n" +" policy. A locked account is a temporary condition and may be unlocked " +"by\n" +" an administrator.\n" +" " +msgstr "" + +msgid "" +"\n" +"Auto Membership Rule.\n" +"\n" +"Bring clarity to the membership of hosts and users by configuring inclusive\n" +"or exclusive regex patterns, you can automatically assign a new entries " +"into\n" +"a group or hostgroup based upon attribute information.\n" +"\n" +"A rule is directly associated with a group by name, so you cannot create\n" +"a rule without an accompanying group or hostgroup.\n" +"\n" +"A condition is a regular expression used by 389-ds to match a new incoming\n" +"entry with an automember rule. If it matches an inclusive rule then the\n" +"entry is added to the appropriate group or hostgroup.\n" +"\n" +"A default group or hostgroup could be specified for entries that do not\n" +"match any rule. In case of user entries this group will be a fallback group\n" +"because all users are by default members of group specified in IPA config.\n" +"\n" +"The automember-rebuild command can be used to retroactively run automember " +"rules\n" +"against existing entries, thus rebuilding their membership.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Add the initial group or hostgroup:\n" +" ipa hostgroup-add --desc=\"Web Servers\" webservers\n" +" ipa group-add --desc=\"Developers\" devel\n" +"\n" +" Add the initial rule:\n" +" ipa automember-add --type=hostgroup webservers\n" +" ipa automember-add --type=group devel\n" +"\n" +" Add a condition to the rule:\n" +" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" +"regex=^web[1-9]+\\.example\\.com webservers\n" +" ipa automember-add-condition --key=manager --type=group --inclusive-" +"regex=^uid=mscott devel\n" +"\n" +" Add an exclusive condition to the rule to prevent auto assignment:\n" +" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" +"regex=^web5\\.example\\.com webservers\n" +"\n" +" Add a host:\n" +" ipa host-add web1.example.com\n" +"\n" +" Add a user:\n" +" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" +"\n" +" Verify automembership:\n" +" ipa hostgroup-show webservers\n" +" Host-group: webservers\n" +" Description: Web Servers\n" +" Member hosts: web1.example.com\n" +"\n" +" ipa group-show devel\n" +" Group name: devel\n" +" Description: Developers\n" +" GID: 1004200000\n" +" Member users: tuser\n" +"\n" +" Remove a condition from the rule:\n" +" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" +"regex=^web[1-9]+\\.example\\.com webservers\n" +"\n" +" Modify the automember rule:\n" +" ipa automember-mod\n" +"\n" +" Set the default (fallback) target group:\n" +" ipa automember-default-group-set --default-group=webservers --" +"type=hostgroup\n" +" ipa automember-default-group-set --default-group=ipausers --type=group\n" +"\n" +" Remove the default (fallback) target group:\n" +" ipa automember-default-group-remove --type=hostgroup\n" +" ipa automember-default-group-remove --type=group\n" +"\n" +" Show the default (fallback) target group:\n" +" ipa automember-default-group-show --type=hostgroup\n" +" ipa automember-default-group-show --type=group\n" +"\n" +" Find all of the automember rules:\n" +" ipa automember-find\n" +"\n" +" Display a automember rule:\n" +" ipa automember-show --type=hostgroup webservers\n" +" ipa automember-show --type=group devel\n" +"\n" +" Delete an automember rule:\n" +" ipa automember-del --type=hostgroup webservers\n" +" ipa automember-del --type=group devel\n" +"\n" +" Rebuild membership for all users:\n" +" ipa automember-rebuild --type=group\n" +"\n" +" Rebuild membership for all hosts:\n" +" ipa automember-rebuild --type=hostgroup\n" +"\n" +" Rebuild membership for specified users:\n" +" ipa automember-rebuild --users=tuser1 --users=tuser2\n" +"\n" +" Rebuild membership for specified hosts:\n" +" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example." +"com\n" +msgstr "" + +#: ipaserver/plugins/automember.py:258 +msgid "A description of this auto member rule" +msgstr "" + +#: ipaserver/plugins/automember.py:262 ipaserver/plugins/automember.py:585 +msgid "Default (fallback) Group" +msgstr "" + +#: ipaserver/plugins/automember.py:263 +msgid "Default group for entries to land" +msgstr "" + +msgid "Add an automember rule." +msgstr "" + +#: ipaserver/plugins/automember.py:249 ipaserver/plugins/automember.py:250 +msgid "Automember Rule" +msgstr "" + +#: ipaserver/plugins/automember.py:184 +msgid "Grouping Type" +msgstr "" + +#: ipaserver/plugins/automember.py:185 +msgid "Grouping to which the rule applies" +msgstr "" + +msgid "Add conditions to an automember rule." +msgstr "" + +#: ipaserver/plugins/automember.py:160 ipaserver/plugins/automember.py:161 +msgid "Inclusive Regex" +msgstr "" + +#: ipaserver/plugins/automember.py:167 ipaserver/plugins/automember.py:168 +msgid "Exclusive Regex" +msgstr "" + +#: ipaserver/plugins/automember.py:176 +msgid "Attribute Key" +msgstr "" + +#: ipaserver/plugins/automember.py:177 +msgid "" +"Attribute to filter via regex. For example fqdn for a host, or manager for a " +"user" +msgstr "" + +#: ipaserver/plugins/automember.py:357 +msgid "Conditions that could not be added" +msgstr "" + +#: ipaserver/plugins/automember.py:361 +msgid "Number of conditions added" +msgstr "" + +msgid "Remove default (fallback) group for all unmatched entries." +msgstr "" + +msgid "Set default (fallback) group for all unmatched entries." +msgstr "" + +#: ipaserver/plugins/automember.py:586 +msgid "Default (fallback) group for entries to land" +msgstr "" + +msgid "Display information about the default (fallback) automember groups." +msgstr "" + +msgid "Delete an automember rule." +msgstr "" + +msgid "Search for automember rules." +msgstr "" + +msgid "Modify an automember rule." +msgstr "" + +#: ipaserver/plugins/automember.py:683 +msgid "Rebuild auto membership." +msgstr "" + +#: ipaserver/plugins/automember.py:693 +msgid "Rebuild membership for all members of a grouping" +msgstr "" + +#: ipaserver/plugins/automember.py:698 +msgid "Rebuild membership for specified users" +msgstr "" + +#: ipaserver/plugins/automember.py:703 +msgid "Rebuild membership for specified hosts" +msgstr "" + +#: ipaserver/plugins/automember.py:708 +msgid "No wait" +msgstr "" + +#: ipaserver/plugins/automember.py:709 +msgid "Don't wait for rebuilding membership" +msgstr "" + +msgid "Remove conditions from an automember rule." +msgstr "" + +#: ipaserver/plugins/automember.py:441 +msgid "Conditions that could not be removed" +msgstr "" + +#: ipaserver/plugins/automember.py:445 +msgid "Number of conditions removed" +msgstr "" + +msgid "Display information about an automember rule." +msgstr "" + +msgid "" +"\n" +"IPA certificate operations\n" +"\n" +"Implements a set of commands for managing server SSL certificates.\n" +"\n" +"Certificate requests exist in the form of a Certificate Signing Request " +"(CSR)\n" +"in PEM format.\n" +"\n" +"The dogtag CA uses just the CN value of the CSR and forces the rest of the\n" +"subject to values configured in the server.\n" +"\n" +"A certificate is stored with a service principal and a service principal\n" +"needs a host.\n" +"\n" +"In order to request a certificate:\n" +"\n" +"* The host must exist\n" +"* The service must exist (or you use the --add option to automatically add " +"it)\n" +"\n" +"SEARCHING:\n" +"\n" +"Certificates may be searched on by certificate subject, serial number,\n" +"revocation reason, validity dates and the issued date.\n" +"\n" +"When searching on dates the _from date does a >= search and the _to date\n" +"does a <= search. When combined these are done as an AND.\n" +"\n" +"Dates are treated as GMT to match the dates in the certificates.\n" +"\n" +"The date format is YYYY-mm-dd.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Request a new certificate and add the principal:\n" +" ipa cert-request --add --principal=HTTP/lion.example.com example.csr\n" +"\n" +" Retrieve an existing certificate:\n" +" ipa cert-show 1032\n" +"\n" +" Revoke a certificate (see RFC 5280 for reason details):\n" +" ipa cert-revoke --revocation-reason=6 1032\n" +"\n" +" Remove a certificate from revocation hold status:\n" +" ipa cert-remove-hold 1032\n" +"\n" +" Check the status of a signing request:\n" +" ipa cert-status 10\n" +"\n" +" Search for certificates by hostname:\n" +" ipa cert-find --subject=ipaserver.example.com\n" +"\n" +" Search for revoked certificates by reason:\n" +" ipa cert-find --revocation-reason=5\n" +"\n" +" Search for certificates based on issuance date\n" +" ipa cert-find --issuedon-from=2013-02-01 --issuedon-to=2013-02-07\n" +"\n" +"IPA currently immediately issues (or declines) all certificate requests so\n" +"the status of a request is not normally useful. This is for future use\n" +"or the case where a CA does not immediately issue a certificate.\n" +"\n" +"The following revocation reasons are supported:\n" +"\n" +" * 0 - unspecified\n" +" * 1 - keyCompromise\n" +" * 2 - cACompromise\n" +" * 3 - affiliationChanged\n" +" * 4 - superseded\n" +" * 5 - cessationOfOperation\n" +" * 6 - certificateHold\n" +" * 8 - removeFromCRL\n" +" * 9 - privilegeWithdrawn\n" +" * 10 - aACompromise\n" +"\n" +"Note that reason code 7 is not used. See RFC 5280 for more details:\n" +"\n" +"http://www.ietf.org/rfc/rfc5280.txt\n" +msgstr "" + +msgid "Checks if any of the servers has the CA service enabled." +msgstr "" + +msgid "Search for existing certificates." +msgstr "" + +msgid "Match cn attribute in subject" +msgstr "" + +msgid "Reason" +msgstr "" + +msgid "Reason for revoking the certificate (0-10)" +msgstr "" + +msgid "minimum serial number" +msgstr "" + +msgid "maximum serial number" +msgstr "" + +msgid "match the common name exactly" +msgstr "" + +msgid "Valid not after from this date (YYYY-mm-dd)" +msgstr "" + +msgid "Valid not after to this date (YYYY-mm-dd)" +msgstr "" + +msgid "Valid not before from this date (YYYY-mm-dd)" +msgstr "" + +msgid "Valid not before to this date (YYYY-mm-dd)" +msgstr "" + +msgid "Issued on from this date (YYYY-mm-dd)" +msgstr "" + +msgid "Issued on to this date (YYYY-mm-dd)" +msgstr "" + +msgid "Revoked on from this date (YYYY-mm-dd)" +msgstr "" + +msgid "Revoked on to this date (YYYY-mm-dd)" +msgstr "" + +msgid "Maximum number of certs returned" +msgstr "" + +msgid "Take a revoked certificate off hold." +msgstr "" + +msgid "Serial number" +msgstr "" + +msgid "Serial number in decimal or if prefixed with 0x in hexadecimal" +msgstr "" + +msgid "Submit a certificate signing request." +msgstr "" + +msgid "CSR" +msgstr "" + +msgid "Service principal for this certificate (e.g. HTTP/test.example.com)" +msgstr "" + +msgid "automatically add the principal if it doesn't exist" +msgstr "" + +msgid "Revoke a certificate." +msgstr "" + +msgid "Retrieve an existing certificate." +msgstr "" + +msgid "Output filename" +msgstr "" + +msgid "File to store the certificate in." +msgstr "" + +msgid "Check the status of a certificate signing request." +msgstr "" + +msgid "Request id" +msgstr "" + +msgid "" +"\n" +"Groups of users\n" +"\n" +"Manage groups of users. By default, new groups are POSIX groups. You\n" +"can add the --nonposix option to the group-add command to mark a new group\n" +"as non-POSIX. You can use the --posix argument with the group-mod command\n" +"to convert a non-POSIX group into a POSIX group. POSIX groups cannot be\n" +"converted to non-POSIX groups.\n" +"\n" +"Every group must have a description.\n" +"\n" +"POSIX groups must have a Group ID (GID) number. Changing a GID is\n" +"supported but can have an impact on your file permissions. It is not " +"necessary\n" +"to supply a GID when creating a group. IPA will generate one automatically\n" +"if it is not provided.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Add a new group:\n" +" ipa group-add --desc='local administrators' localadmins\n" +"\n" +" Add a new non-POSIX group:\n" +" ipa group-add --nonposix --desc='remote administrators' remoteadmins\n" +"\n" +" Convert a non-POSIX group to posix:\n" +" ipa group-mod --posix remoteadmins\n" +"\n" +" Add a new POSIX group with a specific Group ID number:\n" +" ipa group-add --gid=500 --desc='unix admins' unixadmins\n" +"\n" +" Add a new POSIX group and let IPA assign a Group ID number:\n" +" ipa group-add --desc='printer admins' printeradmins\n" +"\n" +" Remove a group:\n" +" ipa group-del unixadmins\n" +"\n" +" To add the \"remoteadmins\" group to the \"localadmins\" group:\n" +" ipa group-add-member --groups=remoteadmins localadmins\n" +"\n" +" Add multiple users to the \"localadmins\" group:\n" +" ipa group-add-member --users=test1 --users=test2 localadmins\n" +"\n" +" Remove a user from the \"localadmins\" group:\n" +" ipa group-remove-member --users=test2 localadmins\n" +"\n" +" Display information about a named group.\n" +" ipa group-show localadmins\n" +"\n" +"External group membership is designed to allow users from trusted domains\n" +"to be mapped to local POSIX groups in order to actually use IPA resources.\n" +"External members should be added to groups that specifically created as\n" +"external and non-POSIX. Such group later should be included into one of " +"POSIX\n" +"groups.\n" +"\n" +"An external group member is currently a Security Identifier (SID) as defined " +"by\n" +"the trusted domain. When adding external group members, it is possible to\n" +"specify them in either SID, or DOM\\name, or name@domain format. IPA will " +"attempt\n" +"to resolve passed name to SID with the use of Global Catalog of the trusted " +"domain.\n" +"\n" +"Example:\n" +"\n" +"1. Create group for the trusted domain admins' mapping and their local POSIX " +"group:\n" +"\n" +" ipa group-add --desc=' admins external map' ad_admins_external " +"--external\n" +" ipa group-add --desc=' admins' ad_admins\n" +"\n" +"2. Add security identifier of Domain Admins of the to the " +"ad_admins_external\n" +" group:\n" +"\n" +" ipa group-add-member ad_admins_external --external 'AD\\Domain Admins'\n" +"\n" +"3. Allow members of ad_admins_external group to be associated with ad_admins " +"POSIX group:\n" +"\n" +" ipa group-add-member ad_admins --groups ad_admins_external\n" +"\n" +"4. List members of external members of ad_admins_external group to see their " +"SIDs:\n" +"\n" +" ipa group-show ad_admins_external\n" +msgstr "" + +msgid "GID (use this option to set it manually)" +msgstr "" + +msgid "Indirect Member users" +msgstr "" + +msgid "Indirect Member groups" +msgstr "" + +msgid "Create a new group." +msgstr "" + +msgid "Create as a non-POSIX group" +msgstr "" + +msgid "Allow adding external non-IPA members from trusted domains" +msgstr "" + +msgid "Add members to a group." +msgstr "" + +msgid "External member" +msgstr "" + +msgid "Members of a trusted domain in DOM\\name or name@domain form" +msgstr "" + +msgid "Delete group." +msgstr "" + +msgid "Detach a managed group from a user." +msgstr "" + +msgid "Search for groups." +msgstr "" + +msgid "search for private groups" +msgstr "" + +msgid "search for POSIX groups" +msgstr "" + +msgid "" +"search for groups with support of external non-IPA members from trusted " +"domains" +msgstr "" + +msgid "search for non-POSIX groups" +msgstr "" + +msgid "Results should contain primary key attribute only (\"group-name\")" +msgstr "" + +msgid "Search for groups with these member users." +msgstr "" + +msgid "Search for groups without these member users." +msgstr "" + +msgid "Search for groups with these member groups." +msgstr "" + +msgid "Search for groups without these member groups." +msgstr "" + +msgid "Search for groups with these member of groups." +msgstr "" + +msgid "Search for groups without these member of groups." +msgstr "" + +msgid "Search for groups with these member of netgroups." +msgstr "" + +msgid "Search for groups without these member of netgroups." +msgstr "" + +msgid "Search for groups with these member of roles." +msgstr "" + +msgid "Search for groups without these member of roles." +msgstr "" + +msgid "Search for groups with these member of HBAC rules." +msgstr "" + +msgid "Search for groups without these member of HBAC rules." +msgstr "" + +msgid "Search for groups with these member of sudo rules." +msgstr "" + +msgid "Search for groups without these member of sudo rules." +msgstr "" + +msgid "Modify a group." +msgstr "" + +msgid "change to a POSIX group" +msgstr "" + +msgid "change to support external non-IPA members from trusted domains" +msgstr "" + +msgid "Rename the group object" +msgstr "" + +msgid "Remove members from a group." +msgstr "" + +msgid "Display information about a named group." +msgstr "" + +msgid "" +"\n" +"Simulate use of Host-based access controls\n" +"\n" +"HBAC rules control who can access what services on what hosts.\n" +"You can use HBAC to control which users or groups can access a service,\n" +"or group of services, on a target host.\n" +"\n" +"Since applying HBAC rules implies use of a production environment,\n" +"this plugin aims to provide simulation of HBAC rules evaluation without\n" +"having access to the production environment.\n" +"\n" +" Test user coming to a service on a named host against\n" +" existing enabled rules.\n" +"\n" +" ipa hbactest --user= --host= --service=\n" +" [--rules=rules-list] [--nodetail] [--enabled] [--disabled]\n" +" [--sizelimit= ]\n" +"\n" +" --user, --host, and --service are mandatory, others are optional.\n" +"\n" +" If --rules is specified simulate enabling of the specified rules and test\n" +" the login of the user using only these rules.\n" +"\n" +" If --enabled is specified, all enabled HBAC rules will be added to " +"simulation\n" +"\n" +" If --disabled is specified, all disabled HBAC rules will be added to " +"simulation\n" +"\n" +" If --nodetail is specified, do not return information about rules matched/" +"not matched.\n" +"\n" +" If both --rules and --enabled are specified, apply simulation to --rules " +"_and_\n" +" all IPA enabled rules.\n" +"\n" +" If no --rules specified, simulation is run against all IPA enabled rules.\n" +" By default there is a IPA-wide limit to number of entries fetched, you can " +"change it\n" +" with --sizelimit option.\n" +"\n" +"EXAMPLES:\n" +"\n" +" 1. Use all enabled HBAC rules in IPA database to simulate:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: my-third-rule\n" +" Not matched rules: myrule\n" +" Matched rules: allow_all\n" +"\n" +" 2. Disable detailed summary of how rules were applied:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd --nodetail\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +"\n" +" 3. Test explicitly specified HBAC rules:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\n" +" --rules=myrule --rules=my-second-rule\n" +" ---------------------\n" +" Access granted: False\n" +" ---------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: myrule\n" +"\n" +" 4. Use all enabled HBAC rules in IPA database + explicitly specified " +"rules:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\n" +" --rules=myrule --rules=my-second-rule --enabled\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: my-third-rule\n" +" Not matched rules: myrule\n" +" Matched rules: allow_all\n" +"\n" +" 5. Test all disabled HBAC rules in IPA database:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd --disabled\n" +" ---------------------\n" +" Access granted: False\n" +" ---------------------\n" +" Not matched rules: new-rule\n" +"\n" +" 6. Test all disabled HBAC rules in IPA database + explicitly specified " +"rules:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\n" +" --rules=myrule --rules=my-second-rule --disabled\n" +" ---------------------\n" +" Access granted: False\n" +" ---------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: my-third-rule\n" +" Not matched rules: myrule\n" +"\n" +" 7. Test all (enabled and disabled) HBAC rules in IPA database:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\n" +" --enabled --disabled\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: my-third-rule\n" +" Not matched rules: myrule\n" +" Not matched rules: new-rule\n" +" Matched rules: allow_all\n" +"\n" +"\n" +"HBACTEST AND TRUSTED DOMAINS\n" +"\n" +"When an external trusted domain is configured in IPA, HBAC rules are also " +"applied\n" +"on users accessing IPA resources from the trusted domain. Trusted domain " +"users and\n" +"groups (and their SIDs) can be then assigned to external groups which can " +"be\n" +"members of POSIX groups in IPA which can be used in HBAC rules and thus " +"allowing\n" +"access to resources protected by the HBAC system.\n" +"\n" +"hbactest plugin is capable of testing access for both local IPA users and " +"users\n" +"from the trusted domains, either by a fully qualified user name or by user " +"SID.\n" +"Such user names need to have a trusted domain specified as a short name\n" +"(DOMAIN\\Administrator) or with a user principal name (UPN), " +"Administrator@ad.test.\n" +"\n" +"Please note that hbactest executed with a trusted domain user as --user " +"parameter\n" +"can be only run by members of \"trust admins\" group.\n" +"\n" +"EXAMPLES:\n" +"\n" +" 1. Test if a user from a trusted domain specified by its shortname " +"matches any\n" +" rule:\n" +"\n" +" $ ipa hbactest --user 'DOMAIN\\Administrator' --host `hostname` --" +"service sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Matched rules: can_login\n" +"\n" +" 2. Test if a user from a trusted domain specified by its domain name " +"matches\n" +" any rule:\n" +"\n" +" $ ipa hbactest --user 'Administrator@domain.com' --host `hostname` --" +"service sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Matched rules: can_login\n" +"\n" +" 3. Test if a user from a trusted domain specified by its SID matches any " +"rule:\n" +"\n" +" $ ipa hbactest --user S-1-5-21-3035198329-144811719-1378114514-500 \\\n" +" --host `hostname` --service sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Matched rules: can_login\n" +"\n" +" 4. Test if other user from a trusted domain specified by its SID matches " +"any rule:\n" +"\n" +" $ ipa hbactest --user S-1-5-21-3035198329-144811719-1378114514-1203 \\\n" +" --host `hostname` --service sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Not matched rules: can_login\n" +"\n" +" 5. Test if other user from a trusted domain specified by its shortname " +"matches\n" +" any rule:\n" +"\n" +" $ ipa hbactest --user 'DOMAIN\\Otheruser' --host `hostname` --service " +"sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Not matched rules: can_login\n" +msgstr "" + +#: ipaserver/plugins/hbactest.py:256 +msgid "Simulate use of Host-based access controls" +msgstr "" + +#: ipaserver/plugins/hbactest.py:281 +msgid "Target host" +msgstr "" + +#: ipaserver/plugins/hbactest.py:289 +msgid "Rules to test. If not specified, --enabled is assumed" +msgstr "" + +#: ipaserver/plugins/hbactest.py:293 +msgid "Hide details which rules are matched, not matched, or invalid" +msgstr "" + +#: ipaserver/plugins/hbactest.py:297 +msgid "Include all enabled IPA rules into test [default]" +msgstr "" + +#: ipaserver/plugins/hbactest.py:301 +msgid "Include all disabled IPA rules into test" +msgstr "" + +#: ipaserver/plugins/hbactest.py:305 +msgid "Maximum number of rules to process when no --rules is specified" +msgstr "" + +#: ipaserver/plugins/hbactest.py:260 +msgid "Warning" +msgstr "" + +#: ipaserver/plugins/hbactest.py:261 +msgid "Matched rules" +msgstr "" + +#: ipaserver/plugins/hbactest.py:262 +msgid "Not matched rules" +msgstr "" + +#: ipaserver/plugins/hbactest.py:263 +msgid "Non-existent or invalid rules" +msgstr "" + +#: ipaserver/plugins/hbactest.py:264 +msgid "Result of simulation" +msgstr "" + +msgid "" +"\n" +"Cross-realm trusts\n" +"\n" +"Manage trust relationship between IPA and Active Directory domains.\n" +"\n" +"In order to allow users from a remote domain to access resources in IPA\n" +"domain, trust relationship needs to be established. Currently IPA supports\n" +"only trusts between IPA and Active Directory domains under control of " +"Windows\n" +"Server 2008 or later, with functional level 2008 or later.\n" +"\n" +"Please note that DNS on both IPA and Active Directory domain sides should " +"be\n" +"configured properly to discover each other. Trust relationship relies on\n" +"ability to discover special resources in the other domain via DNS records.\n" +"\n" +"Examples:\n" +"\n" +"1. Establish cross-realm trust with Active Directory using AD administrator\n" +" credentials:\n" +"\n" +" ipa trust-add --type=ad --admin --" +"password\n" +"\n" +"2. List all existing trust relationships:\n" +"\n" +" ipa trust-find\n" +"\n" +"3. Show details of the specific trust relationship:\n" +"\n" +" ipa trust-show \n" +"\n" +"4. Delete existing trust relationship:\n" +"\n" +" ipa trust-del \n" +"\n" +"Once trust relationship is established, remote users will need to be mapped\n" +"to local POSIX groups in order to actually use IPA resources. The mapping " +"should\n" +"be done via use of external membership of non-POSIX group and then this " +"group\n" +"should be included into one of local POSIX groups.\n" +"\n" +"Example:\n" +"\n" +"1. Create group for the trusted domain admins' mapping and their local POSIX " +"group:\n" +"\n" +" ipa group-add --desc=' admins external map' ad_admins_external " +"--external\n" +" ipa group-add --desc=' admins' ad_admins\n" +"\n" +"2. Add security identifier of Domain Admins of the to the " +"ad_admins_external\n" +" group:\n" +"\n" +" ipa group-add-member ad_admins_external --external 'AD\\Domain Admins'\n" +"\n" +"3. Allow members of ad_admins_external group to be associated with ad_admins " +"POSIX group:\n" +"\n" +" ipa group-add-member ad_admins --groups ad_admins_external\n" +"\n" +"4. List members of external members of ad_admins_external group to see their " +"SIDs:\n" +"\n" +" ipa group-show ad_admins_external\n" +"\n" +"\n" +"GLOBAL TRUST CONFIGURATION\n" +"\n" +"When IPA AD trust subpackage is installed and ipa-adtrust-install is run,\n" +"a local domain configuration (SID, GUID, NetBIOS name) is generated. These\n" +"identifiers are then used when communicating with a trusted domain of the\n" +"particular type.\n" +"\n" +"1. Show global trust configuration for Active Directory type of trusts:\n" +"\n" +" ipa trustconfig-show --type ad\n" +"\n" +"2. Modify global configuration for all trusts of Active Directory type and " +"set\n" +" a different fallback primary group (fallback primary group GID is used " +"as\n" +" a primary user GID if user authenticating to IPA domain does not have any " +"other\n" +" primary GID already set):\n" +"\n" +" ipa trustconfig-mod --type ad --fallback-primary-group \"alternative AD " +"group\"\n" +"\n" +"3. Change primary fallback group back to default hidden group (any group " +"with\n" +" posixGroup object class is allowed):\n" +"\n" +" ipa trustconfig-mod --type ad --fallback-primary-group \"Default SMB Group" +"\"\n" +msgstr "" + +#: ipaserver/plugins/internal.py:1537 ipaserver/plugins/trust.py:541 +#: ipaserver/plugins/trust.py:1585 +msgid "Domain NetBIOS name" +msgstr "" + +#: ipaserver/plugins/internal.py:1538 ipaserver/plugins/trust.py:545 +#: ipaserver/plugins/trust.py:1588 +msgid "Domain Security Identifier" +msgstr "" + +msgid "SID blacklist incoming" +msgstr "" + +msgid "SID blacklist outgoing" +msgstr "" + +msgid "Security Identifier" +msgstr "" + +msgid "NetBIOS name" +msgstr "" + +msgid "Domain GUID" +msgstr "" + +msgid "Fallback primary group" +msgstr "" + +#: ipaserver/plugins/certmap.py:298 +msgid "Domain name" +msgstr "" + +msgid "Trusted domain partner" +msgstr "" + +msgid "Determine whether ipa-adtrust-install has been run on this system" +msgstr "" + +msgid "" +"Determine whether Schema Compatibility plugin is configured to serve trusted " +"domain users and groups" +msgstr "" + +msgid "Determine whether ipa-adtrust-install has been run with sidgen task" +msgstr "" + +msgid "" +"\n" +"Add new trust to use.\n" +"\n" +"This command establishes trust relationship to another domain\n" +"which becomes 'trusted'. As result, users of the trusted domain\n" +"may access resources of this domain.\n" +"\n" +"Only trusts to Active Directory domains are supported right now.\n" +"\n" +"The command can be safely run multiple times against the same domain,\n" +"this will cause change to trust relationship credentials on both\n" +"sides.\n" +" " +msgstr "" + +msgid "Trust type (ad for Active Directory, default)" +msgstr "" + +#: ipaserver/plugins/trust.py:1798 +msgid "Active Directory domain administrator" +msgstr "" + +#: ipaserver/plugins/trust.py:1802 +msgid "Active Directory domain administrator's password" +msgstr "" + +#: ipaserver/plugins/trust.py:1807 +msgid "Domain controller for the Active Directory domain (optional)" +msgstr "" + +msgid "Shared secret for the trust" +msgstr "" + +msgid "First Posix ID of the range reserved for the trusted domain" +msgstr "" + +msgid "Size of the ID range reserved for the trusted domain" +msgstr "" + +#: ipaserver/plugins/idrange.py:253 ipaserver/plugins/internal.py:1246 +#: ipaserver/plugins/trust.py:710 +msgid "Range type" +msgstr "" + +msgid "" +"Type of trusted domain ID range, one of ipa-ad-trust-posix, ipa-ad-trust" +msgstr "" + +msgid "Delete a trust." +msgstr "" + +msgid "Refresh list of the domains associated with the trust" +msgstr "" + +msgid "Search for trusts." +msgstr "" + +msgid "Results should contain primary key attribute only (\"realm\")" +msgstr "" + +msgid "" +"\n" +"Modify a trust (for future use).\n" +"\n" +" Currently only the default option to modify the LDAP attributes is\n" +" available. More specific options will be added in coming releases.\n" +" " +msgstr "" + +msgid "Resolve security identifiers of users and groups in trusted domains" +msgstr "" + +msgid "Security Identifiers (SIDs)" +msgstr "" + +msgid "Display information about a trust." +msgstr "" + +msgid "Modify global trust configuration." +msgstr "" + +msgid "Show global trust configuration." +msgstr "" + +msgid "Allow access from the trusted domain" +msgstr "" + +msgid "Remove information about the domain associated with the trust." +msgstr "" + +msgid "Disable use of IPA resources by the domain of the trust" +msgstr "" + +msgid "Allow use of IPA resources by the domain of the trust" +msgstr "" + +msgid "Search domains of the trust" +msgstr "" + +msgid "Results should contain primary key attribute only (\"domain\")" +msgstr "" + +msgid "Modify trustdomain of the trust" +msgstr "" + +msgid "" +"\n" +"ID ranges\n" +"\n" +"Manage ID ranges used to map Posix IDs to SIDs and back.\n" +"\n" +"There are two type of ID ranges which are both handled by this utility:\n" +"\n" +" - the ID ranges of the local domain\n" +" - the ID ranges of trusted remote domains\n" +"\n" +"Both types have the following attributes in common:\n" +"\n" +" - base-id: the first ID of the Posix ID range\n" +" - range-size: the size of the range\n" +"\n" +"With those two attributes a range object can reserve the Posix IDs starting\n" +"with base-id up to but not including base-id+range-size exclusively.\n" +"\n" +"Additionally an ID range of the local domain may set\n" +" - rid-base: the first RID(*) of the corresponding RID range\n" +" - secondary-rid-base: first RID of the secondary RID range\n" +"\n" +"and an ID range of a trusted domain must set\n" +" - rid-base: the first RID of the corresponding RID range\n" +" - sid: domain SID of the trusted domain\n" +"\n" +"\n" +"\n" +"EXAMPLE: Add a new ID range for a trusted domain\n" +"\n" +"Since there might be more than one trusted domain the domain SID must be " +"given\n" +"while creating the ID range.\n" +"\n" +" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" +"base=0 --dom-sid=S-1-5-21-123-456-789 trusted_dom_range\n" +"\n" +"This ID range is then used by the IPA server and the SSSD IPA provider to\n" +"assign Posix UIDs to users from the trusted domain.\n" +"\n" +"If e.g. a range for a trusted domain is configured with the following " +"values:\n" +" base-id = 1200000\n" +" range-size = 200000\n" +" rid-base = 0\n" +"the RIDs 0 to 199999 are mapped to the Posix ID from 1200000 to 13999999. " +"So\n" +"RID 1000 <-> Posix ID 1201000\n" +"\n" +"\n" +"\n" +"EXAMPLE: Add a new ID range for the local domain\n" +"\n" +"To create an ID range for the local domain it is not necessary to specify a\n" +"domain SID. But since it is possible that a user and a group can have the " +"same\n" +"value as Posix ID a second RID interval is needed to handle conflicts.\n" +"\n" +" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" +"base=1000 --secondary-rid-base=1000000 local_range\n" +"\n" +"The data from the ID ranges of the local domain are used by the IPA server\n" +"internally to assign SIDs to IPA users and groups. The SID will then be " +"stored\n" +"in the user or group objects.\n" +"\n" +"If e.g. the ID range for the local domain is configured with the values " +"from\n" +"the example above then a new user with the UID 1200007 will get the RID " +"1007.\n" +"If this RID is already used by a group the RID will be 1000007. This can " +"only\n" +"happen if a user or a group object was created with a fixed ID because the\n" +"automatic assignment will not assign the same ID twice. Since there are " +"only\n" +"users and groups sharing the same ID namespace it is sufficient to have " +"only\n" +"one fallback range to handle conflicts.\n" +"\n" +"To find the Posix ID for a given RID from the local domain it has to be\n" +"checked first if the RID falls in the primary or secondary RID range and\n" +"the rid-base or the secondary-rid-base has to be subtracted, respectively,\n" +"and the base-id has to be added to get the Posix ID.\n" +"\n" +"Typically the creation of ID ranges happens behind the scenes and this CLI\n" +"must not be used at all. The ID range for the local domain will be created\n" +"during installation or upgrade from an older version. The ID range for a\n" +"trusted domain will be created together with the trust by 'ipa trust-" +"add ...'.\n" +"\n" +"USE CASES:\n" +"\n" +" Add an ID range from a transitively trusted domain\n" +"\n" +" If the trusted domain (A) trusts another domain (B) as well and this " +"trust\n" +" is transitive 'ipa trust-add domain-A' will only create a range for\n" +" domain A. The ID range for domain B must be added manually.\n" +"\n" +" Add an additional ID range for the local domain\n" +"\n" +" If the ID range of the local domain is exhausted, i.e. no new IDs can " +"be\n" +" assigned to Posix users or groups by the DNA plugin, a new range has to " +"be\n" +" created to allow new users and groups to be added. (Currently there is " +"no\n" +" connection between this range CLI and the DNA plugin, but a future " +"version\n" +" might be able to modify the configuration of the DNS plugin as well)\n" +"\n" +"In general it is not necessary to modify or delete ID ranges. If there is " +"no\n" +"other way to achieve a certain configuration than to modify or delete an ID\n" +"range it should be done with great care. Because UIDs are stored in the " +"file\n" +"system and are used for access control it might be possible that users are\n" +"allowed to access files of other users if an ID range got deleted and " +"reused\n" +"for a different domain.\n" +"\n" +"(*) The RID is typically the last integer of a user or group SID which " +"follows\n" +"the domain SID. E.g. if the domain SID is S-1-5-21-123-456-789 and a user " +"from\n" +"this domain has the SID S-1-5-21-123-456-789-1010 then 1010 is the RID of " +"the\n" +"user. RIDs are unique in a domain, 32bit values and are used for users and\n" +"groups.\n" +"\n" +"WARNING:\n" +"\n" +"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " +"the\n" +"local domain. Currently the DNA plugin *cannot* be reconfigured itself " +"based\n" +"on the local ranges set via this family of commands.\n" +"\n" +"Manual configuration change has to be done in the DNA plugin configuration " +"for\n" +"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" +"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " +"be\n" +"modified to match the new range.\n" +msgstr "" + +#: ipaserver/plugins/idrange.py:219 +msgid "Range name" +msgstr "" + +#: ipaserver/plugins/idrange.py:224 +msgid "First Posix ID of the range" +msgstr "" + +#: ipaserver/plugins/idrange.py:230 +msgid "Number of IDs in the range" +msgstr "" + +#: ipaserver/plugins/idrange.py:236 +msgid "First RID of the corresponding RID range" +msgstr "" + +#: ipaserver/plugins/idrange.py:240 +msgid "First RID of the secondary RID range" +msgstr "" + +#: ipaserver/plugins/idrange.py:245 ipaserver/plugins/idrange.py:655 +msgid "Domain SID of the trusted domain" +msgstr "" + +#: ipaserver/plugins/idrange.py:250 ipaserver/plugins/idrange.py:663 +msgid "Name of the trusted domain" +msgstr "" + +msgid "ID range type, one of ipa-ad-trust-posix, ipa-ad-trust, ipa-local" +msgstr "" + +msgid "" +"\n" +"Add new ID range.\n" +"\n" +" To add a new ID range you always have to specify\n" +"\n" +" --base-id\n" +" --range-size\n" +"\n" +" Additionally\n" +"\n" +" --rid-base\n" +" --secondary-rid-base\n" +"\n" +" may be given for a new ID range for the local domain while\n" +"\n" +" --rid-base\n" +" --dom-sid\n" +"\n" +" must be given to add a new range for a trusted AD domain.\n" +"\n" +" WARNING:\n" +"\n" +" DNA plugin in 389-ds will allocate IDs based on the ranges configured " +"for the\n" +" local domain. Currently the DNA plugin *cannot* be reconfigured itself " +"based\n" +" on the local ranges set via this family of commands.\n" +"\n" +" Manual configuration change has to be done in the DNA plugin " +"configuration for\n" +" the new local range. Specifically, The dnaNextRange attribute of " +"'cn=Posix\n" +" IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has " +"to be\n" +" modified to match the new range.\n" +" " +msgstr "" + +#: ipaserver/plugins/idrange.py:556 +msgid "Delete an ID range." +msgstr "" + +#: ipaserver/plugins/idrange.py:604 +msgid "Search for ranges." +msgstr "" + +msgid "Modify ID range." +msgstr "" + +#: ipaserver/plugins/idrange.py:627 +msgid "Display information about a range." +msgstr "" + +msgid "" +"\n" +"OTP Tokens\n" +"\n" +"Manage OTP tokens.\n" +"\n" +"IPA supports the use of OTP tokens for multi-factor authentication. This\n" +"code enables the management of OTP tokens.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Add a new token:\n" +" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n" +"\n" +" Examine the token:\n" +" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n" +"\n" +" Change the vendor:\n" +" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat" +"\"\n" +"\n" +" Delete a token:\n" +" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n" +msgstr "" + +#: ipaserver/plugins/otptoken.py:160 ipaserver/plugins/subid.py:136 +msgid "Unique ID" +msgstr "" + +#: ipaserver/plugins/otptoken.py:166 +msgid "Type of the token" +msgstr "" + +#: ipaserver/plugins/otptoken.py:175 +msgid "Token description (informational only)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:179 ipaserver/plugins/internal.py:1372 +#: ipaserver/plugins/subid.py:149 ipaserver/plugins/subid.py:467 +msgid "Owner" +msgstr "" + +#: ipaserver/plugins/otptoken.py:180 +msgid "Assigned user of the token (default: self)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:184 +msgid "Assigned manager of the token (default: self)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:189 ipaserver/plugins/internal.py:1933 +msgid "Disabled" +msgstr "" + +#: ipaserver/plugins/otptoken.py:190 +msgid "Mark the token as disabled (default: false)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:194 +msgid "Validity start" +msgstr "" + +#: ipaserver/plugins/otptoken.py:195 +msgid "First date/time the token can be used" +msgstr "" + +#: ipaserver/plugins/otptoken.py:199 +msgid "Validity end" +msgstr "" + +#: ipaserver/plugins/otptoken.py:200 +msgid "Last date/time the token can be used" +msgstr "" + +#: ipaserver/plugins/otptoken.py:204 +msgid "Vendor" +msgstr "" + +#: ipaserver/plugins/otptoken.py:205 +msgid "Token vendor name (informational only)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:209 +msgid "Model" +msgstr "" + +#: ipaserver/plugins/otptoken.py:210 +msgid "Token model (informational only)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:214 +msgid "Serial" +msgstr "" + +#: ipaserver/plugins/otptoken.py:215 +msgid "Token serial (informational only)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:220 +msgid "Token secret (Base32; default: random)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:230 +msgid "Token hash algorithm" +msgstr "" + +#: ipaserver/plugins/otptoken.py:238 +msgid "Digits" +msgstr "" + +#: ipaserver/plugins/otptoken.py:239 +msgid "Number of digits each token code will have" +msgstr "" + +#: ipaserver/plugins/otptoken.py:247 +msgid "Clock offset" +msgstr "" + +#: ipaserver/plugins/otptoken.py:248 +msgid "TOTP token / IPA server time difference" +msgstr "" + +#: ipaserver/plugins/otptoken.py:255 +msgid "Clock interval" +msgstr "" + +#: ipaserver/plugins/otptoken.py:256 +msgid "Length of TOTP token code validity" +msgstr "" + +#: ipaserver/plugins/otptoken.py:264 +msgid "Counter" +msgstr "" + +#: ipaserver/plugins/otptoken.py:265 +msgid "Initial counter for the HOTP token" +msgstr "" + +#: ipaserver/plugins/otptoken.py:280 +msgid "Add a new OTP token." +msgstr "" + +#: ipaserver/plugins/otptoken.py:284 +msgid "(deprecated)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:285 +msgid "Do not display QR code" +msgstr "" + +#: ipaserver/plugins/otptoken.py:463 +msgid "Add users that can manage this token." +msgstr "" + +#: ipaserver/plugins/otptoken.py:366 +msgid "Delete an OTP token." +msgstr "" + +#: ipaserver/plugins/otptoken.py:421 +msgid "Search for OTP token." +msgstr "" + +msgid "Results should contain primary key attribute only (\"id\")" +msgstr "" + +#: ipaserver/plugins/otptoken.py:372 +msgid "Modify a OTP token." +msgstr "" + +msgid "Rename the OTP token object" +msgstr "" + +#: ipaserver/plugins/otptoken.py:450 +msgid "Display information about an OTP token." +msgstr "" + msgid "" "\n" "Sudo Rules\n" @@ -8304,9 +8204,9 @@ msgid "" "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" "\n" "To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W \\\n" +" -H ldap://ipa.example.com -ZZ -D \"cn=Directory Manager\" \\\n" +" uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" "\n" "EXAMPLES:\n" "\n" @@ -8535,524 +8435,13 @@ msgstr "" msgid "Display Sudo Rule." msgstr "" -msgid "" -"\n" -"Cross-realm trusts\n" -"\n" -"Manage trust relationship between IPA and Active Directory domains.\n" -"\n" -"In order to allow users from a remote domain to access resources in IPA\n" -"domain, trust relationship needs to be established. Currently IPA supports\n" -"only trusts between IPA and Active Directory domains under control of " -"Windows\n" -"Server 2008 or later, with functional level 2008 or later.\n" -"\n" -"Please note that DNS on both IPA and Active Directory domain sides should " -"be\n" -"configured properly to discover each other. Trust relationship relies on\n" -"ability to discover special resources in the other domain via DNS records.\n" -"\n" -"Examples:\n" -"\n" -"1. Establish cross-realm trust with Active Directory using AD administrator\n" -" credentials:\n" -"\n" -" ipa trust-add --type=ad --admin --" -"password\n" -"\n" -"2. List all existing trust relationships:\n" -"\n" -" ipa trust-find\n" -"\n" -"3. Show details of the specific trust relationship:\n" -"\n" -" ipa trust-show \n" -"\n" -"4. Delete existing trust relationship:\n" -"\n" -" ipa trust-del \n" -"\n" -"Once trust relationship is established, remote users will need to be mapped\n" -"to local POSIX groups in order to actually use IPA resources. The mapping " -"should\n" -"be done via use of external membership of non-POSIX group and then this " -"group\n" -"should be included into one of local POSIX groups.\n" -"\n" -"Example:\n" -"\n" -"1. Create group for the trusted domain admins' mapping and their local POSIX " -"group:\n" -"\n" -" ipa group-add --desc=' admins external map' ad_admins_external " -"--external\n" -" ipa group-add --desc=' admins' ad_admins\n" -"\n" -"2. Add security identifier of Domain Admins of the to the " -"ad_admins_external\n" -" group:\n" -"\n" -" ipa group-add-member ad_admins_external --external 'AD\\Domain Admins'\n" -"\n" -"3. Allow members of ad_admins_external group to be associated with ad_admins " -"POSIX group:\n" -"\n" -" ipa group-add-member ad_admins --groups ad_admins_external\n" -"\n" -"4. List members of external members of ad_admins_external group to see their " -"SIDs:\n" -"\n" -" ipa group-show ad_admins_external\n" -"\n" -"\n" -"GLOBAL TRUST CONFIGURATION\n" -"\n" -"When IPA AD trust subpackage is installed and ipa-adtrust-install is run,\n" -"a local domain configuration (SID, GUID, NetBIOS name) is generated. These\n" -"identifiers are then used when communicating with a trusted domain of the\n" -"particular type.\n" -"\n" -"1. Show global trust configuration for Active Directory type of trusts:\n" -"\n" -" ipa trustconfig-show --type ad\n" -"\n" -"2. Modify global configuration for all trusts of Active Directory type and " -"set\n" -" a different fallback primary group (fallback primary group GID is used " -"as\n" -" a primary user GID if user authenticating to IPA domain does not have any " -"other\n" -" primary GID already set):\n" -"\n" -" ipa trustconfig-mod --type ad --fallback-primary-group \"alternative AD " -"group\"\n" -"\n" -"3. Change primary fallback group back to default hidden group (any group " -"with\n" -" posixGroup object class is allowed):\n" -"\n" -" ipa trustconfig-mod --type ad --fallback-primary-group \"Default SMB Group" -"\"\n" -msgstr "" - -#: ipaserver/plugins/internal.py:1537 ipaserver/plugins/trust.py:541 -#: ipaserver/plugins/trust.py:1585 -msgid "Domain NetBIOS name" -msgstr "" - -#: ipaserver/plugins/internal.py:1538 ipaserver/plugins/trust.py:545 -#: ipaserver/plugins/trust.py:1588 -msgid "Domain Security Identifier" -msgstr "" - -msgid "SID blacklist incoming" -msgstr "" - -msgid "SID blacklist outgoing" -msgstr "" - -msgid "Security Identifier" -msgstr "" - -msgid "NetBIOS name" -msgstr "" - -msgid "Domain GUID" -msgstr "" - -msgid "Fallback primary group" -msgstr "" - -#: ipaserver/plugins/certmap.py:298 ipaserver/plugins/trust.py:1580 -msgid "Domain name" -msgstr "" - -msgid "Trusted domain partner" -msgstr "" - -msgid "Determine whether ipa-adtrust-install has been run on this system" -msgstr "" - -msgid "" -"Determine whether Schema Compatibility plugin is configured to serve trusted " -"domain users and groups" -msgstr "" - -msgid "Determine whether ipa-adtrust-install has been run with sidgen task" -msgstr "" - -msgid "" -"\n" -"Add new trust to use.\n" -"\n" -"This command establishes trust relationship to another domain\n" -"which becomes 'trusted'. As result, users of the trusted domain\n" -"may access resources of this domain.\n" -"\n" -"Only trusts to Active Directory domains are supported right now.\n" -"\n" -"The command can be safely run multiple times against the same domain,\n" -"this will cause change to trust relationship credentials on both\n" -"sides.\n" -" " -msgstr "" - -msgid "Trust type (ad for Active Directory, default)" -msgstr "" - -#: ipaserver/plugins/trust.py:1798 -msgid "Active Directory domain administrator" -msgstr "" - -#: ipaserver/plugins/trust.py:1802 -msgid "Active Directory domain administrator's password" -msgstr "" - -#: ipaserver/plugins/trust.py:1807 -msgid "Domain controller for the Active Directory domain (optional)" -msgstr "" - -msgid "Shared secret for the trust" -msgstr "" - -msgid "First Posix ID of the range reserved for the trusted domain" -msgstr "" - -msgid "Size of the ID range reserved for the trusted domain" -msgstr "" - -msgid "" -"Type of trusted domain ID range, one of ipa-ad-trust-posix, ipa-ad-trust" -msgstr "" - -msgid "Delete a trust." -msgstr "" - -msgid "Refresh list of the domains associated with the trust" -msgstr "" - -msgid "Search for trusts." -msgstr "" - -msgid "Results should contain primary key attribute only (\"realm\")" -msgstr "" - -msgid "" -"\n" -"Modify a trust (for future use).\n" -"\n" -" Currently only the default option to modify the LDAP attributes is\n" -" available. More specific options will be added in coming releases.\n" -" " -msgstr "" - -msgid "Resolve security identifiers of users and groups in trusted domains" -msgstr "" - -msgid "Security Identifiers (SIDs)" -msgstr "" - -msgid "Display information about a trust." -msgstr "" - -msgid "Modify global trust configuration." -msgstr "" - -msgid "Show global trust configuration." -msgstr "" - -msgid "Allow access from the trusted domain" -msgstr "" - -msgid "Remove information about the domain associated with the trust." -msgstr "" - -msgid "Disable use of IPA resources by the domain of the trust" -msgstr "" - -msgid "Allow use of IPA resources by the domain of the trust" -msgstr "" - -msgid "Search domains of the trust" -msgstr "" - -msgid "Results should contain primary key attribute only (\"domain\")" -msgstr "" - -msgid "Modify trustdomain of the trust" -msgstr "" - -msgid "" -"\n" -"Users\n" -"\n" -"Manage user entries. All users are POSIX users.\n" -"\n" -"IPA supports a wide range of username formats, but you need to be aware of " -"any\n" -"restrictions that may apply to your particular environment. For example,\n" -"usernames that start with a digit or usernames that exceed a certain length\n" -"may cause problems for some UNIX systems.\n" -"Use 'ipa config-mod' to change the username format allowed by IPA tools.\n" -"\n" -"Disabling a user account prevents that user from obtaining new Kerberos\n" -"credentials. It does not invalidate any credentials that have already\n" -"been issued.\n" -"\n" -"Password management is not a part of this module. For more information\n" -"about this topic please see: ipa help passwd\n" -"\n" -"Account lockout on password failure happens per IPA master. The user-status\n" -"command can be used to identify which master the user is locked out on.\n" -"It is on that master the administrator must unlock the user.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a new user:\n" -" ipa user-add --first=Tim --last=User --password tuser1\n" -"\n" -" Find all users whose entries include the string \"Tim\":\n" -" ipa user-find Tim\n" -"\n" -" Find all users with \"Tim\" as the first name:\n" -" ipa user-find --first=Tim\n" -"\n" -" Disable a user account:\n" -" ipa user-disable tuser1\n" -"\n" -" Enable a user account:\n" -" ipa user-enable tuser1\n" -"\n" -" Delete a user:\n" -" ipa user-del tuser1\n" -msgstr "" - -msgid "First name" -msgstr "" - -msgid "Last name" -msgstr "" - -#: ipaserver/plugins/schema.py:152 -msgid "Full name" -msgstr "" - -msgid "Display name" -msgstr "" - -msgid "Initials" -msgstr "" - -msgid "Kerberos principal" -msgstr "" - -#: ipaserver/plugins/baseuser.py:267 -msgid "Kerberos principal expiration" -msgstr "" - -msgid "Email address" -msgstr "" - -msgid "Prompt to set the user password" -msgstr "" - -msgid "Generate a random user password" -msgstr "" - -msgid "User ID Number (system will assign one if not provided)" -msgstr "" - -msgid "Street address" -msgstr "" - -msgid "City" -msgstr "" - -msgid "State/Province" -msgstr "" - -msgid "ZIP" -msgstr "" - -msgid "Telephone Number" -msgstr "" - -msgid "Mobile Telephone Number" -msgstr "" - -msgid "Pager Number" -msgstr "" - -msgid "Fax Number" -msgstr "" - -msgid "Org. Unit" -msgstr "" - -msgid "Job Title" -msgstr "" - -msgid "Car License" -msgstr "" - -msgid "Account disabled" -msgstr "" - -#: ipaserver/plugins/baseuser.py:361 -msgid "User authentication types" -msgstr "" - -#: ipaserver/plugins/baseuser.py:362 -msgid "Types of supported user authentication" -msgstr "" - -#: ipaserver/plugins/baseuser.py:368 -msgid "" -"User category (semantics placed on this attribute are for local " -"interpretation)" -msgstr "" - -#: ipaserver/plugins/baseuser.py:373 -msgid "RADIUS proxy configuration" -msgstr "" - -#: ipaserver/plugins/baseuser.py:377 -msgid "RADIUS proxy username" -msgstr "" - -#: ipaserver/plugins/baseuser.py:380 -msgid "Department Number" -msgstr "" - -#: ipaserver/plugins/baseuser.py:383 -msgid "Employee Number" -msgstr "" - -#: ipaserver/plugins/baseuser.py:386 -msgid "Employee Type" -msgstr "" - -#: ipaserver/plugins/baseuser.py:389 -msgid "Preferred Language" -msgstr "" - -msgid "Kerberos keys available" -msgstr "" - -msgid "Add a new user." -msgstr "" - -msgid "Don't create user private group" -msgstr "" - -msgid "Delete a user." -msgstr "" - -msgid "Disable a user account." -msgstr "" - -msgid "Enable a user account." -msgstr "" - -msgid "Search for users." -msgstr "" - -msgid "Self" -msgstr "" - -msgid "Display user record for current Kerberos principal" -msgstr "" - -msgid "Results should contain primary key attribute only (\"login\")" -msgstr "" - -msgid "Search for users with these member of groups." -msgstr "" - -msgid "Search for users without these member of groups." -msgstr "" - -msgid "Search for users with these member of netgroups." -msgstr "" - -msgid "Search for users without these member of netgroups." -msgstr "" - -msgid "Search for users with these member of roles." -msgstr "" - -msgid "Search for users without these member of roles." -msgstr "" - -msgid "Search for users with these member of HBAC rules." -msgstr "" - -msgid "Search for users without these member of HBAC rules." -msgstr "" - -msgid "Search for users with these member of sudo rules." -msgstr "" - -msgid "Search for users without these member of sudo rules." -msgstr "" - -msgid "Modify a user." -msgstr "" - -msgid "Rename the user object" -msgstr "" - -msgid "Display information about a user." -msgstr "" - -msgid "" -"\n" -"Lockout status of a user account\n" -"\n" -" An account may become locked if the password is entered incorrectly too\n" -" many times within a specific time period as controlled by password\n" -" policy. A locked account is a temporary condition and may be unlocked " -"by\n" -" an administrator.\n" -"\n" -" This connects to each IPA master and displays the lockout status on\n" -" each one.\n" -"\n" -" To determine whether an account is locked on a given server you need\n" -" to compare the number of failed logins and the time of the last " -"failure.\n" -" For an account to be locked it must exceed the maxfail failures within\n" -" the failinterval duration as specified in the password policy " -"associated\n" -" with the user.\n" -"\n" -" The failed login counter is modified only when a user attempts a log in\n" -" so it is possible that an account may appear locked but the last failed\n" -" login attempt is older than the lockouttime of the password policy. " -"This\n" -" means that the user may attempt a login again.\n" -" " -msgstr "" - -msgid "" -"\n" -"Unlock a user account\n" -"\n" -" An account may become locked if the password is entered incorrectly too\n" -" many times within a specific time period as controlled by password\n" -" policy. A locked account is a temporary condition and may be unlocked " -"by\n" -" an administrator.\n" -" " -msgstr "" - -#: ipaserver/plugins/baseldap.py:1976 ipaserver/plugins/cert.py:1575 -#: ipaserver/plugins/pkinit.py:72 ipaserver/plugins/serverrole.py:124 +#: ipaserver/plugins/cert.py:1575 ipaserver/plugins/pkinit.py:72 +#: ipaserver/plugins/baseldap.py:1976 ipaserver/plugins/serverrole.py:124 msgid "Time limit of search in seconds (0 is unlimited)" msgstr "" -#: ipaserver/plugins/baseldap.py:1983 ipaserver/plugins/cert.py:1580 -#: ipaserver/plugins/pkinit.py:80 ipaserver/plugins/serverrole.py:132 +#: ipaserver/plugins/cert.py:1580 ipaserver/plugins/pkinit.py:80 +#: ipaserver/plugins/baseldap.py:1983 ipaserver/plugins/serverrole.py:132 msgid "Maximum number of entries returned (0 is unlimited)" msgstr "" @@ -9109,7 +8498,7 @@ msgstr "" msgid "Service category the ACL applies to" msgstr "" -#: ipaserver/plugins/internal.py:598 +#: ipaserver/plugins/internal.py:598 ipaserver/plugins/caacl.py:216 msgid "Profiles" msgstr "" @@ -9167,124 +8556,6 @@ msgstr "" msgid "Display the properties of a CA ACL." msgstr "" -msgid "Principal for this certificate (e.g. HTTP/test.example.com)" -msgstr "" - -#: ipaserver/plugins/cert.py:578 ipaserver/plugins/certprofile.py:122 -msgid "Profile ID" -msgstr "" - -msgid "Certificate Profile to use" -msgstr "" - -msgid "" -"\n" -"Manage Certificate Profiles\n" -"\n" -"Certificate Profiles are used by Certificate Authority (CA) in the signing " -"of\n" -"certificates to determine if a Certificate Signing Request (CSR) is " -"acceptable,\n" -"and if so what features and extensions will be present on the certificate.\n" -"\n" -"The Certificate Profile format is the property-list format understood by " -"the\n" -"Dogtag or Red Hat Certificate System CA.\n" -"\n" -"PROFILE ID SYNTAX:\n" -"\n" -"A Profile ID is a string without spaces or punctuation starting with a " -"letter\n" -"and followed by a sequence of letters, digits or underscore (\"_\").\n" -"\n" -"EXAMPLES:\n" -"\n" -" Import a profile that will not store issued certificates:\n" -" ipa certprofile-import ShortLivedUserCert --file UserCert.profile " -"--desc \"User Certificates\" --store=false\n" -"\n" -" Delete a certificate profile:\n" -" ipa certprofile-del ShortLivedUserCert\n" -"\n" -" Show information about a profile:\n" -" ipa certprofile-show ShortLivedUserCert\n" -"\n" -" Save profile configuration to a file:\n" -" ipa certprofile-show caIPAserviceCert --out caIPAserviceCert.cfg\n" -"\n" -" Search for profiles that do not store certificates:\n" -" ipa certprofile-find --store=false\n" -"\n" -"PROFILE CONFIGURATION FORMAT:\n" -"\n" -"The profile configuration format is the raw property-list format\n" -"used by Dogtag Certificate System. The XML format is not supported.\n" -"\n" -"The following restrictions apply to profiles managed by IPA:\n" -"\n" -"- When importing a profile the \"profileId\" field, if present, must\n" -" match the ID given on the command line.\n" -"\n" -"- The \"classId\" field must be set to \"caEnrollImpl\"\n" -"\n" -"- The \"auth.instance_id\" field must be set to \"raCertAuth\"\n" -"\n" -"- The \"certReqInputImpl\" input class and \"certOutputImpl\" output\n" -" class must be used.\n" -msgstr "" - -#: ipaserver/plugins/certprofile.py:123 -msgid "Profile ID for referring to this profile" -msgstr "" - -#: ipaserver/plugins/certprofile.py:132 -msgid "Profile description" -msgstr "" - -#: ipaserver/plugins/certprofile.py:133 -msgid "Brief description of this profile" -msgstr "" - -#: ipaserver/plugins/certprofile.py:138 -msgid "Store issued certificates" -msgstr "" - -#: ipaserver/plugins/certprofile.py:139 -msgid "Whether to store certs issued using this profile" -msgstr "" - -#: ipaserver/plugins/certprofile.py:281 -msgid "Delete a Certificate Profile." -msgstr "" - -#: ipaserver/plugins/certprofile.py:188 -msgid "Search for Certificate Profiles." -msgstr "" - -#: ipaserver/plugins/certprofile.py:221 -msgid "Import a Certificate Profile." -msgstr "" - -#: ipaserver/plugins/certprofile.py:226 -msgid "Filename of a raw profile. The XML format is not supported." -msgstr "" - -#: ipaserver/plugins/certprofile.py:304 -msgid "Modify Certificate Profile configuration." -msgstr "" - -#: ipaserver/plugins/certprofile.py:310 -msgid "File containing profile configuration" -msgstr "" - -#: ipaserver/plugins/certprofile.py:200 -msgid "Display the properties of a Certificate Profile." -msgstr "" - -#: ipaserver/plugins/certprofile.py:204 -msgid "Write profile configuration to file" -msgstr "" - msgid "Maximum amount of time (seconds) for a search (-1 or 0 is unlimited)" msgstr "" @@ -9320,218 +8591,6 @@ msgstr "" msgid "Remove certificates from host entry" msgstr "" -msgid "" -"\n" -"ID ranges\n" -"\n" -"Manage ID ranges used to map Posix IDs to SIDs and back.\n" -"\n" -"There are two type of ID ranges which are both handled by this utility:\n" -"\n" -" - the ID ranges of the local domain\n" -" - the ID ranges of trusted remote domains\n" -"\n" -"Both types have the following attributes in common:\n" -"\n" -" - base-id: the first ID of the Posix ID range\n" -" - range-size: the size of the range\n" -"\n" -"With those two attributes a range object can reserve the Posix IDs starting\n" -"with base-id up to but not including base-id+range-size exclusively.\n" -"\n" -"Additionally an ID range of the local domain may set\n" -" - rid-base: the first RID(*) of the corresponding RID range\n" -" - secondary-rid-base: first RID of the secondary RID range\n" -"\n" -"and an ID range of a trusted domain must set\n" -" - rid-base: the first RID of the corresponding RID range\n" -" - sid: domain SID of the trusted domain\n" -"\n" -"\n" -"\n" -"EXAMPLE: Add a new ID range for a trusted domain\n" -"\n" -"Since there might be more than one trusted domain the domain SID must be " -"given\n" -"while creating the ID range.\n" -"\n" -" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" -"base=0 --dom-sid=S-1-5-21-123-456-789 trusted_dom_range\n" -"\n" -"This ID range is then used by the IPA server and the SSSD IPA provider to\n" -"assign Posix UIDs to users from the trusted domain.\n" -"\n" -"If e.g. a range for a trusted domain is configured with the following " -"values:\n" -" base-id = 1200000\n" -" range-size = 200000\n" -" rid-base = 0\n" -"the RIDs 0 to 199999 are mapped to the Posix ID from 1200000 to 13999999. " -"So\n" -"RID 1000 <-> Posix ID 1201000\n" -"\n" -"\n" -"\n" -"EXAMPLE: Add a new ID range for the local domain\n" -"\n" -"To create an ID range for the local domain it is not necessary to specify a\n" -"domain SID. But since it is possible that a user and a group can have the " -"same\n" -"value as Posix ID a second RID interval is needed to handle conflicts.\n" -"\n" -" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" -"base=1000 --secondary-rid-base=1000000 local_range\n" -"\n" -"The data from the ID ranges of the local domain are used by the IPA server\n" -"internally to assign SIDs to IPA users and groups. The SID will then be " -"stored\n" -"in the user or group objects.\n" -"\n" -"If e.g. the ID range for the local domain is configured with the values " -"from\n" -"the example above then a new user with the UID 1200007 will get the RID " -"1007.\n" -"If this RID is already used by a group the RID will be 1000007. This can " -"only\n" -"happen if a user or a group object was created with a fixed ID because the\n" -"automatic assignment will not assign the same ID twice. Since there are " -"only\n" -"users and groups sharing the same ID namespace it is sufficient to have " -"only\n" -"one fallback range to handle conflicts.\n" -"\n" -"To find the Posix ID for a given RID from the local domain it has to be\n" -"checked first if the RID falls in the primary or secondary RID range and\n" -"the rid-base or the secondary-rid-base has to be subtracted, respectively,\n" -"and the base-id has to be added to get the Posix ID.\n" -"\n" -"Typically the creation of ID ranges happens behind the scenes and this CLI\n" -"must not be used at all. The ID range for the local domain will be created\n" -"during installation or upgrade from an older version. The ID range for a\n" -"trusted domain will be created together with the trust by 'ipa trust-" -"add ...'.\n" -"\n" -"USE CASES:\n" -"\n" -" Add an ID range from a transitively trusted domain\n" -"\n" -" If the trusted domain (A) trusts another domain (B) as well and this " -"trust\n" -" is transitive 'ipa trust-add domain-A' will only create a range for\n" -" domain A. The ID range for domain B must be added manually.\n" -"\n" -" Add an additional ID range for the local domain\n" -"\n" -" If the ID range of the local domain is exhausted, i.e. no new IDs can " -"be\n" -" assigned to Posix users or groups by the DNA plugin, a new range has to " -"be\n" -" created to allow new users and groups to be added. (Currently there is " -"no\n" -" connection between this range CLI and the DNA plugin, but a future " -"version\n" -" might be able to modify the configuration of the DNS plugin as well)\n" -"\n" -"In general it is not necessary to modify or delete ID ranges. If there is " -"no\n" -"other way to achieve a certain configuration than to modify or delete an ID\n" -"range it should be done with great care. Because UIDs are stored in the " -"file\n" -"system and are used for access control it might be possible that users are\n" -"allowed to access files of other users if an ID range got deleted and " -"reused\n" -"for a different domain.\n" -"\n" -"(*) The RID is typically the last integer of a user or group SID which " -"follows\n" -"the domain SID. E.g. if the domain SID is S-1-5-21-123-456-789 and a user " -"from\n" -"this domain has the SID S-1-5-21-123-456-789-1010 then 1010 is the RID of " -"the\n" -"user. RIDs are unique in a domain, 32bit values and are used for users and\n" -"groups.\n" -"\n" -"=======\n" -"WARNING:\n" -"\n" -"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " -"the\n" -"local domain. Currently the DNA plugin *cannot* be reconfigured itself " -"based\n" -"on the local ranges set via this family of commands.\n" -"\n" -"Manual configuration change has to be done in the DNA plugin configuration " -"for\n" -"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" -"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " -"be\n" -"modified to match the new range.\n" -"=======\n" -msgstr "" - -msgid "" -"\n" -"Add new ID range.\n" -"\n" -" To add a new ID range you always have to specify\n" -"\n" -" --base-id\n" -" --range-size\n" -"\n" -" Additionally\n" -"\n" -" --rid-base\n" -" --secondary-rid-base\n" -"\n" -" may be given for a new ID range for the local domain while\n" -"\n" -" --rid-base\n" -" --dom-sid\n" -"\n" -" must be given to add a new range for a trusted AD domain.\n" -"\n" -"=======\n" -"WARNING:\n" -"\n" -"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " -"the\n" -"local domain. Currently the DNA plugin *cannot* be reconfigured itself " -"based\n" -"on the local ranges set via this family of commands.\n" -"\n" -"Manual configuration change has to be done in the DNA plugin configuration " -"for\n" -"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" -"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " -"be\n" -"modified to match the new range.\n" -"=======\n" -" " -msgstr "" - -msgid "" -"\n" -"Modify ID range.\n" -"\n" -"=======\n" -"WARNING:\n" -"\n" -"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " -"the\n" -"local domain. Currently the DNA plugin *cannot* be reconfigured itself " -"based\n" -"on the local ranges set via this family of commands.\n" -"\n" -"Manual configuration change has to be done in the DNA plugin configuration " -"for\n" -"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" -"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " -"be\n" -"modified to match the new range.\n" -"=======\n" -" " -msgstr "" - #: ipaserver/plugins/idviews.py:80 msgid "Fallback to AD DC LDAP" msgstr "" @@ -9566,10 +8625,6 @@ msgid "" "to onelevel" msgstr "" -#: ipaserver/plugins/otptoken.py:469 -msgid "Remove users that can manage this token." -msgstr "" - #: ipaserver/plugins/permission.py:321 msgid "Target DN subtree" msgstr "" @@ -9605,12 +8660,12 @@ msgid "" " ipa server-show ipa.example.com\n" msgstr "" -#: ipaserver/plugins/dnsserver.py:112 ipaserver/plugins/pkinit.py:47 -#: ipaserver/plugins/serverrole.py:58 ipaserver/plugins/server.py:103 +#: ipaserver/plugins/server.py:103 ipaserver/plugins/dnsserver.py:112 +#: ipaserver/plugins/serverrole.py:58 msgid "Server name" msgstr "" -#: ipaserver/plugins/serverrole.py:59 ipaserver/plugins/server.py:104 +#: ipaserver/plugins/server.py:104 ipaserver/plugins/serverrole.py:59 msgid "IPA server hostname" msgstr "" @@ -10062,14 +9117,6 @@ msgid "" " " msgstr "" -#: ipaserver/plugins/trust.py:717 -msgid "Two-way trust" -msgstr "" - -msgid "" -"Establish bi-directional trust. By default trust is inbound one-way only." -msgstr "" - #: ipaserver/plugins/user.py:1161 msgid "Preserved user" msgstr "" @@ -10271,6 +9318,10 @@ msgstr "" msgid "Owner services" msgstr "" +#: ipaserver/plugins/vault.py:327 ipaserver/plugins/vault.py:637 +msgid "Failed owners" +msgstr "" + #: ipaserver/plugins/vault.py:642 msgid "Vault service" msgstr "" @@ -10372,6 +9423,348 @@ msgstr "" msgid "Display information about a vault container." msgstr "" +msgid "Principal for this certificate (e.g. HTTP/test.example.com)" +msgstr "" + +#: ipaserver/plugins/cert.py:578 ipaserver/plugins/certprofile.py:122 +msgid "Profile ID" +msgstr "" + +msgid "Certificate Profile to use" +msgstr "" + +msgid "" +"\n" +"ID ranges\n" +"\n" +"Manage ID ranges used to map Posix IDs to SIDs and back.\n" +"\n" +"There are two type of ID ranges which are both handled by this utility:\n" +"\n" +" - the ID ranges of the local domain\n" +" - the ID ranges of trusted remote domains\n" +"\n" +"Both types have the following attributes in common:\n" +"\n" +" - base-id: the first ID of the Posix ID range\n" +" - range-size: the size of the range\n" +"\n" +"With those two attributes a range object can reserve the Posix IDs starting\n" +"with base-id up to but not including base-id+range-size exclusively.\n" +"\n" +"Additionally an ID range of the local domain may set\n" +" - rid-base: the first RID(*) of the corresponding RID range\n" +" - secondary-rid-base: first RID of the secondary RID range\n" +"\n" +"and an ID range of a trusted domain must set\n" +" - rid-base: the first RID of the corresponding RID range\n" +" - sid: domain SID of the trusted domain\n" +"\n" +"\n" +"\n" +"EXAMPLE: Add a new ID range for a trusted domain\n" +"\n" +"Since there might be more than one trusted domain the domain SID must be " +"given\n" +"while creating the ID range.\n" +"\n" +" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" +"base=0 --dom-sid=S-1-5-21-123-456-789 trusted_dom_range\n" +"\n" +"This ID range is then used by the IPA server and the SSSD IPA provider to\n" +"assign Posix UIDs to users from the trusted domain.\n" +"\n" +"If e.g. a range for a trusted domain is configured with the following " +"values:\n" +" base-id = 1200000\n" +" range-size = 200000\n" +" rid-base = 0\n" +"the RIDs 0 to 199999 are mapped to the Posix ID from 1200000 to 13999999. " +"So\n" +"RID 1000 <-> Posix ID 1201000\n" +"\n" +"\n" +"\n" +"EXAMPLE: Add a new ID range for the local domain\n" +"\n" +"To create an ID range for the local domain it is not necessary to specify a\n" +"domain SID. But since it is possible that a user and a group can have the " +"same\n" +"value as Posix ID a second RID interval is needed to handle conflicts.\n" +"\n" +" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" +"base=1000 --secondary-rid-base=1000000 local_range\n" +"\n" +"The data from the ID ranges of the local domain are used by the IPA server\n" +"internally to assign SIDs to IPA users and groups. The SID will then be " +"stored\n" +"in the user or group objects.\n" +"\n" +"If e.g. the ID range for the local domain is configured with the values " +"from\n" +"the example above then a new user with the UID 1200007 will get the RID " +"1007.\n" +"If this RID is already used by a group the RID will be 1000007. This can " +"only\n" +"happen if a user or a group object was created with a fixed ID because the\n" +"automatic assignment will not assign the same ID twice. Since there are " +"only\n" +"users and groups sharing the same ID namespace it is sufficient to have " +"only\n" +"one fallback range to handle conflicts.\n" +"\n" +"To find the Posix ID for a given RID from the local domain it has to be\n" +"checked first if the RID falls in the primary or secondary RID range and\n" +"the rid-base or the secondary-rid-base has to be subtracted, respectively,\n" +"and the base-id has to be added to get the Posix ID.\n" +"\n" +"Typically the creation of ID ranges happens behind the scenes and this CLI\n" +"must not be used at all. The ID range for the local domain will be created\n" +"during installation or upgrade from an older version. The ID range for a\n" +"trusted domain will be created together with the trust by 'ipa trust-" +"add ...'.\n" +"\n" +"USE CASES:\n" +"\n" +" Add an ID range from a transitively trusted domain\n" +"\n" +" If the trusted domain (A) trusts another domain (B) as well and this " +"trust\n" +" is transitive 'ipa trust-add domain-A' will only create a range for\n" +" domain A. The ID range for domain B must be added manually.\n" +"\n" +" Add an additional ID range for the local domain\n" +"\n" +" If the ID range of the local domain is exhausted, i.e. no new IDs can " +"be\n" +" assigned to Posix users or groups by the DNA plugin, a new range has to " +"be\n" +" created to allow new users and groups to be added. (Currently there is " +"no\n" +" connection between this range CLI and the DNA plugin, but a future " +"version\n" +" might be able to modify the configuration of the DNS plugin as well)\n" +"\n" +"In general it is not necessary to modify or delete ID ranges. If there is " +"no\n" +"other way to achieve a certain configuration than to modify or delete an ID\n" +"range it should be done with great care. Because UIDs are stored in the " +"file\n" +"system and are used for access control it might be possible that users are\n" +"allowed to access files of other users if an ID range got deleted and " +"reused\n" +"for a different domain.\n" +"\n" +"(*) The RID is typically the last integer of a user or group SID which " +"follows\n" +"the domain SID. E.g. if the domain SID is S-1-5-21-123-456-789 and a user " +"from\n" +"this domain has the SID S-1-5-21-123-456-789-1010 then 1010 is the RID of " +"the\n" +"user. RIDs are unique in a domain, 32bit values and are used for users and\n" +"groups.\n" +"\n" +"=======\n" +"WARNING:\n" +"\n" +"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " +"the\n" +"local domain. Currently the DNA plugin *cannot* be reconfigured itself " +"based\n" +"on the local ranges set via this family of commands.\n" +"\n" +"Manual configuration change has to be done in the DNA plugin configuration " +"for\n" +"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" +"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " +"be\n" +"modified to match the new range.\n" +"=======\n" +msgstr "" + +msgid "" +"\n" +"Add new ID range.\n" +"\n" +" To add a new ID range you always have to specify\n" +"\n" +" --base-id\n" +" --range-size\n" +"\n" +" Additionally\n" +"\n" +" --rid-base\n" +" --secondary-rid-base\n" +"\n" +" may be given for a new ID range for the local domain while\n" +"\n" +" --rid-base\n" +" --dom-sid\n" +"\n" +" must be given to add a new range for a trusted AD domain.\n" +"\n" +"=======\n" +"WARNING:\n" +"\n" +"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " +"the\n" +"local domain. Currently the DNA plugin *cannot* be reconfigured itself " +"based\n" +"on the local ranges set via this family of commands.\n" +"\n" +"Manual configuration change has to be done in the DNA plugin configuration " +"for\n" +"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" +"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " +"be\n" +"modified to match the new range.\n" +"=======\n" +" " +msgstr "" + +msgid "" +"\n" +"Modify ID range.\n" +"\n" +"=======\n" +"WARNING:\n" +"\n" +"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " +"the\n" +"local domain. Currently the DNA plugin *cannot* be reconfigured itself " +"based\n" +"on the local ranges set via this family of commands.\n" +"\n" +"Manual configuration change has to be done in the DNA plugin configuration " +"for\n" +"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" +"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " +"be\n" +"modified to match the new range.\n" +"=======\n" +" " +msgstr "" + +#: ipaserver/plugins/otptoken.py:469 +msgid "Remove users that can manage this token." +msgstr "" + +#: ipaserver/dcerpc_common.py:22 +msgid "Two-way trust" +msgstr "" + +msgid "" +"Establish bi-directional trust. By default trust is inbound one-way only." +msgstr "" + +msgid "" +"\n" +"Manage Certificate Profiles\n" +"\n" +"Certificate Profiles are used by Certificate Authority (CA) in the signing " +"of\n" +"certificates to determine if a Certificate Signing Request (CSR) is " +"acceptable,\n" +"and if so what features and extensions will be present on the certificate.\n" +"\n" +"The Certificate Profile format is the property-list format understood by " +"the\n" +"Dogtag or Red Hat Certificate System CA.\n" +"\n" +"PROFILE ID SYNTAX:\n" +"\n" +"A Profile ID is a string without spaces or punctuation starting with a " +"letter\n" +"and followed by a sequence of letters, digits or underscore (\"_\").\n" +"\n" +"EXAMPLES:\n" +"\n" +" Import a profile that will not store issued certificates:\n" +" ipa certprofile-import ShortLivedUserCert --file UserCert.profile " +"--desc \"User Certificates\" --store=false\n" +"\n" +" Delete a certificate profile:\n" +" ipa certprofile-del ShortLivedUserCert\n" +"\n" +" Show information about a profile:\n" +" ipa certprofile-show ShortLivedUserCert\n" +"\n" +" Save profile configuration to a file:\n" +" ipa certprofile-show caIPAserviceCert --out caIPAserviceCert.cfg\n" +"\n" +" Search for profiles that do not store certificates:\n" +" ipa certprofile-find --store=false\n" +"\n" +"PROFILE CONFIGURATION FORMAT:\n" +"\n" +"The profile configuration format is the raw property-list format\n" +"used by Dogtag Certificate System. The XML format is not supported.\n" +"\n" +"The following restrictions apply to profiles managed by IPA:\n" +"\n" +"- When importing a profile the \"profileId\" field, if present, must\n" +" match the ID given on the command line.\n" +"\n" +"- The \"classId\" field must be set to \"caEnrollImpl\"\n" +"\n" +"- The \"auth.instance_id\" field must be set to \"raCertAuth\"\n" +"\n" +"- The \"certReqInputImpl\" input class and \"certOutputImpl\" output\n" +" class must be used.\n" +msgstr "" + +#: ipaserver/plugins/certprofile.py:123 +msgid "Profile ID for referring to this profile" +msgstr "" + +#: ipaserver/plugins/certprofile.py:132 +msgid "Profile description" +msgstr "" + +#: ipaserver/plugins/certprofile.py:133 +msgid "Brief description of this profile" +msgstr "" + +#: ipaserver/plugins/certprofile.py:138 +msgid "Store issued certificates" +msgstr "" + +#: ipaserver/plugins/certprofile.py:139 +msgid "Whether to store certs issued using this profile" +msgstr "" + +#: ipaserver/plugins/certprofile.py:281 +msgid "Delete a Certificate Profile." +msgstr "" + +#: ipaserver/plugins/certprofile.py:188 +msgid "Search for Certificate Profiles." +msgstr "" + +#: ipaserver/plugins/certprofile.py:221 +msgid "Import a Certificate Profile." +msgstr "" + +#: ipaserver/plugins/certprofile.py:226 +msgid "Filename of a raw profile. The XML format is not supported." +msgstr "" + +#: ipaserver/plugins/certprofile.py:304 +msgid "Modify Certificate Profile configuration." +msgstr "" + +#: ipaserver/plugins/certprofile.py:310 +msgid "File containing profile configuration" +msgstr "" + +#: ipaserver/plugins/certprofile.py:200 +msgid "Display the properties of a Certificate Profile." +msgstr "" + +#: ipaserver/plugins/certprofile.py:204 +msgid "Write profile configuration to file" +msgstr "" + msgid "Resolve a host name in DNS. (Deprecated)" msgstr "" @@ -10681,11 +10074,11 @@ msgstr "" msgid "Check connection to remote IPA server." msgstr "" -#: ipaserver/plugins/server.py:916 +#: ipaserver/plugins/trust.py:1848 msgid "Remote server name" msgstr "" -#: ipaserver/plugins/server.py:917 +#: ipaserver/plugins/trust.py:1849 msgid "Remote IPA server hostname" msgstr "" @@ -12064,192 +11457,6 @@ msgid "" " ipa hostgroup-del baltimore\n" msgstr "" -msgid "" -"\n" -"ID ranges\n" -"\n" -"Manage ID ranges used to map Posix IDs to SIDs and back.\n" -"\n" -"There are two type of ID ranges which are both handled by this utility:\n" -"\n" -" - the ID ranges of the local domain\n" -" - the ID ranges of trusted remote domains\n" -"\n" -"Both types have the following attributes in common:\n" -"\n" -" - base-id: the first ID of the Posix ID range\n" -" - range-size: the size of the range\n" -"\n" -"With those two attributes a range object can reserve the Posix IDs starting\n" -"with base-id up to but not including base-id+range-size exclusively.\n" -"\n" -"Additionally an ID range of the local domain may set\n" -" - rid-base: the first RID(*) of the corresponding RID range\n" -" - secondary-rid-base: first RID of the secondary RID range\n" -"\n" -"and an ID range of a trusted domain must set\n" -" - rid-base: the first RID of the corresponding RID range\n" -" - dom_sid: domain SID of the trusted domain\n" -"\n" -"\n" -"\n" -"EXAMPLE: Add a new ID range for a trusted domain\n" -"\n" -"Since there might be more than one trusted domain the domain SID must be " -"given\n" -"while creating the ID range.\n" -"\n" -" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" -"base=0 --dom-sid=S-1-5-21-123-456-789 trusted_dom_range\n" -"\n" -"This ID range is then used by the IPA server and the SSSD IPA provider to\n" -"assign Posix UIDs to users from the trusted domain.\n" -"\n" -"If e.g. a range for a trusted domain is configured with the following " -"values:\n" -" base-id = 1200000\n" -" range-size = 200000\n" -" rid-base = 0\n" -"the RIDs 0 to 199999 are mapped to the Posix ID from 1200000 to 13999999. " -"So\n" -"RID 1000 <-> Posix ID 1201000\n" -"\n" -"\n" -"\n" -"EXAMPLE: Add a new ID range for the local domain\n" -"\n" -"To create an ID range for the local domain it is not necessary to specify a\n" -"domain SID. But since it is possible that a user and a group can have the " -"same\n" -"value as Posix ID a second RID interval is needed to handle conflicts.\n" -"\n" -" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" -"base=1000 --secondary-rid-base=1000000 local_range\n" -"\n" -"The data from the ID ranges of the local domain are used by the IPA server\n" -"internally to assign SIDs to IPA users and groups. The SID will then be " -"stored\n" -"in the user or group objects.\n" -"\n" -"If e.g. the ID range for the local domain is configured with the values " -"from\n" -"the example above then a new user with the UID 1200007 will get the RID " -"1007.\n" -"If this RID is already used by a group the RID will be 1000007. This can " -"only\n" -"happen if a user or a group object was created with a fixed ID because the\n" -"automatic assignment will not assign the same ID twice. Since there are " -"only\n" -"users and groups sharing the same ID namespace it is sufficient to have " -"only\n" -"one fallback range to handle conflicts.\n" -"\n" -"To find the Posix ID for a given RID from the local domain it has to be\n" -"checked first if the RID falls in the primary or secondary RID range and\n" -"the rid-base or the secondary-rid-base has to be subtracted, respectively,\n" -"and the base-id has to be added to get the Posix ID.\n" -"\n" -"Typically the creation of ID ranges happens behind the scenes and this CLI\n" -"must not be used at all. The ID range for the local domain will be created\n" -"during installation or upgrade from an older version. The ID range for a\n" -"trusted domain will be created together with the trust by 'ipa trust-" -"add ...'.\n" -"\n" -"USE CASES:\n" -"\n" -" Add an ID range from a transitively trusted domain\n" -"\n" -" If the trusted domain (A) trusts another domain (B) as well and this " -"trust\n" -" is transitive 'ipa trust-add domain-A' will only create a range for\n" -" domain A. The ID range for domain B must be added manually.\n" -"\n" -" Add an additional ID range for the local domain\n" -"\n" -" If the ID range of the local domain is exhausted, i.e. no new IDs can " -"be\n" -" assigned to Posix users or groups by the DNA plugin, a new range has to " -"be\n" -" created to allow new users and groups to be added. (Currently there is " -"no\n" -" connection between this range CLI and the DNA plugin, but a future " -"version\n" -" might be able to modify the configuration of the DNS plugin as well)\n" -"\n" -"In general it is not necessary to modify or delete ID ranges. If there is " -"no\n" -"other way to achieve a certain configuration than to modify or delete an ID\n" -"range it should be done with great care. Because UIDs are stored in the " -"file\n" -"system and are used for access control it might be possible that users are\n" -"allowed to access files of other users if an ID range got deleted and " -"reused\n" -"for a different domain.\n" -"\n" -"(*) The RID is typically the last integer of a user or group SID which " -"follows\n" -"the domain SID. E.g. if the domain SID is S-1-5-21-123-456-789 and a user " -"from\n" -"this domain has the SID S-1-5-21-123-456-789-1010 then 1010 is the RID of " -"the\n" -"user. RIDs are unique in a domain, 32bit values and are used for users and\n" -"groups.\n" -"\n" -"WARNING:\n" -"\n" -"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " -"the\n" -"local domain. Currently the DNA plugin *cannot* be reconfigured itself " -"based\n" -"on the local ranges set via this family of commands.\n" -"\n" -"Manual configuration change has to be done in the DNA plugin configuration " -"for\n" -"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" -"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " -"be\n" -"modified to match the new range.\n" -msgstr "" - -msgid "" -"\n" -"Add new ID range.\n" -"\n" -" To add a new ID range you always have to specify\n" -"\n" -" --base-id\n" -" --range-size\n" -"\n" -" Additionally\n" -"\n" -" --rid-base\n" -" --secondary-rid-base\n" -"\n" -" may be given for a new ID range for the local domain while\n" -"\n" -" --rid-bas\n" -" --dom-sid\n" -"\n" -" must be given to add a new range for a trusted AD domain.\n" -"\n" -" WARNING:\n" -"\n" -" DNA plugin in 389-ds will allocate IDs based on the ranges configured " -"for the\n" -" local domain. Currently the DNA plugin *cannot* be reconfigured itself " -"based\n" -" on the local ranges set via this family of commands.\n" -"\n" -" Manual configuration change has to be done in the DNA plugin " -"configuration for\n" -" the new local range. Specifically, The dnaNextRange attribute of " -"'cn=Posix\n" -" IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has " -"to be\n" -" modified to match the new range.\n" -" " -msgstr "" - msgid "" "Comma-separated list of objectclasses used to search for user entries in DS" msgstr "" @@ -12556,6 +11763,198 @@ msgstr "" msgid "comma-separated list of sudo commands to remove" msgstr "" +msgid "Active directory domain administrator's password" +msgstr "" + +msgid "GECOS field" +msgstr "" + +msgid "" +"\n" +"ID ranges\n" +"\n" +"Manage ID ranges used to map Posix IDs to SIDs and back.\n" +"\n" +"There are two type of ID ranges which are both handled by this utility:\n" +"\n" +" - the ID ranges of the local domain\n" +" - the ID ranges of trusted remote domains\n" +"\n" +"Both types have the following attributes in common:\n" +"\n" +" - base-id: the first ID of the Posix ID range\n" +" - range-size: the size of the range\n" +"\n" +"With those two attributes a range object can reserve the Posix IDs starting\n" +"with base-id up to but not including base-id+range-size exclusively.\n" +"\n" +"Additionally an ID range of the local domain may set\n" +" - rid-base: the first RID(*) of the corresponding RID range\n" +" - secondary-rid-base: first RID of the secondary RID range\n" +"\n" +"and an ID range of a trusted domain must set\n" +" - rid-base: the first RID of the corresponding RID range\n" +" - dom_sid: domain SID of the trusted domain\n" +"\n" +"\n" +"\n" +"EXAMPLE: Add a new ID range for a trusted domain\n" +"\n" +"Since there might be more than one trusted domain the domain SID must be " +"given\n" +"while creating the ID range.\n" +"\n" +" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" +"base=0 --dom-sid=S-1-5-21-123-456-789 trusted_dom_range\n" +"\n" +"This ID range is then used by the IPA server and the SSSD IPA provider to\n" +"assign Posix UIDs to users from the trusted domain.\n" +"\n" +"If e.g. a range for a trusted domain is configured with the following " +"values:\n" +" base-id = 1200000\n" +" range-size = 200000\n" +" rid-base = 0\n" +"the RIDs 0 to 199999 are mapped to the Posix ID from 1200000 to 13999999. " +"So\n" +"RID 1000 <-> Posix ID 1201000\n" +"\n" +"\n" +"\n" +"EXAMPLE: Add a new ID range for the local domain\n" +"\n" +"To create an ID range for the local domain it is not necessary to specify a\n" +"domain SID. But since it is possible that a user and a group can have the " +"same\n" +"value as Posix ID a second RID interval is needed to handle conflicts.\n" +"\n" +" ipa idrange-add --base-id=1200000 --range-size=200000 --rid-" +"base=1000 --secondary-rid-base=1000000 local_range\n" +"\n" +"The data from the ID ranges of the local domain are used by the IPA server\n" +"internally to assign SIDs to IPA users and groups. The SID will then be " +"stored\n" +"in the user or group objects.\n" +"\n" +"If e.g. the ID range for the local domain is configured with the values " +"from\n" +"the example above then a new user with the UID 1200007 will get the RID " +"1007.\n" +"If this RID is already used by a group the RID will be 1000007. This can " +"only\n" +"happen if a user or a group object was created with a fixed ID because the\n" +"automatic assignment will not assign the same ID twice. Since there are " +"only\n" +"users and groups sharing the same ID namespace it is sufficient to have " +"only\n" +"one fallback range to handle conflicts.\n" +"\n" +"To find the Posix ID for a given RID from the local domain it has to be\n" +"checked first if the RID falls in the primary or secondary RID range and\n" +"the rid-base or the secondary-rid-base has to be subtracted, respectively,\n" +"and the base-id has to be added to get the Posix ID.\n" +"\n" +"Typically the creation of ID ranges happens behind the scenes and this CLI\n" +"must not be used at all. The ID range for the local domain will be created\n" +"during installation or upgrade from an older version. The ID range for a\n" +"trusted domain will be created together with the trust by 'ipa trust-" +"add ...'.\n" +"\n" +"USE CASES:\n" +"\n" +" Add an ID range from a transitively trusted domain\n" +"\n" +" If the trusted domain (A) trusts another domain (B) as well and this " +"trust\n" +" is transitive 'ipa trust-add domain-A' will only create a range for\n" +" domain A. The ID range for domain B must be added manually.\n" +"\n" +" Add an additional ID range for the local domain\n" +"\n" +" If the ID range of the local domain is exhausted, i.e. no new IDs can " +"be\n" +" assigned to Posix users or groups by the DNA plugin, a new range has to " +"be\n" +" created to allow new users and groups to be added. (Currently there is " +"no\n" +" connection between this range CLI and the DNA plugin, but a future " +"version\n" +" might be able to modify the configuration of the DNS plugin as well)\n" +"\n" +"In general it is not necessary to modify or delete ID ranges. If there is " +"no\n" +"other way to achieve a certain configuration than to modify or delete an ID\n" +"range it should be done with great care. Because UIDs are stored in the " +"file\n" +"system and are used for access control it might be possible that users are\n" +"allowed to access files of other users if an ID range got deleted and " +"reused\n" +"for a different domain.\n" +"\n" +"(*) The RID is typically the last integer of a user or group SID which " +"follows\n" +"the domain SID. E.g. if the domain SID is S-1-5-21-123-456-789 and a user " +"from\n" +"this domain has the SID S-1-5-21-123-456-789-1010 then 1010 is the RID of " +"the\n" +"user. RIDs are unique in a domain, 32bit values and are used for users and\n" +"groups.\n" +"\n" +"WARNING:\n" +"\n" +"DNA plugin in 389-ds will allocate IDs based on the ranges configured for " +"the\n" +"local domain. Currently the DNA plugin *cannot* be reconfigured itself " +"based\n" +"on the local ranges set via this family of commands.\n" +"\n" +"Manual configuration change has to be done in the DNA plugin configuration " +"for\n" +"the new local range. Specifically, The dnaNextRange attribute of 'cn=Posix\n" +"IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has to " +"be\n" +"modified to match the new range.\n" +msgstr "" + +msgid "" +"\n" +"Add new ID range.\n" +"\n" +" To add a new ID range you always have to specify\n" +"\n" +" --base-id\n" +" --range-size\n" +"\n" +" Additionally\n" +"\n" +" --rid-base\n" +" --secondary-rid-base\n" +"\n" +" may be given for a new ID range for the local domain while\n" +"\n" +" --rid-bas\n" +" --dom-sid\n" +"\n" +" must be given to add a new range for a trusted AD domain.\n" +"\n" +" WARNING:\n" +"\n" +" DNA plugin in 389-ds will allocate IDs based on the ranges configured " +"for the\n" +" local domain. Currently the DNA plugin *cannot* be reconfigured itself " +"based\n" +" on the local ranges set via this family of commands.\n" +"\n" +" Manual configuration change has to be done in the DNA plugin " +"configuration for\n" +" the new local range. Specifically, The dnaNextRange attribute of " +"'cn=Posix\n" +" IDs,cn=Distributed Numeric Assignment Plugin,cn=plugins,cn=config' has " +"to be\n" +" modified to match the new range.\n" +" " +msgstr "" + msgid "" "\n" "Sudo Rules\n" @@ -12584,9 +11983,9 @@ msgid "" "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" "\n" "To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W \\\n" +" -H ldap://ipa.example.com -ZZ -D \"cn=Directory Manager\" \\\n" +" uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" "\n" "For more information, see the IPA Documentation to Sudo.\n" msgstr "" @@ -12597,10 +11996,615 @@ msgstr "" msgid "comma-separated list of sudo command groups to remove" msgstr "" -msgid "Active directory domain administrator's password" +#: ipaclient/frontend.py:28 ipaclient/frontend.py:90 +#: ipaserver/plugins/baseldap.py:53 +msgid "Failed members" msgstr "" -msgid "GECOS field" +#: ipaclient/frontend.py:32 ipaserver/plugins/baseldap.py:176 +msgid "Failed source hosts/hostgroups" +msgstr "" + +#: ipaclient/frontend.py:36 ipaserver/plugins/baseldap.py:179 +msgid "Failed hosts/hostgroups" +msgstr "" + +#: ipaclient/frontend.py:40 ipaserver/plugins/baseldap.py:182 +msgid "Failed users/groups" +msgstr "" + +#: ipaclient/frontend.py:44 ipaserver/plugins/baseldap.py:185 +msgid "Failed service/service groups" +msgstr "" + +#: ipaclient/frontend.py:48 ipaserver/plugins/baseldap.py:188 +msgid "Failed to remove" +msgstr "" + +#: ipaclient/frontend.py:53 ipaserver/plugins/baseldap.py:192 +msgid "Failed RunAs" +msgstr "" + +#: ipaclient/frontend.py:57 ipaserver/plugins/baseldap.py:195 +msgid "Failed RunAsGroup" +msgstr "" + +#: ipaclient/frontend.py:62 ipaserver/plugins/caacl.py:473 +msgid "Failed profiles" +msgstr "" + +#: ipaclient/frontend.py:66 ipaserver/plugins/caacl.py:476 +msgid "Failed CAs" +msgstr "" + +#: ipaclient/frontend.py:71 ipaserver/plugins/group.py:183 +#: ipaserver/plugins/hostgroup.py:95 +msgid "Failed member manager" +msgstr "" + +#: ipaclient/frontend.py:76 ipaserver/plugins/host.py:209 +msgid "Failed managedby" +msgstr "" + +#: ipaclient/frontend.py:81 ipaserver/plugins/host.py:236 +#: ipaserver/plugins/service.py:158 +msgid "Failed allowed to retrieve keytab" +msgstr "" + +#: ipaclient/frontend.py:85 ipaserver/plugins/host.py:239 +#: ipaserver/plugins/service.py:161 +msgid "Failed allowed to create keytab" +msgstr "" + +#: ipaclient/frontend.py:94 +msgid "Failed targets" +msgstr "" + +#: ipaclient/plugins/automember.py:33 ipaserver/plugins/automember.py:342 +msgid "Failed to add" +msgstr "" + +#: ipaclient/plugins/ca.py:19 ipaclient/plugins/cert.py:39 +msgid "Write certificate (chain if --chain used) to file" +msgstr "" + +#: ipaclient/plugins/certmap.py:19 +msgid "Input file" +msgstr "" + +#: ipaclient/plugins/certmap.py:20 +msgid "File to load the certificate from" +msgstr "" + +#: ipaclient/plugins/certmap.py:41 ipaclient/plugins/cert.py:130 +msgid "cannot specify both raw certificate and file" +msgstr "" + +#: ipaclient/plugins/certprofile.py:25 +#, python-format +msgid "Profile configuration stored in file '%(file)s'" +msgstr "" + +#: ipaclient/plugins/host.py:41 ipaclient/plugins/service.py:43 +#: ipaclient/plugins/user.py:74 +#, python-format +msgid "Certificate(s) stored in file '%(file)s'" +msgstr "" + +#: ipaclient/plugins/location.py:23 +msgid "Servers details:" +msgstr "" + +#: ipaclient/plugins/migration.py:37 +msgid "" +"Migration mode is disabled.\n" +"Use 'ipa config-mod --enable-migration=TRUE' to enable it." +msgstr "" + +#: ipaclient/plugins/migration.py:41 +msgid "" +"Passwords have been migrated in pre-hashed format.\n" +"IPA is unable to generate Kerberos keys unless provided\n" +"with clear text passwords. All migrated users need to\n" +"login at https://your.domain/ipa/migration/ before they\n" +"can use their Kerberos accounts." +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:35 +msgid "python-yubico is not installed." +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:40 +msgid "" +"\n" +"YubiKey Tokens\n" +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:42 +msgid "" +"\n" +"Manage YubiKey tokens.\n" +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:44 +msgid "" +"\n" +"This code is an extension to the otptoken plugin and provides support for\n" +"reading/writing YubiKey tokens directly.\n" +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:47 ipaserver/plugins/automember.py:63 +#: ipaserver/plugins/cert.py:99 ipaserver/plugins/radiusproxy.py:43 +#: ipaserver/plugins/ca.py:35 ipaserver/plugins/permission.py:97 +#: ipaserver/plugins/server.py:40 ipaserver/plugins/host.py:104 +#: ipaserver/plugins/otptoken.py:49 ipaserver/plugins/location.py:37 +#: ipaserver/plugins/dnsserver.py:39 ipaserver/plugins/schema.py:28 +#: ipaserver/plugins/sudorule.py:76 ipaserver/plugins/certmap.py:60 +#: ipaserver/plugins/vault.py:90 ipaserver/plugins/serverrole.py:19 +msgid "" +"\n" +"EXAMPLES:\n" +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:49 +msgid "" +"\n" +" Add a new token:\n" +" ipa otptoken-add-yubikey --owner=jdoe --desc=\"My YubiKey\"\n" +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:72 +msgid "Add a new YubiKey OTP token." +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:77 +msgid "YubiKey slot" +msgstr "" + +#: ipaclient/plugins/otptoken_yubikey.py:146 +msgid "No free YubiKey slot!" +msgstr "" + +#: ipaclient/plugins/server.py:20 +#, python-format +msgid "Removing %(servers)s from replication topology, please wait..." +msgstr "" + +#: ipaclient/plugins/topology.py:25 +#, python-format +msgid "Replication topology of suffix \"%(suffix)s\" is in order." +msgstr "" + +#: ipaclient/plugins/topology.py:30 +#, python-format +msgid "Replication topology of suffix \"%(suffix)s\" contains errors." +msgstr "" + +#: ipaclient/plugins/topology.py:33 +msgid "Topology is disconnected" +msgstr "" + +#: ipaclient/plugins/topology.py:35 +#, python-format +msgid "Server %(srv)s can't contact servers: %(replicas)s" +msgstr "" + +#: ipaclient/plugins/topology.py:40 +msgid "Recommended maximum number of agreements per replica exceeded" +msgstr "" + +#: ipaclient/plugins/topology.py:43 +msgid "Maximum number of agreements per replica" +msgstr "" + +#: ipaclient/plugins/topology.py:47 +#, python-format +msgid "Server \"%(srv)s\" has %(n)d agreements with servers:" +msgstr "" + +#: ipaclient/plugins/user.py:40 +msgid "Delete a user, keeping the entry available for future use" +msgstr "" + +#: ipaclient/plugins/user.py:45 +msgid "Delete a user" +msgstr "" + +#: ipaclient/plugins/user.py:54 +msgid "preserve and no-preserve cannot be both set" +msgstr "" + +#: ipaclient/plugins/dns.py:137 ipaserver/plugins/dns.py:3576 +msgid "Split DNS record to parts" +msgstr "" + +#: ipaclient/plugins/dns.py:237 +msgid "Please choose a type of DNS resource record to be added" +msgstr "" + +#: ipaclient/plugins/dns.py:238 +#, python-format +msgid "The most common types for this type of zone are: %s\n" +msgstr "" + +#: ipaclient/plugins/dns.py:243 +msgid "DNS resource record type" +msgstr "" + +#: ipaclient/plugins/dns.py:261 +#, python-format +msgid "Invalid or unsupported type. Allowed values are: %s" +msgstr "" + +#: ipaclient/plugins/dns.py:286 +msgid "No option to modify specific record provided." +msgstr "" + +#: ipaclient/plugins/dns.py:289 ipaclient/plugins/dns.py:355 +msgid "Current DNS record contents:\n" +msgstr "" + +#: ipaclient/plugins/dns.py:312 +#, python-format +msgid "Modify %(name)s '%(value)s'?" +msgstr "" + +#: ipaclient/plugins/dns.py:321 +#, python-format +msgid "" +"%(count)d %(type)s record skipped. Only one value per DNS record type can be " +"modified at one time." +msgid_plural "" +"%(count)d %(type)s records skipped. Only one value per DNS record type can " +"be modified at one time." +msgstr[0] "" +msgstr[1] "" + +#: ipaclient/plugins/dns.py:329 ipaserver/plugins/dns.py:3876 +msgid "" +"Neither --del-all nor options to delete a specific record provided.\n" +"Command help may be consulted for all supported record types." +msgstr "" + +#: ipaclient/plugins/dns.py:347 +msgid "No option to delete specific record provided." +msgstr "" + +#: ipaclient/plugins/dns.py:348 +msgid "Delete all?" +msgstr "" + +#: ipaclient/plugins/dns.py:376 +#, python-format +msgid "Delete %(name)s '%(value)s'?" +msgstr "" + +#: ipaclient/plugins/dns.py:392 ipaclient/plugins/dns.py:409 +#: ipaclient/plugins/dns.py:421 +msgid "Server will check DNS forwarder(s)." +msgstr "" + +#: ipaclient/plugins/dns.py:394 ipaclient/plugins/dns.py:411 +#: ipaclient/plugins/dns.py:423 +msgid "This may take some time, please wait ..." +msgstr "" + +#: ipaclient/plugins/dns.py:403 +msgid "DNS forwarder" +msgstr "" + +#: ipaclient/plugins/dns.py:434 +msgid "file to store DNS records in nsupdate format" +msgstr "" + +#: ipaclient/plugins/otptoken.py:66 +msgid "" +"Unable to display QR code using the configured output encoding. Please use " +"the token URI to configure your OTP device" +msgstr "" + +#: ipaclient/plugins/otptoken.py:82 +msgid "" +"QR code width is greater than that of the output tty. Please resize your " +"terminal." +msgstr "" + +#: ipaclient/plugins/otptoken.py:137 +msgid "Synchronize an OTP token." +msgstr "" + +#: ipaclient/plugins/otptoken.py:142 +msgid "User ID" +msgstr "" + +#: ipaclient/plugins/otptoken.py:144 +msgid "First Code" +msgstr "" + +#: ipaclient/plugins/otptoken.py:145 +msgid "Second Code" +msgstr "" + +#: ipaclient/plugins/otptoken.py:149 ipaserver/plugins/internal.py:1724 +msgid "Token ID" +msgstr "" + +#: ipaclient/plugins/vault.py:67 ipaclient/plugins/vault.py:833 +#, python-format +msgid "Cannot read file '%(filename)s': %(exc)s" +msgstr "" + +#: ipaclient/plugins/vault.py:74 +#, python-format +msgid "Cannot decode file '%(filename)s': %(exc)s" +msgstr "" + +#: ipaclient/plugins/vault.py:144 ipaclient/plugins/vault.py:163 +#: ipaserver/plugins/passwd.py:149 +msgid "Invalid credentials" +msgstr "" + +#: ipaclient/plugins/vault.py:181 +msgid "Create a new vault." +msgstr "" + +#: ipaclient/plugins/vault.py:187 ipaclient/plugins/vault.py:728 +#: ipaclient/plugins/vault.py:961 +msgid "Vault password" +msgstr "" + +#: ipaclient/plugins/vault.py:192 ipaclient/plugins/vault.py:733 +#: ipaclient/plugins/vault.py:966 +msgid "File containing the vault password" +msgstr "" + +#: ipaclient/plugins/vault.py:197 +msgid "File containing the vault public key" +msgstr "" + +#: ipaclient/plugins/vault.py:257 +msgid "Password can be specified only for symmetric vault" +msgstr "" + +#: ipaclient/plugins/vault.py:263 +msgid "Public key can be specified only for asymmetric vault" +msgstr "" + +#: ipaclient/plugins/vault.py:283 ipaclient/plugins/vault.py:866 +#: ipaclient/plugins/vault.py:1094 +msgid "Password specified multiple times" +msgstr "" + +#: ipaclient/plugins/vault.py:306 +msgid "Public key specified multiple times" +msgstr "" + +#: ipaclient/plugins/vault.py:322 +msgid "Missing vault public key" +msgstr "" + +#: ipaclient/plugins/vault.py:334 +#, python-format +msgid "Invalid or unsupported vault public key: %s" +msgstr "" + +#: ipaclient/plugins/vault.py:368 ipaserver/plugins/vault.py:921 +msgid "Modify a vault." +msgstr "" + +#: ipaclient/plugins/vault.py:373 ipaserver/plugins/internal.py:1731 +msgid "Change password" +msgstr "" + +#: ipaclient/plugins/vault.py:378 +msgid "Old vault password" +msgstr "" + +#: ipaclient/plugins/vault.py:383 +msgid "File containing the old vault password" +msgstr "" + +#: ipaclient/plugins/vault.py:388 +msgid "New vault password" +msgstr "" + +#: ipaclient/plugins/vault.py:393 +msgid "File containing the new vault password" +msgstr "" + +#: ipaclient/plugins/vault.py:398 +msgid "Old vault private key" +msgstr "" + +#: ipaclient/plugins/vault.py:403 +msgid "File containing the old vault private key" +msgstr "" + +#: ipaclient/plugins/vault.py:408 +msgid "File containing the new vault public key" +msgstr "" + +#: ipaclient/plugins/vault.py:514 +msgid "New public key specified multiple times" +msgstr "" + +#: ipaclient/plugins/vault.py:527 +msgid "Missing new vault public key" +msgstr "" + +#: ipaclient/plugins/vault.py:714 ipaserver/plugins/vault.py:1017 +msgid "Archive data into a vault." +msgstr "" + +#: ipaclient/plugins/vault.py:719 +msgid "Binary data to archive" +msgstr "" + +#: ipaclient/plugins/vault.py:723 +msgid "File containing data to archive" +msgstr "" + +#: ipaclient/plugins/vault.py:737 +msgid "Override existing password" +msgstr "" + +#: ipaclient/plugins/vault.py:819 +msgid "Input data specified multiple times" +msgstr "" + +#: ipaclient/plugins/vault.py:824 ipaclient/plugins/vault.py:837 +#, python-format +msgid "" +"Size of data exceeds the limit. Current vault data size limit is %(limit)d B" +msgstr "" + +#: ipaclient/plugins/vault.py:920 ipaclient/plugins/vault.py:1144 +msgid "Invalid vault type" +msgstr "" + +#: ipaclient/plugins/vault.py:951 +msgid "Retrieve a data from a vault." +msgstr "" + +#: ipaclient/plugins/vault.py:956 +msgid "File to store retrieved data" +msgstr "" + +#: ipaclient/plugins/vault.py:971 +msgid "Vault private key" +msgstr "" + +#: ipaclient/plugins/vault.py:976 +msgid "File containing the vault private key" +msgstr "" + +#: ipaclient/plugins/vault.py:983 ipaserver/plugins/internal.py:757 +msgid "Data" +msgstr "" + +#: ipaclient/plugins/vault.py:1120 +msgid "Private key specified multiple times" +msgstr "" + +#: ipaclient/plugins/vault.py:1133 +msgid "Missing vault private key" +msgstr "" + +#: ipaclient/plugins/automount.py:101 +msgid "maps not connected to /etc/auto.master:" +msgstr "" + +#: ipaclient/plugins/automount.py:120 +msgid "Import automount files for a specific location." +msgstr "" + +#: ipaclient/plugins/automount.py:124 +msgid "Master file" +msgstr "" + +#: ipaclient/plugins/automount.py:125 +msgid "Automount master file." +msgstr "" + +#: ipaclient/plugins/automount.py:132 +msgid "" +"Continuous operation mode. Errors are reported but the process continues." +msgstr "" + +#: ipaclient/plugins/automount.py:150 +#, python-format +msgid "File %(file)s not found" +msgstr "" + +#: ipaclient/plugins/automount.py:200 +#, python-format +msgid "key %(key)s already exists" +msgstr "" + +#: ipaclient/plugins/automount.py:215 +#, python-format +msgid "map %(map)s already exists" +msgstr "" + +#: ipaclient/plugins/automount.py:264 +msgid "Imported maps:" +msgstr "" + +#: ipaclient/plugins/automount.py:267 +#, python-format +msgid "Added %(map)s" +msgstr "" + +#: ipaclient/plugins/automount.py:271 +msgid "Imported keys:" +msgstr "" + +#: ipaclient/plugins/automount.py:274 +#, python-format +msgid "Added %(src)s to %(dst)s" +msgstr "" + +#: ipaclient/plugins/automount.py:281 +msgid "Ignored keys:" +msgstr "" + +#: ipaclient/plugins/automount.py:284 +#, python-format +msgid "Ignored %(src)s to %(dst)s" +msgstr "" + +#: ipaclient/plugins/automount.py:292 +msgid "Duplicate maps skipped:" +msgstr "" + +#: ipaclient/plugins/automount.py:295 +#, python-format +msgid "Skipped %(map)s" +msgstr "" + +#: ipaclient/plugins/automount.py:301 +msgid "Duplicate keys skipped:" +msgstr "" + +#: ipaclient/plugins/automount.py:304 +#, python-format +msgid "Skipped %(key)s" +msgstr "" + +#: ipaclient/plugins/cert.py:107 +msgid "Unrevoked" +msgstr "" + +#: ipaclient/plugins/cert.py:110 ipaserver/plugins/internal.py:293 +msgid "Error" +msgstr "" + +#: ipaclient/plugins/cert.py:120 +msgid "Input filename" +msgstr "" + +#: ipaclient/plugins/cert.py:121 +msgid "File to load the certificate from." +msgstr "" + +#: ipaclient/plugins/sudorule.py:30 +#, python-format +msgid "Enabled Sudo Rule \"%s\"" +msgstr "" + +#: ipaclient/plugins/sudorule.py:36 +#, python-format +msgid "Disabled Sudo Rule \"%s\"" +msgstr "" + +#: ipaclient/plugins/sudorule.py:44 +#, python-format +msgid "Added option \"%(option)s\" to Sudo Rule \"%(rule)s\"" +msgstr "" + +#: ipaclient/plugins/sudorule.py:57 +#, python-format +msgid "Removed option \"%(option)s\" from Sudo Rule \"%(rule)s\"" msgstr "" #: ipalib/cli.py:630 @@ -12657,6 +12661,198 @@ msgstr "" msgid "No file to read" msgstr "" +#: ipalib/parameters.py:415 +msgid "incorrect type" +msgstr "" + +#: ipalib/parameters.py:418 +msgid "Only one value is allowed" +msgstr "" + +#: ipalib/parameters.py:885 +msgid "this option is deprecated" +msgstr "" + +#: ipalib/parameters.py:1003 +msgid "must be True or False" +msgstr "" + +#: ipalib/parameters.py:1101 +msgid "must be an integer" +msgstr "" + +#: ipalib/parameters.py:1167 +#, python-format +msgid "must be at least %(minvalue)d" +msgstr "" + +#: ipalib/parameters.py:1179 +#, python-format +msgid "can be at most %(maxvalue)d" +msgstr "" + +#: ipalib/parameters.py:1197 +msgid "must be a decimal number" +msgstr "" + +#: ipalib/parameters.py:1243 +#, python-format +msgid "must be at least %(minvalue)s" +msgstr "" + +#: ipalib/parameters.py:1255 +#, python-format +msgid "can be at most %(maxvalue)s" +msgstr "" + +#: ipalib/parameters.py:1265 +#, python-format +msgid "" +"number class '%(cls)s' is not included in a list of allowed number classes: " +"%(allowed)s" +msgstr "" + +#: ipalib/parameters.py:1388 +#, python-format +msgid "must match pattern \"%(pattern)s\"" +msgstr "" + +#: ipalib/parameters.py:1408 +msgid "must be binary data" +msgstr "" + +#: ipalib/parameters.py:1427 +#, python-format +msgid "must be at least %(minlength)d bytes" +msgstr "" + +#: ipalib/parameters.py:1439 +#, python-format +msgid "can be at most %(maxlength)d bytes" +msgstr "" + +#: ipalib/parameters.py:1451 +#, python-format +msgid "must be exactly %(length)d bytes" +msgstr "" + +#: ipalib/parameters.py:1468 +msgid "must be a certificate" +msgstr "" + +#: ipalib/parameters.py:1504 +msgid "must be a certificate signing request" +msgstr "" + +#: ipalib/parameters.py:1550 +#, python-format +msgid "Failure decoding Certificate Signing Request: %s" +msgstr "" + +#: ipalib/parameters.py:1574 +msgid "must be Unicode text" +msgstr "" + +#: ipalib/parameters.py:1605 +msgid "Leading and trailing spaces are not allowed" +msgstr "" + +#: ipalib/parameters.py:1615 +#, python-format +msgid "must be at least %(minlength)d characters" +msgstr "" + +#: ipalib/parameters.py:1627 +#, python-format +msgid "can be at most %(maxlength)d characters" +msgstr "" + +#: ipalib/parameters.py:1639 +#, python-format +msgid "must be exactly %(length)d characters" +msgstr "" + +#: ipalib/parameters.py:1661 +#, python-format +msgid "The character %(char)r is not allowed." +msgstr "" + +#: ipalib/parameters.py:1714 +#, python-format +msgid "must be '%(value)s'" +msgstr "" + +#: ipalib/parameters.py:1717 +#, python-format +msgid "must be one of %(values)s" +msgstr "" + +#: ipalib/parameters.py:1834 +msgid "must be datetime value" +msgstr "" + +#: ipalib/parameters.py:1852 +msgid "does not match any of accepted formats: " +msgstr "" + +#: ipalib/parameters.py:2035 +msgid "incomplete time value" +msgstr "" + +#: ipalib/parameters.py:2112 +msgid "must be DNS name" +msgstr "" + +#: ipalib/parameters.py:2140 +msgid "must be absolute" +msgstr "" + +#: ipalib/parameters.py:2146 +msgid "must be relative" +msgstr "" + +#: ipalib/parameters.py:2157 +msgid "must be dictionary" +msgstr "" + +#: ipalib/parameters.py:2166 +msgid "must be Kerberos principal" +msgstr "" + +#: ipalib/parameters.py:2182 +#, python-format +msgid "Malformed principal: '%(value)s'" +msgstr "" + +#: ipalib/parameters.py:2191 +msgid "Service principal is required" +msgstr "" + +#: ipalib/output.py:110 +msgid "A dictionary representing an LDAP entry" +msgstr "" + +#: ipalib/output.py:118 +msgid "A list of LDAP entries" +msgstr "" + +#: ipalib/output.py:170 +msgid "All commands should at least have a result" +msgstr "" + +#: ipalib/frontend.py:425 +msgid "Results are truncated, try a more specific search" +msgstr "" + +#: ipalib/frontend.py:584 ipatests/test_xmlrpc/test_ping_plugin.py:52 +#, python-format +msgid "Unknown option: %(option)s" +msgstr "" + +#: ipalib/frontend.py:986 ipaserver/plugins/batch.py:83 +msgid "Client version. Used to determine if server will accept request." +msgstr "" + #: ipalib/errors.py:296 #, python-format msgid "%(cver)s client incompatible with %(sver)s server at '%(server)s'" @@ -13110,17 +13306,161 @@ msgid "" "prevents a trust to '%(conflict)s'" msgstr "" -#: ipalib/frontend.py:425 -msgid "Results are truncated, try a more specific search" -msgstr "" - -#: ipalib/frontend.py:584 ipatests/test_xmlrpc/test_ping_plugin.py:52 +#: ipalib/misc.py:22 #, python-format -msgid "Unknown option: %(option)s" +msgid "%(count)d variables" msgstr "" -#: ipalib/frontend.py:986 ipaserver/plugins/batch.py:83 -msgid "Client version. Used to determine if server will accept request." +#: ipalib/misc.py:96 +#, python-format +msgid "%(count)d plugin loaded" +msgid_plural "%(count)d plugins loaded" +msgstr[0] "" +msgstr[1] "" + +#: ipalib/plugable.py:540 +#, python-format +msgid "%(filename)s: file not found" +msgstr "" + +#: ipalib/plugable.py:613 +#, python-brace-format +msgid "Unable to parse option {item}" +msgstr "" + +#: ipalib/rpc.py:1114 +msgid "any of the configured servers" +msgstr "" + +#: ipalib/rpc.py:1197 +msgid "Exceeded number of tries to forward a request." +msgstr "" + +#: ipalib/util.py:214 +msgid "Filename is empty" +msgstr "" + +#: ipalib/util.py:218 +#, python-format +msgid "Permission denied: %(file)s" +msgstr "" + +#: ipalib/util.py:415 ipalib/util.py:947 +msgid "empty DNS label" +msgstr "" + +#: ipalib/util.py:418 +msgid "DNS label cannot be longer that 63 characters" +msgstr "" + +#: ipalib/util.py:423 +#, python-format +msgid "" +"only letters, numbers, %(chars)s are allowed. DNS label may not start or end " +"with %(chars2)s" +msgstr "" + +#: ipalib/util.py:439 +msgid "single label {}s are not supported" +msgstr "" + +#: ipalib/util.py:449 +msgid "too many '@' characters" +msgstr "" + +#: ipalib/util.py:478 +msgid "cannot be longer that {} characters" +msgstr "" + +#: ipalib/util.py:485 +msgid "hostname contains empty label (consecutive dots)" +msgstr "" + +#: ipalib/util.py:489 +msgid "not fully qualified" +msgstr "" + +#: ipalib/util.py:502 ipalib/util.py:511 +msgid "invalid SSH public key" +msgstr "" + +#: ipalib/util.py:514 +msgid "options are not allowed" +msgstr "" + +#: ipalib/util.py:750 +msgid "invalid hostmask" +msgstr "" + +#: ipalib/util.py:764 +#, python-format +msgid "query '%(owner)s %(rtype)s': %(error)s" +msgstr "" + +#: ipalib/util.py:768 +#, python-format +msgid "query '%(owner)s %(rtype)s' with EDNS0: %(error)s" +msgstr "" + +#: ipalib/util.py:772 +#, python-format +msgid "" +"answer to query '%(owner)s %(rtype)s' is missing DNSSEC signatures (no RRSIG " +"data)" +msgstr "" + +#: ipalib/util.py:777 +#, python-format +msgid "record '%(owner)s %(rtype)s' failed DNSSEC validation on server %(ip)s" +msgstr "" + +#: ipalib/util.py:945 +msgid "invalid escape code in domain name" +msgstr "" + +#: ipalib/util.py:949 +msgid "domain name cannot be longer than 255 characters" +msgstr "" + +#: ipalib/util.py:951 +msgid "DNS label cannot be longer than 63 characters" +msgstr "" + +#: ipalib/util.py:953 +msgid "invalid domain name" +msgstr "" + +#: ipalib/util.py:966 +#, python-format +msgid "domain name '%(domain)s' should be normalized to: %(normalized)s" +msgstr "" + +#: ipalib/util.py:1115 +#, python-format +msgid "invalid domain-name: %s" +msgstr "" + +#: ipalib/util.py:1127 +#, python-format +msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!" +msgstr "" + +#: ipalib/util.py:1133 +msgid "invalid IP address format" +msgstr "" + +#: ipalib/util.py:1151 +#, python-format +msgid "%(port)s is not a valid port" +msgstr "" + +#: ipalib/util.py:1184 +msgid "" +"at least one value equal to the canonical principal name must be present" +msgstr "" + +#: ipalib/util.py:1271 +msgid "realm or UPN suffix overlaps with trusted domain namespace" msgstr "" #: ipalib/messages.py:84 @@ -13309,342 +13649,6 @@ msgstr "" msgid "The certificate for %(ca)s is not available on this server." msgstr "" -#: ipalib/misc.py:22 -#, python-format -msgid "%(count)d variables" -msgstr "" - -#: ipalib/misc.py:96 -#, python-format -msgid "%(count)d plugin loaded" -msgid_plural "%(count)d plugins loaded" -msgstr[0] "" -msgstr[1] "" - -#: ipalib/output.py:110 -msgid "A dictionary representing an LDAP entry" -msgstr "" - -#: ipalib/output.py:118 -msgid "A list of LDAP entries" -msgstr "" - -#: ipalib/output.py:170 -msgid "All commands should at least have a result" -msgstr "" - -#: ipalib/parameters.py:415 -msgid "incorrect type" -msgstr "" - -#: ipalib/parameters.py:418 -msgid "Only one value is allowed" -msgstr "" - -#: ipalib/parameters.py:885 -msgid "this option is deprecated" -msgstr "" - -#: ipalib/parameters.py:1003 -msgid "must be True or False" -msgstr "" - -#: ipalib/parameters.py:1101 -msgid "must be an integer" -msgstr "" - -#: ipalib/parameters.py:1167 -#, python-format -msgid "must be at least %(minvalue)d" -msgstr "" - -#: ipalib/parameters.py:1179 -#, python-format -msgid "can be at most %(maxvalue)d" -msgstr "" - -#: ipalib/parameters.py:1197 -msgid "must be a decimal number" -msgstr "" - -#: ipalib/parameters.py:1243 -#, python-format -msgid "must be at least %(minvalue)s" -msgstr "" - -#: ipalib/parameters.py:1255 -#, python-format -msgid "can be at most %(maxvalue)s" -msgstr "" - -#: ipalib/parameters.py:1265 -#, python-format -msgid "" -"number class '%(cls)s' is not included in a list of allowed number classes: " -"%(allowed)s" -msgstr "" - -#: ipalib/parameters.py:1388 -#, python-format -msgid "must match pattern \"%(pattern)s\"" -msgstr "" - -#: ipalib/parameters.py:1408 -msgid "must be binary data" -msgstr "" - -#: ipalib/parameters.py:1427 -#, python-format -msgid "must be at least %(minlength)d bytes" -msgstr "" - -#: ipalib/parameters.py:1439 -#, python-format -msgid "can be at most %(maxlength)d bytes" -msgstr "" - -#: ipalib/parameters.py:1451 -#, python-format -msgid "must be exactly %(length)d bytes" -msgstr "" - -#: ipalib/parameters.py:1468 -msgid "must be a certificate" -msgstr "" - -#: ipalib/parameters.py:1504 -msgid "must be a certificate signing request" -msgstr "" - -#: ipalib/parameters.py:1550 -#, python-format -msgid "Failure decoding Certificate Signing Request: %s" -msgstr "" - -#: ipalib/parameters.py:1574 -msgid "must be Unicode text" -msgstr "" - -#: ipalib/parameters.py:1605 -msgid "Leading and trailing spaces are not allowed" -msgstr "" - -#: ipalib/parameters.py:1615 -#, python-format -msgid "must be at least %(minlength)d characters" -msgstr "" - -#: ipalib/parameters.py:1627 -#, python-format -msgid "can be at most %(maxlength)d characters" -msgstr "" - -#: ipalib/parameters.py:1639 -#, python-format -msgid "must be exactly %(length)d characters" -msgstr "" - -#: ipalib/parameters.py:1661 -#, python-format -msgid "The character %(char)r is not allowed." -msgstr "" - -#: ipalib/parameters.py:1714 -#, python-format -msgid "must be '%(value)s'" -msgstr "" - -#: ipalib/parameters.py:1717 -#, python-format -msgid "must be one of %(values)s" -msgstr "" - -#: ipalib/parameters.py:1834 -msgid "must be datetime value" -msgstr "" - -#: ipalib/parameters.py:1852 -msgid "does not match any of accepted formats: " -msgstr "" - -#: ipalib/parameters.py:2035 -msgid "incomplete time value" -msgstr "" - -#: ipalib/parameters.py:2112 -msgid "must be DNS name" -msgstr "" - -#: ipalib/parameters.py:2140 -msgid "must be absolute" -msgstr "" - -#: ipalib/parameters.py:2146 -msgid "must be relative" -msgstr "" - -#: ipalib/parameters.py:2157 -msgid "must be dictionary" -msgstr "" - -#: ipalib/parameters.py:2166 -msgid "must be Kerberos principal" -msgstr "" - -#: ipalib/parameters.py:2182 -#, python-format -msgid "Malformed principal: '%(value)s'" -msgstr "" - -#: ipalib/parameters.py:2191 -msgid "Service principal is required" -msgstr "" - -#: ipalib/plugable.py:540 -#, python-format -msgid "%(filename)s: file not found" -msgstr "" - -#: ipalib/plugable.py:613 -#, python-brace-format -msgid "Unable to parse option {item}" -msgstr "" - -#: ipalib/rpc.py:1114 -msgid "any of the configured servers" -msgstr "" - -#: ipalib/rpc.py:1197 -msgid "Exceeded number of tries to forward a request." -msgstr "" - -#: ipalib/util.py:214 -msgid "Filename is empty" -msgstr "" - -#: ipalib/util.py:218 -#, python-format -msgid "Permission denied: %(file)s" -msgstr "" - -#: ipalib/util.py:415 ipalib/util.py:947 -msgid "empty DNS label" -msgstr "" - -#: ipalib/util.py:418 -msgid "DNS label cannot be longer that 63 characters" -msgstr "" - -#: ipalib/util.py:423 -#, python-format -msgid "" -"only letters, numbers, %(chars)s are allowed. DNS label may not start or end " -"with %(chars2)s" -msgstr "" - -#: ipalib/util.py:439 -msgid "single label {}s are not supported" -msgstr "" - -#: ipalib/util.py:449 -msgid "too many '@' characters" -msgstr "" - -#: ipalib/util.py:478 -msgid "cannot be longer that {} characters" -msgstr "" - -#: ipalib/util.py:485 -msgid "hostname contains empty label (consecutive dots)" -msgstr "" - -#: ipalib/util.py:489 -msgid "not fully qualified" -msgstr "" - -#: ipalib/util.py:502 ipalib/util.py:511 -msgid "invalid SSH public key" -msgstr "" - -#: ipalib/util.py:514 -msgid "options are not allowed" -msgstr "" - -#: ipalib/util.py:750 -msgid "invalid hostmask" -msgstr "" - -#: ipalib/util.py:764 -#, python-format -msgid "query '%(owner)s %(rtype)s': %(error)s" -msgstr "" - -#: ipalib/util.py:768 -#, python-format -msgid "query '%(owner)s %(rtype)s' with EDNS0: %(error)s" -msgstr "" - -#: ipalib/util.py:772 -#, python-format -msgid "" -"answer to query '%(owner)s %(rtype)s' is missing DNSSEC signatures (no RRSIG " -"data)" -msgstr "" - -#: ipalib/util.py:777 -#, python-format -msgid "record '%(owner)s %(rtype)s' failed DNSSEC validation on server %(ip)s" -msgstr "" - -#: ipalib/util.py:945 -msgid "invalid escape code in domain name" -msgstr "" - -#: ipalib/util.py:949 -msgid "domain name cannot be longer than 255 characters" -msgstr "" - -#: ipalib/util.py:951 -msgid "DNS label cannot be longer than 63 characters" -msgstr "" - -#: ipalib/util.py:953 -msgid "invalid domain name" -msgstr "" - -#: ipalib/util.py:966 -#, python-format -msgid "domain name '%(domain)s' should be normalized to: %(normalized)s" -msgstr "" - -#: ipalib/util.py:1115 -#, python-format -msgid "invalid domain-name: %s" -msgstr "" - -#: ipalib/util.py:1127 -#, python-format -msgid "invalid IP address version (is %(value)d, must be %(required_value)d)!" -msgstr "" - -#: ipalib/util.py:1133 -msgid "invalid IP address format" -msgstr "" - -#: ipalib/util.py:1151 -#, python-format -msgid "%(port)s is not a valid port" -msgstr "" - -#: ipalib/util.py:1184 -msgid "" -"at least one value equal to the canonical principal name must be present" -msgstr "" - -#: ipalib/util.py:1271 -msgid "realm or UPN suffix overlaps with trusted domain namespace" -msgstr "" - #: ipapython/dogtag.py:114 #, python-format msgid "Retrieving CA cert chain failed: %s" @@ -13670,47 +13674,6 @@ msgstr "" msgid "objectclass %s not found" msgstr "" -#: ipaserver/dcerpc_common.py:20 -msgid "Trusting forest" -msgstr "" - -#: ipaserver/dcerpc_common.py:21 -msgid "Trusted forest" -msgstr "" - -#: ipaserver/dcerpc_common.py:26 -msgid "Established and verified" -msgstr "" - -#: ipaserver/dcerpc_common.py:27 -msgid "Waiting for confirmation by remote side" -msgstr "" - -#: ipaserver/dcerpc_common.py:30 -msgid "Unknown" -msgstr "" - -#: ipaserver/dcerpc_common.py:36 -msgid "Non-Active Directory domain" -msgstr "" - -#: ipaserver/dcerpc_common.py:37 ipaserver/plugins/internal.py:1247 -msgid "Active Directory domain" -msgstr "" - -#: ipaserver/dcerpc_common.py:38 -msgid "RFC4120-compliant Kerberos realm" -msgstr "" - -#: ipaserver/dcerpc_common.py:39 -msgid "" -"Non-transitive external trust to a domain in another Active Directory forest" -msgstr "" - -#: ipaserver/dcerpc_common.py:41 -msgid "Non-transitive external trust to an RFC4120-compliant Kerberos realm" -msgstr "" - #: ipaserver/install/certs.py:480 #, python-format msgid "Unable to communicate with CMS (status %d)" @@ -13725,2639 +13688,6 @@ msgstr "" msgid "Replication agreement for %(hostname)s not found" msgstr "" -#: ipaserver/plugins/aci.py:165 -msgid "A list of ACI values" -msgstr "" - -#: ipaserver/plugins/aci.py:229 -msgid "type, filter, subtree and targetgroup are mutually exclusive" -msgstr "" - -#: ipaserver/plugins/aci.py:232 -msgid "ACI prefix is required" -msgstr "" - -#: ipaserver/plugins/aci.py:235 -msgid "" -"at least one of: type, filter, subtree, targetgroup, attrs or memberof are " -"required" -msgstr "" - -#: ipaserver/plugins/aci.py:238 -msgid "filter and memberof are mutually exclusive" -msgstr "" - -#: ipaserver/plugins/aci.py:244 -msgid "group, permission and self are mutually exclusive" -msgstr "" - -#: ipaserver/plugins/aci.py:246 -msgid "One of group, permission or self is required" -msgstr "" - -#: ipaserver/plugins/aci.py:269 -#, python-format -msgid "Group '%s' does not exist" -msgstr "" - -#: ipaserver/plugins/aci.py:295 -msgid "empty filter" -msgstr "" - -#: ipaserver/plugins/aci.py:316 -#, python-format -msgid "Syntax Error: %(error)s" -msgstr "" - -#: ipaserver/plugins/aci.py:361 -#, python-format -msgid "invalid DN (%s)" -msgstr "" - -#: ipaserver/plugins/aci.py:408 -#, python-format -msgid "ACI with name \"%s\" not found" -msgstr "" - -#: ipaserver/plugins/aci.py:437 -msgid "ACI object." -msgstr "" - -#: ipaserver/plugins/aci.py:440 -msgid "ACIs" -msgstr "" - -#: ipaserver/plugins/aci.py:514 ipaserver/plugins/delegation.py:101 -#: ipaserver/plugins/permission.py:359 ipaserver/plugins/selfservice.py:94 -msgid "ACI" -msgstr "" - -#: ipaserver/plugins/aci.py:524 -#, python-format -msgid "Created ACI \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/aci.py:577 -#, python-format -msgid "Deleted ACI \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/aci.py:620 -#, python-format -msgid "Modified ACI \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/aci.py:694 -#, python-format -msgid "%(count)d ACI matched" -msgid_plural "%(count)d ACIs matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/aci.py:929 -#, python-format -msgid "Renamed ACI to \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automember.py:43 -msgid "" -"\n" -"Auto Membership Rule.\n" -msgstr "" - -#: ipaserver/plugins/automember.py:45 -msgid "" -"\n" -"Bring clarity to the membership of hosts and users by configuring inclusive\n" -"or exclusive regex patterns, you can automatically assign a new entries " -"into\n" -"a group or hostgroup based upon attribute information.\n" -msgstr "" - -#: ipaserver/plugins/automember.py:49 -msgid "" -"\n" -"A rule is directly associated with a group by name, so you cannot create\n" -"a rule without an accompanying group or hostgroup.\n" -msgstr "" - -#: ipaserver/plugins/automember.py:52 -msgid "" -"\n" -"A condition is a regular expression used by 389-ds to match a new incoming\n" -"entry with an automember rule. If it matches an inclusive rule then the\n" -"entry is added to the appropriate group or hostgroup.\n" -msgstr "" - -#: ipaserver/plugins/automember.py:56 -msgid "" -"\n" -"A default group or hostgroup could be specified for entries that do not\n" -"match any rule. In case of user entries this group will be a fallback group\n" -"because all users are by default members of group specified in IPA config.\n" -msgstr "" - -#: ipaserver/plugins/automember.py:60 -msgid "" -"\n" -"The automember-rebuild command can be used to retroactively run automember " -"rules\n" -"against existing entries, thus rebuilding their membership.\n" -msgstr "" - -#: ipaserver/plugins/automember.py:65 -msgid "" -"\n" -" Add the initial group or hostgroup:\n" -" ipa hostgroup-add --desc=\"Web Servers\" webservers\n" -" ipa group-add --desc=\"Developers\" devel\n" -msgstr "" - -#: ipaserver/plugins/automember.py:69 -msgid "" -"\n" -" Add the initial rule:\n" -" ipa automember-add --type=hostgroup webservers\n" -" ipa automember-add --type=group devel\n" -msgstr "" - -#: ipaserver/plugins/automember.py:73 -msgid "" -"\n" -" Add a condition to the rule:\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" -" ipa automember-add-condition --key=manager --type=group --inclusive-" -"regex=^uid=mscott devel\n" -msgstr "" - -#: ipaserver/plugins/automember.py:77 -msgid "" -"\n" -" Add an exclusive condition to the rule to prevent auto assignment:\n" -" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" -"regex=^web5\\.example\\.com webservers\n" -msgstr "" - -#: ipaserver/plugins/automember.py:80 -msgid "" -"\n" -" Add a host:\n" -" ipa host-add web1.example.com\n" -msgstr "" - -#: ipaserver/plugins/automember.py:83 -msgid "" -"\n" -" Add a user:\n" -" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" -msgstr "" - -#: ipaserver/plugins/automember.py:86 -msgid "" -"\n" -" Verify automembership:\n" -" ipa hostgroup-show webservers\n" -" Host-group: webservers\n" -" Description: Web Servers\n" -" Member hosts: web1.example.com\n" -"\n" -" ipa group-show devel\n" -" Group name: devel\n" -" Description: Developers\n" -" GID: 1004200000\n" -" Member users: tuser\n" -msgstr "" - -#: ipaserver/plugins/automember.py:98 -msgid "" -"\n" -" Remove a condition from the rule:\n" -" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" -"regex=^web[1-9]+\\.example\\.com webservers\n" -msgstr "" - -#: ipaserver/plugins/automember.py:101 -msgid "" -"\n" -" Modify the automember rule:\n" -" ipa automember-mod\n" -msgstr "" - -#: ipaserver/plugins/automember.py:104 -msgid "" -"\n" -" Set the default (fallback) target group:\n" -" ipa automember-default-group-set --default-group=webservers --" -"type=hostgroup\n" -" ipa automember-default-group-set --default-group=ipausers --type=group\n" -msgstr "" - -#: ipaserver/plugins/automember.py:108 -msgid "" -"\n" -" Remove the default (fallback) target group:\n" -" ipa automember-default-group-remove --type=hostgroup\n" -" ipa automember-default-group-remove --type=group\n" -msgstr "" - -#: ipaserver/plugins/automember.py:112 -msgid "" -"\n" -" Show the default (fallback) target group:\n" -" ipa automember-default-group-show --type=hostgroup\n" -" ipa automember-default-group-show --type=group\n" -msgstr "" - -#: ipaserver/plugins/automember.py:116 -msgid "" -"\n" -" Find all of the automember rules:\n" -" ipa automember-find\n" -msgstr "" - -#: ipaserver/plugins/automember.py:119 -msgid "" -"\n" -" Find all of the orphan automember rules:\n" -" ipa automember-find-orphans --type=hostgroup\n" -" Find all of the orphan automember rules and remove them:\n" -" ipa automember-find-orphans --type=hostgroup --remove\n" -msgstr "" - -#: ipaserver/plugins/automember.py:124 -msgid "" -"\n" -" Display a automember rule:\n" -" ipa automember-show --type=hostgroup webservers\n" -" ipa automember-show --type=group devel\n" -msgstr "" - -#: ipaserver/plugins/automember.py:128 -msgid "" -"\n" -" Delete an automember rule:\n" -" ipa automember-del --type=hostgroup webservers\n" -" ipa automember-del --type=group devel\n" -msgstr "" - -#: ipaserver/plugins/automember.py:132 -msgid "" -"\n" -" Rebuild membership for all users:\n" -" ipa automember-rebuild --type=group\n" -msgstr "" - -#: ipaserver/plugins/automember.py:135 -msgid "" -"\n" -" Rebuild membership for all hosts:\n" -" ipa automember-rebuild --type=hostgroup\n" -msgstr "" - -#: ipaserver/plugins/automember.py:138 -msgid "" -"\n" -" Rebuild membership for specified users:\n" -" ipa automember-rebuild --users=tuser1 --users=tuser2\n" -msgstr "" - -#: ipaserver/plugins/automember.py:141 -msgid "" -"\n" -" Rebuild membership for specified hosts:\n" -" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example." -"com\n" -msgstr "" - -#: ipaserver/plugins/automember.py:244 -msgid "Auto Membership Rule" -msgstr "" - -#: ipaserver/plugins/automember.py:275 -#, python-format -msgid "%(otype)s \"%(oname)s\" not found" -msgstr "" - -#: ipaserver/plugins/automember.py:301 -#, python-format -msgid "%s is not a valid attribute." -msgstr "" - -#: ipaserver/plugins/automember.py:314 -msgid "" -"\n" -" Add an automember rule.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:318 -#, python-format -msgid "Added automember rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automember.py:325 -msgid "Auto Membership is not configured" -msgstr "" - -#: ipaserver/plugins/automember.py:337 -msgid "" -"\n" -" Add conditions to an automember rule.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:348 -#, python-format -msgid "Added condition(s) to \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automember.py:371 ipaserver/plugins/automember.py:455 -#, python-format -msgid "Auto member rule: %s not found!" -msgstr "" - -#: ipaserver/plugins/automember.py:413 -msgid "" -"\n" -" Override this so we can add completed and failed to the return " -"result.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:428 -msgid "" -"\n" -" Remove conditions from an automember rule.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:432 -#, python-format -msgid "Removed condition(s) from \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automember.py:496 -msgid "" -"\n" -" Override this so we can set completed and failed.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:511 -msgid "" -"\n" -" Modify an automember rule.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:515 -#, python-format -msgid "Modified automember rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automember.py:525 -msgid "" -"\n" -" Delete an automember rule.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:529 -#, python-format -msgid "Deleted automember rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automember.py:534 -msgid "" -"\n" -" Search for automember rules.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:540 ipaserver/plugins/automember.py:840 -#, python-format -msgid "%(count)d rules matched" -msgid_plural "%(count)d rules matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/automember.py:552 -msgid "" -"\n" -" Display information about an automember rule.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:576 -msgid "" -"\n" -" Set default (fallback) group for all unmatched entries.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:590 -#, python-format -msgid "Set default (fallback) group for automember \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automember.py:607 -msgid "" -"\n" -" Remove default (fallback) group for all unmatched entries.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:614 -#, python-format -msgid "Removed default (fallback) group for automember \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automember.py:625 ipaserver/plugins/automember.py:633 -#: ipaserver/plugins/automember.py:661 -msgid "No default (fallback) group set" -msgstr "" - -#: ipaserver/plugins/automember.py:644 -msgid "" -"\n" -" Display information about the default (fallback) automember groups.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:675 -msgid "Task DN" -msgstr "" - -#: ipaserver/plugins/automember.py:676 -msgid "DN of the started task" -msgstr "" - -#: ipaserver/plugins/automember.py:727 -msgid "at least one of options: type, users, hosts must be specified" -msgstr "" - -#: ipaserver/plugins/automember.py:733 -msgid "users and hosts cannot both be set" -msgstr "" - -#: ipaserver/plugins/automember.py:737 -msgid "hosts cannot be set when type is 'group'" -msgstr "" - -#: ipaserver/plugins/automember.py:741 -msgid "users cannot be set when type is 'hostgroup'" -msgstr "" - -#: ipaserver/plugins/automember.py:795 -msgid "Automember rebuild membership task started" -msgstr "" - -#: ipaserver/plugins/automember.py:799 ipaserver/plugins/internal.py:164 -msgid "Automember rebuild membership task completed" -msgstr "" - -#: ipaserver/plugins/automember.py:815 -#, python-format -msgid "Task DN = '%s'" -msgstr "" - -#: ipaserver/plugins/automember.py:818 ipaserver/plugins/internal.py:1942 -msgid "Automember" -msgstr "" - -#: ipaserver/plugins/automember.py:828 -msgid "" -"\n" -" Search for orphan automember rules. The command might need to be run as\n" -" a privileged user user to get all orphan rules.\n" -" " -msgstr "" - -#: ipaserver/plugins/automember.py:835 -msgid "Remove orphan automember rules" -msgstr "" - -#: ipaserver/plugins/automount.py:218 -msgid "automount location" -msgstr "" - -#: ipaserver/plugins/automount.py:219 -msgid "automount locations" -msgstr "" - -#: ipaserver/plugins/automount.py:222 -msgid "Automount Locations" -msgstr "" - -#: ipaserver/plugins/automount.py:223 -msgid "Automount Location" -msgstr "" - -#: ipaserver/plugins/automount.py:263 -#, python-format -msgid "Added automount location \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:283 -#, python-format -msgid "Deleted automount location \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:296 -#, python-format -msgid "%(count)d automount location matched" -msgid_plural "%(count)d automount locations matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/automount.py:349 -msgid "automount map" -msgstr "" - -#: ipaserver/plugins/automount.py:350 -msgid "automount maps" -msgstr "" - -#: ipaserver/plugins/automount.py:393 -msgid "Automount Maps" -msgstr "" - -#: ipaserver/plugins/automount.py:394 -msgid "Automount Map" -msgstr "" - -#: ipaserver/plugins/automount.py:401 -#, python-format -msgid "Added automount map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:408 -#, python-format -msgid "Deleted automount map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:428 -#, python-format -msgid "Modified automount map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:436 -#, python-format -msgid "%(count)d automount map matched" -msgid_plural "%(count)d automount maps matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/automount.py:448 -msgid "Automount key object." -msgstr "" - -#: ipaserver/plugins/automount.py:452 -msgid "automount key" -msgstr "" - -#: ipaserver/plugins/automount.py:453 -msgid "automount keys" -msgstr "" - -#: ipaserver/plugins/automount.py:512 -msgid "Automount Keys" -msgstr "" - -#: ipaserver/plugins/automount.py:513 -msgid "Automount Key" -msgstr "" - -#: ipaserver/plugins/automount.py:514 -#, python-format -msgid "" -"The key,info pair must be unique. A key named %(key)s with info %(info)s " -"already exists" -msgstr "" - -#: ipaserver/plugins/automount.py:515 -#, python-format -msgid "key named %(key)s already exists" -msgstr "" - -#: ipaserver/plugins/automount.py:516 -#, python-format -msgid "The automount key %(key)s with info %(info)s does not exist" -msgstr "" - -#: ipaserver/plugins/automount.py:566 -#, python-format -msgid "" -"More than one entry with key %(key)s found, use --info to select specific " -"entry." -msgstr "" - -#: ipaserver/plugins/automount.py:625 -#, python-format -msgid "Added automount key \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:654 -#, python-format -msgid "Added automount indirect map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:678 -msgid "mount point is relative to parent map, cannot begin with /" -msgstr "" - -#: ipaserver/plugins/automount.py:707 -#, python-format -msgid "Deleted automount key \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:748 -#, python-format -msgid "Modified automount key \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/automount.py:807 -#, python-format -msgid "%(count)d automount key matched" -msgid_plural "%(count)d automount keys matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/baseldap.py:101 -msgid "Member service groups" -msgstr "" - -#: ipaserver/plugins/baseldap.py:110 -msgid "Member HBAC service groups" -msgstr "" - -#: ipaserver/plugins/baseldap.py:127 -msgid "Member ID user overrides" -msgstr "" - -#: ipaserver/plugins/baseldap.py:129 -msgid "Indirect Member ID user overrides" -msgstr "" - -#: ipaserver/plugins/baseldap.py:146 -msgid "Indirect Member permissions" -msgstr "" - -#: ipaserver/plugins/baseldap.py:149 -msgid "Indirect Member HBAC service" -msgstr "" - -#: ipaserver/plugins/baseldap.py:152 -msgid "Indirect Member HBAC service group" -msgstr "" - -#: ipaserver/plugins/baseldap.py:213 -msgid "Invalid format. Should be name=value" -msgstr "" - -#: ipaserver/plugins/baseldap.py:584 -msgid "An IPA master host cannot be deleted or disabled" -msgstr "" - -#: ipaserver/plugins/baseldap.py:615 -msgid "entry" -msgstr "" - -#: ipaserver/plugins/baseldap.py:616 -msgid "entries" -msgstr "" - -#: ipaserver/plugins/baseldap.py:654 ipaserver/plugins/baseldap.py:655 -msgid "Entry" -msgstr "" - -#: ipaserver/plugins/baseldap.py:658 -#, python-format -msgid "container entry (%(container)s) not found" -msgstr "" - -#: ipaserver/plugins/baseldap.py:659 -#, python-format -msgid "%(parent)s: %(oname)s not found" -msgstr "" - -#: ipaserver/plugins/baseldap.py:660 ipaserver/plugins/schema.py:257 -#: ipaserver/plugins/schema.py:333 ipaserver/plugins/schema.py:424 -#: ipaserver/plugins/schema.py:661 ipaserver/plugins/schema.py:754 -#, python-format -msgid "%(pkey)s: %(oname)s not found" -msgstr "" - -#: ipaserver/plugins/baseldap.py:661 -#, python-format -msgid "%(oname)s with name \"%(pkey)s\" already exists" -msgstr "" - -#: ipaserver/plugins/baseldap.py:954 ipaserver/plugins/baseldap.py:962 -#, python-format -msgid "attribute \"%(attribute)s\" not allowed" -msgstr "" - -#: ipaserver/plugins/baseldap.py:967 -#, python-format -msgid "these attributes are not allowed: %(attrs)s" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1025 -msgid "attribute is not configurable" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1128 -msgid "No such attribute on this entry" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1484 -#, python-format -msgid "Rename the %(ldap_obj_name)s object" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1582 ipaserver/plugins/baseldap.py:2490 -msgid "the entry was deleted while being modified" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1715 ipaserver/plugins/baseldap.py:2217 -#, python-format -msgid "%s" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1716 -#: ipaserver/plugins/servicedelegation.py:213 -#: ipaserver/plugins/servicedelegation.py:303 -#, python-format -msgid "member %s" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1758 ipaserver/plugins/baseldap.py:2241 -#, python-format -msgid "%s to add" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1857 ipaserver/plugins/baseldap.py:2340 -#, python-format -msgid "%s to remove" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1957 ipaserver/plugins/schema.py:122 -#, python-format -msgid "Results should contain primary key attribute only (\"%s\")" -msgstr "" - -#: ipaserver/plugins/baseldap.py:1965 -#, python-format -msgid "" -"Search for %(searched_object)s with these %(relationship)s %(ldap_object)s." -msgstr "" - -#: ipaserver/plugins/baseldap.py:1966 -#, python-format -msgid "" -"Search for %(searched_object)s without these %(relationship)s " -"%(ldap_object)s." -msgstr "" - -#: ipaserver/plugins/baseldap.py:2521 -#, python-format -msgid "added attribute value to entry %(value)s" -msgstr "" - -#: ipaserver/plugins/baseldap.py:2535 -#, python-format -msgid "removed attribute values from entry %(value)s" -msgstr "" - -#: ipaserver/plugins/baseldap.py:2544 -msgid "one or more values to remove" -msgstr "" - -#: ipaserver/plugins/baseuser.py:57 -msgid "" -"\n" -"Baseuser\n" -"\n" -"This contains common definitions for user/stageuser\n" -msgstr "" - -#: ipaserver/plugins/baseuser.py:88 -msgid "must be TRUE or FALSE" -msgstr "" - -#: ipaserver/plugins/baseuser.py:145 -msgid "" -"Object class ipaNTUserAttrs is missing, user entry cannot have SMB " -"attributes." -msgstr "" - -#: ipaserver/plugins/baseuser.py:259 ipaserver/plugins/host.py:562 -#: ipaserver/plugins/service.py:511 -msgid "Principal alias" -msgstr "" - -#: ipaserver/plugins/baseuser.py:271 -msgid "User password expiration" -msgstr "" - -#: ipaserver/plugins/baseuser.py:355 ipaserver/plugins/host.py:581 -msgid "SSH public key fingerprint" -msgstr "" - -#: ipaserver/plugins/baseuser.py:401 ipaserver/plugins/baseuser.py:846 -#: ipaserver/plugins/certmap.py:606 ipaserver/plugins/idviews.py:1056 -msgid "Base-64 encoded user certificate" -msgstr "" - -#: ipaserver/plugins/baseuser.py:406 ipaserver/plugins/baseuser.py:407 -#: ipaserver/plugins/internal.py:721 -msgid "Certificate mapping data" -msgstr "" - -#: ipaserver/plugins/baseuser.py:412 -msgid "SMB logon script path" -msgstr "" - -#: ipaserver/plugins/baseuser.py:417 -msgid "SMB profile path" -msgstr "" - -#: ipaserver/plugins/baseuser.py:422 -msgid "SMB Home Directory" -msgstr "" - -#: ipaserver/plugins/baseuser.py:427 -msgid "SMB Home Directory Drive" -msgstr "" - -#: ipaserver/plugins/baseuser.py:451 ipaserver/plugins/baseuser.py:455 -#, python-format -msgid "invalid e-mail format: %(email)s" -msgstr "" - -#: ipaserver/plugins/baseuser.py:482 -#, python-format -msgid "manager %(manager)s not found" -msgstr "" - -#: ipaserver/plugins/baseuser.py:574 ipaserver/plugins/host.py:692 -#: ipaserver/plugins/stageuser.py:329 ipaserver/plugins/stageuser.py:533 -#: ipaserver/plugins/user.py:562 -#, python-format -msgid "can be at most %(len)d characters" -msgstr "" - -#: ipaserver/plugins/baseuser.py:831 ipaserver/plugins/cert.py:425 -#: ipaserver/plugins/host.py:529 ipaserver/plugins/internal.py:726 -#: ipaserver/plugins/service.py:536 -msgid "Issuer" -msgstr "" - -#: ipaserver/plugins/baseuser.py:832 -msgid "Issuer of the certificate" -msgstr "" - -#: ipaserver/plugins/baseuser.py:838 ipaserver/plugins/cert.py:365 -#: ipaserver/plugins/cert.py:1502 ipaserver/plugins/host.py:517 -#: ipaserver/plugins/internal.py:653 ipaserver/plugins/internal.py:729 -#: ipaserver/plugins/service.py:524 -msgid "Subject" -msgstr "" - -#: ipaserver/plugins/baseuser.py:839 -msgid "Subject of the certificate" -msgstr "" - -#: ipaserver/plugins/baseuser.py:884 -msgid "cannot have an empty subject" -msgstr "" - -#: ipaserver/plugins/baseuser.py:924 -msgid "cannot specify both subject/issuer and certificate" -msgstr "" - -#: ipaserver/plugins/baseuser.py:928 -msgid "cannot specify both subject/issuer and ipacertmapdata" -msgstr "" - -#: ipaserver/plugins/baseuser.py:952 ipaserver/plugins/user.py:1310 -msgid "Add one or more certificate mappings to the user entry." -msgstr "" - -#: ipaserver/plugins/baseuser.py:953 -#, python-format -msgid "Added certificate mappings to user \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/baseuser.py:971 ipaserver/plugins/user.py:1315 -msgid "Remove one or more certificate mappings from the user entry." -msgstr "" - -#: ipaserver/plugins/baseuser.py:972 -#, python-format -msgid "Removed certificate mappings from user \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/batch.py:35 -msgid "" -"\n" -"Plugin to make multiple ipa calls via one remote procedure call\n" -"\n" -"To run this code in the lite-server\n" -"\n" -"curl -H \"Content-Type:application/json\" -H \"Accept:application/" -"json\" -H \"Accept-Language:en\" --negotiate -u : --cacert /" -"etc/ipa/ca.crt -d @batch_request.json -X POST http://" -"localhost:8888/ipa/json\n" -"\n" -"where the contents of the file batch_request.json follow the below example\n" -"\n" -"{\"method\":\"batch\",\"params\":[[\n" -" {\"method\":\"group_find\",\"params\":[[],{}]},\n" -" {\"method\":\"user_find\",\"params\":[[],{\"whoami\":\"true\",\"all" -"\":\"true\"}]},\n" -" {\"method\":\"user_show\",\"params\":[[\"admin\"],{\"all\":true}]}\n" -" ],{}],\"id\":1}\n" -"\n" -"The format of the response is nested the same way. At the top you will see\n" -" \"error\": null,\n" -" \"id\": 1,\n" -" \"result\": {\n" -" \"count\": 3,\n" -" \"results\": [\n" -"\n" -"\n" -"And then a nested response for each IPA command method sent in the request\n" -"\n" -msgstr "" - -#: ipaserver/plugins/batch.py:71 -msgid "Make multiple ipa calls via one remote procedure call" -msgstr "" - -#: ipaserver/plugins/batch.py:122 -msgid "must contain a tuple (list, dict)" -msgstr "" - -#: ipaserver/plugins/ca.py:20 -msgid "" -"\n" -"Manage Certificate Authorities\n" -msgstr "" - -#: ipaserver/plugins/ca.py:22 -msgid "" -"\n" -"Subordinate Certificate Authorities (Sub-CAs) can be added for scoped " -"issuance\n" -"of X.509 certificates.\n" -msgstr "" - -#: ipaserver/plugins/ca.py:25 -msgid "" -"\n" -"CAs are enabled on creation, but their use is subject to CA ACLs unless the\n" -"operator has permission to bypass CA ACLs.\n" -msgstr "" - -#: ipaserver/plugins/ca.py:28 -msgid "" -"\n" -"All CAs except the 'IPA' CA can be disabled or re-enabled. Disabling a CA\n" -"prevents it from issuing certificates but does not affect the validity of " -"its\n" -"certificate.\n" -msgstr "" - -#: ipaserver/plugins/ca.py:32 -msgid "" -"\n" -"CAs (all except the 'IPA' CA) can be deleted. Deleting a CA causes its " -"signing\n" -"certificate to be revoked and its private key deleted.\n" -msgstr "" - -#: ipaserver/plugins/ca.py:37 -msgid "" -"\n" -" Create new CA, subordinate to the IPA CA (requires permission\n" -" \"System: Add CA\"):\n" -"\n" -" ipa ca-add puppet --desc \"Puppet\" \\\n" -" --subject \"CN=Puppet CA,O=EXAMPLE.COM\"\n" -msgstr "" - -#: ipaserver/plugins/ca.py:43 -msgid "" -"\n" -" Disable a CA (requires permission \"System: Modify CA\"):\n" -"\n" -" ipa ca-disable puppet\n" -msgstr "" - -#: ipaserver/plugins/ca.py:47 -msgid "" -"\n" -" Re-enable a CA (requires permission \"System: Modify CA\"):\n" -"\n" -" ipa ca-enable puppet\n" -msgstr "" - -#: ipaserver/plugins/ca.py:51 -msgid "" -"\n" -" Delete a CA (requires permission \"System: Delete CA\"; also requires\n" -" CA to be disabled first):\n" -"\n" -" ipa ca-del puppet\n" -msgstr "" - -#: ipaserver/plugins/ca.py:68 ipaserver/plugins/ca.py:78 -msgid "Certificate Authority" -msgstr "" - -#: ipaserver/plugins/ca.py:69 ipaserver/plugins/ca.py:77 -msgid "Certificate Authorities" -msgstr "" - -#: ipaserver/plugins/ca.py:84 ipaserver/plugins/schema.py:48 -#: ipaserver/plugins/trust.py:1418 -msgid "Name" -msgstr "" - -#: ipaserver/plugins/ca.py:85 -msgid "Name for referencing the CA" -msgstr "" - -#: ipaserver/plugins/ca.py:90 -msgid "Description of the purpose of the CA" -msgstr "" - -#: ipaserver/plugins/ca.py:94 -msgid "Authority ID" -msgstr "" - -#: ipaserver/plugins/ca.py:95 -msgid "Dogtag Authority ID" -msgstr "" - -#: ipaserver/plugins/ca.py:100 ipaserver/plugins/ca.py:286 -msgid "Subject DN" -msgstr "" - -#: ipaserver/plugins/ca.py:101 -msgid "Subject Distinguished Name" -msgstr "" - -#: ipaserver/plugins/ca.py:106 ipaserver/plugins/cert.py:426 -msgid "Issuer DN" -msgstr "" - -#: ipaserver/plugins/ca.py:107 -msgid "Issuer Distinguished Name" -msgstr "" - -#: ipaserver/plugins/ca.py:113 ipaserver/plugins/cert.py:354 -msgid "Base-64 encoded certificate." -msgstr "" - -#: ipaserver/plugins/ca.py:118 ipaserver/plugins/cert.py:359 -msgid "Certificate chain" -msgstr "" - -#: ipaserver/plugins/ca.py:119 ipaserver/plugins/cert.py:360 -msgid "X.509 certificate chain" -msgstr "" - -#: ipaserver/plugins/ca.py:218 -msgid "Search for CAs." -msgstr "" - -#: ipaserver/plugins/ca.py:220 -#, python-format -msgid "%(count)d CA matched" -msgid_plural "%(count)d CAs matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/ca.py:237 ipaserver/plugins/cert.py:599 -msgid "Include certificate chain in output" -msgstr "" - -#: ipaserver/plugins/ca.py:243 -msgid "Display the properties of a CA." -msgstr "" - -#: ipaserver/plugins/ca.py:260 -msgid "Create a CA." -msgstr "" - -#: ipaserver/plugins/ca.py:261 -#, python-format -msgid "Created CA \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/ca.py:271 -#, python-format -msgid "Insufficient 'add' privilege for entry '%s'." -msgstr "" - -#: ipaserver/plugins/ca.py:287 -#, python-format -msgid "Unrecognized attributes: %(attrs)s" -msgstr "" - -#: ipaserver/plugins/ca.py:302 -#, python-format -msgid "Subject DN is already used by CA '%s'" -msgstr "" - -#: ipaserver/plugins/ca.py:326 -msgid "Delete a CA (must be disabled first)." -msgstr "" - -#: ipaserver/plugins/ca.py:328 -#, python-format -msgid "Deleted CA \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/ca.py:337 -msgid "Insufficient privilege to delete a CA." -msgstr "" - -#: ipaserver/plugins/ca.py:341 ipaserver/plugins/ca.py:350 -#: ipaserver/plugins/ca.py:369 ipaserver/plugins/ca.py:409 -#: ipaserver/plugins/internal.py:636 -msgid "CA" -msgstr "" - -#: ipaserver/plugins/ca.py:343 -msgid "IPA CA cannot be deleted" -msgstr "" - -#: ipaserver/plugins/ca.py:352 -msgid "Must be disabled first" -msgstr "" - -#: ipaserver/plugins/ca.py:360 -msgid "Modify CA configuration." -msgstr "" - -#: ipaserver/plugins/ca.py:361 -#, python-format -msgid "Modified CA \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/ca.py:387 -msgid "Insufficient privilege to modify a CA." -msgstr "" - -#: ipaserver/plugins/ca.py:403 -msgid "Disable a CA." -msgstr "" - -#: ipaserver/plugins/ca.py:404 -#, python-format -msgid "Disabled CA \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/ca.py:411 -msgid "IPA CA cannot be disabled" -msgstr "" - -#: ipaserver/plugins/ca.py:421 -msgid "Enable a CA." -msgstr "" - -#: ipaserver/plugins/ca.py:422 -#, python-format -msgid "Enabled CA \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/caacl.py:21 -msgid "" -"\n" -"Manage CA ACL rules.\n" -"\n" -"This plugin is used to define rules governing which CAs and profiles\n" -"may be used to issue certificates to particular principals or groups\n" -"of principals.\n" -"\n" -"SUBJECT PRINCIPAL SCOPE:\n" -"\n" -"For a certificate request to be allowed, the principal(s) that are\n" -"the subject of a certificate request (not necessarily the principal\n" -"actually requesting the certificate) must be included in the scope\n" -"of a CA ACL that also includes the target CA and profile.\n" -"\n" -"Users can be included by name, group or the \"all users\" category.\n" -"Hosts can be included by name, hostgroup or the \"all hosts\"\n" -"category. Services can be included by service name or the \"all\n" -"services\" category. CA ACLs may be associated with a single type of\n" -"principal, or multiple types.\n" -"\n" -"CERTIFICATE AUTHORITY SCOPE:\n" -"\n" -"A CA ACL can be associated with one or more CAs by name, or by the\n" -"\"all CAs\" category. For compatibility reasons, a CA ACL with no CA\n" -"association implies an association with the 'ipa' CA (and only this\n" -"CA).\n" -"\n" -"PROFILE SCOPE:\n" -"\n" -"A CA ACL can be associated with one or more profiles by Profile ID.\n" -"The Profile ID is a string without spaces or punctuation starting\n" -"with a letter and followed by a sequence of letters, digits or\n" -"underscore (\"_\").\n" -"\n" -"EXAMPLES:\n" -"\n" -" Create a CA ACL \"test\" that grants all users access to the\n" -" \"UserCert\" profile on all CAs:\n" -" ipa caacl-add test --usercat=all --cacat=all\n" -" ipa caacl-add-profile test --certprofiles UserCert\n" -"\n" -" Display the properties of a named CA ACL:\n" -" ipa caacl-show test\n" -"\n" -" Create a CA ACL to let user \"alice\" use the \"DNP3\" profile on \"DNP3-CA" -"\":\n" -" ipa caacl-add alice_dnp3\n" -" ipa caacl-add-ca alice_dnp3 --cas DNP3-CA\n" -" ipa caacl-add-profile alice_dnp3 --certprofiles DNP3\n" -" ipa caacl-add-user alice_dnp3 --user=alice\n" -"\n" -" Disable a CA ACL:\n" -" ipa caacl-disable test\n" -"\n" -" Remove a CA ACL:\n" -" ipa caacl-del test\n" -msgstr "" - -#: ipaserver/plugins/caacl.py:87 ipaserver/plugins/caacl.py:165 -#: ipaserver/plugins/caacl.py:263 -msgid "CA ACL" -msgstr "" - -#: ipaserver/plugins/caacl.py:88 ipaserver/plugins/caacl.py:164 -msgid "CA ACLs" -msgstr "" - -#: ipaserver/plugins/caacl.py:183 -msgid "CA category" -msgstr "" - -#: ipaserver/plugins/caacl.py:184 -msgid "CA category the ACL applies to" -msgstr "" - -#: ipaserver/plugins/caacl.py:212 -msgid "CAs" -msgstr "" - -#: ipaserver/plugins/caacl.py:246 -#, python-format -msgid "Added CA ACL \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/caacl.py:258 -#, python-format -msgid "Deleted CA ACL \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/caacl.py:265 -msgid "default CA ACL can be only disabled" -msgstr "" - -#: ipaserver/plugins/caacl.py:273 -#, python-format -msgid "Modified CA ACL \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/caacl.py:285 -msgid "CA category cannot be set to 'all' while there are allowed CAs" -msgstr "" - -#: ipaserver/plugins/caacl.py:290 -msgid "" -"profile category cannot be set to 'all' while there are allowed profiles" -msgstr "" - -#: ipaserver/plugins/caacl.py:294 ipaserver/plugins/hbacrule.py:345 -#: ipaserver/plugins/netgroup.py:321 -msgid "user category cannot be set to 'all' while there are allowed users" -msgstr "" - -#: ipaserver/plugins/caacl.py:298 ipaserver/plugins/hbacrule.py:350 -#: ipaserver/plugins/netgroup.py:326 -msgid "host category cannot be set to 'all' while there are allowed hosts" -msgstr "" - -#: ipaserver/plugins/caacl.py:302 ipaserver/plugins/hbacrule.py:356 -msgid "" -"service category cannot be set to 'all' while there are allowed services" -msgstr "" - -#: ipaserver/plugins/caacl.py:312 -#, python-format -msgid "%(count)d CA ACL matched" -msgid_plural "%(count)d CA ACLs matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/caacl.py:325 -#, python-format -msgid "Enabled CA ACL \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/caacl.py:354 -#, python-format -msgid "Disabled CA ACL \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/caacl.py:385 -#, python-format -msgid "%i user or group added." -msgstr "" - -#: ipaserver/plugins/caacl.py:386 -#, python-format -msgid "%i users or groups added." -msgstr "" - -#: ipaserver/plugins/caacl.py:397 ipaserver/plugins/hbacrule.py:518 -#: ipaserver/plugins/selinuxusermap.py:572 ipaserver/plugins/sudorule.py:607 -msgid "users cannot be added when user category='all'" -msgstr "" - -#: ipaserver/plugins/caacl.py:407 -#, python-format -msgid "%i user or group removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:408 -#, python-format -msgid "%i users or groups removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:417 -#, python-format -msgid "%i host or hostgroup added." -msgstr "" - -#: ipaserver/plugins/caacl.py:418 -#, python-format -msgid "%i hosts or hostgroups added." -msgstr "" - -#: ipaserver/plugins/caacl.py:429 ipaserver/plugins/hbacrule.py:549 -#: ipaserver/plugins/selinuxusermap.py:605 ipaserver/plugins/sudorule.py:710 -msgid "hosts cannot be added when host category='all'" -msgstr "" - -#: ipaserver/plugins/caacl.py:439 -#, python-format -msgid "%i host or hostgroup removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:440 -#, python-format -msgid "%i hosts or hostgroups removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:448 -#, python-format -msgid "%i service added." -msgstr "" - -#: ipaserver/plugins/caacl.py:448 -#, python-format -msgid "%i services added." -msgstr "" - -#: ipaserver/plugins/caacl.py:459 ipaserver/plugins/hbacrule.py:606 -msgid "services cannot be added when service category='all'" -msgstr "" - -#: ipaserver/plugins/caacl.py:468 -#, python-format -msgid "%i service removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:468 -#, python-format -msgid "%i services removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:488 -#, python-format -msgid "%i profile added." -msgstr "" - -#: ipaserver/plugins/caacl.py:488 -#, python-format -msgid "%i profiles added." -msgstr "" - -#: ipaserver/plugins/caacl.py:499 -msgid "profiles cannot be added when profile category='all'" -msgstr "" - -#: ipaserver/plugins/caacl.py:510 -#, python-format -msgid "%i profile removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:510 -#, python-format -msgid "%i profiles removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:515 -msgid "Add CAs to a CA ACL." -msgstr "" - -#: ipaserver/plugins/caacl.py:520 -#, python-format -msgid "%i CA added." -msgstr "" - -#: ipaserver/plugins/caacl.py:520 -#, python-format -msgid "%i CAs added." -msgstr "" - -#: ipaserver/plugins/caacl.py:531 -msgid "CAs cannot be added when CA category='all'" -msgstr "" - -#: ipaserver/plugins/caacl.py:537 -msgid "Remove CAs from a CA ACL." -msgstr "" - -#: ipaserver/plugins/caacl.py:542 -#, python-format -msgid "%i CA removed." -msgstr "" - -#: ipaserver/plugins/caacl.py:542 -#, python-format -msgid "%i CAs removed." -msgstr "" - -#: ipaserver/plugins/cert.py:64 ipaserver/plugins/hbactest.py:39 -msgid "pyhbac is not installed." -msgstr "" - -#: ipaserver/plugins/cert.py:69 -msgid "" -"\n" -"IPA certificate operations\n" -msgstr "" - -#: ipaserver/plugins/cert.py:71 -msgid "" -"\n" -"Implements a set of commands for managing server SSL certificates.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:73 -msgid "" -"\n" -"Certificate requests exist in the form of a Certificate Signing Request " -"(CSR)\n" -"in PEM format.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:76 -msgid "" -"\n" -"The dogtag CA uses just the CN value of the CSR and forces the rest of the\n" -"subject to values configured in the server.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:79 -msgid "" -"\n" -"A certificate is stored with a service principal and a service principal\n" -"needs a host.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:82 -msgid "" -"\n" -"In order to request a certificate:\n" -msgstr "" - -#: ipaserver/plugins/cert.py:84 -msgid "" -"\n" -"* The host must exist\n" -"* The service must exist (or you use the --add option to automatically add " -"it)\n" -msgstr "" - -#: ipaserver/plugins/cert.py:87 -msgid "" -"\n" -"SEARCHING:\n" -msgstr "" - -#: ipaserver/plugins/cert.py:89 -msgid "" -"\n" -"Certificates may be searched on by certificate subject, serial number,\n" -"revocation reason, validity dates and the issued date.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:92 -msgid "" -"\n" -"When searching on dates the _from date does a >= search and the _to date\n" -"does a <= search. When combined these are done as an AND.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:95 -msgid "" -"\n" -"Dates are treated as GMT to match the dates in the certificates.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:97 -msgid "" -"\n" -"The date format is YYYY-mm-dd.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:101 -msgid "" -"\n" -" Request a new certificate and add the principal:\n" -" ipa cert-request --add --principal=HTTP/lion.example.com example.csr\n" -msgstr "" - -#: ipaserver/plugins/cert.py:104 -msgid "" -"\n" -" Retrieve an existing certificate:\n" -" ipa cert-show 1032\n" -msgstr "" - -#: ipaserver/plugins/cert.py:107 -msgid "" -"\n" -" Revoke a certificate (see RFC 5280 for reason details):\n" -" ipa cert-revoke --revocation-reason=6 1032\n" -msgstr "" - -#: ipaserver/plugins/cert.py:110 -msgid "" -"\n" -" Remove a certificate from revocation hold status:\n" -" ipa cert-remove-hold 1032\n" -msgstr "" - -#: ipaserver/plugins/cert.py:113 -msgid "" -"\n" -" Check the status of a signing request:\n" -" ipa cert-status 10\n" -msgstr "" - -#: ipaserver/plugins/cert.py:116 -msgid "" -"\n" -" Search for certificates by hostname:\n" -" ipa cert-find --subject=ipaserver.example.com\n" -msgstr "" - -#: ipaserver/plugins/cert.py:119 -msgid "" -"\n" -" Search for revoked certificates by reason:\n" -" ipa cert-find --revocation-reason=5\n" -msgstr "" - -#: ipaserver/plugins/cert.py:122 -msgid "" -"\n" -" Search for certificates based on issuance date\n" -" ipa cert-find --issuedon-from=2013-02-01 --issuedon-to=2013-02-07\n" -msgstr "" - -#: ipaserver/plugins/cert.py:125 -msgid "" -"\n" -" Search for certificates owned by a specific user:\n" -" ipa cert-find --user=user\n" -msgstr "" - -#: ipaserver/plugins/cert.py:128 -msgid "" -"\n" -" Examine a certificate:\n" -" ipa cert-find --file=cert.pem --all\n" -msgstr "" - -#: ipaserver/plugins/cert.py:131 -msgid "" -"\n" -" Verify that a certificate is owned by a specific user:\n" -" ipa cert-find --file=cert.pem --user=user\n" -msgstr "" - -#: ipaserver/plugins/cert.py:134 -msgid "" -"\n" -"IPA currently immediately issues (or declines) all certificate requests so\n" -"the status of a request is not normally useful. This is for future use\n" -"or the case where a CA does not immediately issue a certificate.\n" -msgstr "" - -#: ipaserver/plugins/cert.py:138 -msgid "" -"\n" -"The following revocation reasons are supported:\n" -"\n" -msgstr "" - -#: ipaserver/plugins/cert.py:141 -msgid " * 0 - unspecified\n" -msgstr "" - -#: ipaserver/plugins/cert.py:142 -msgid " * 1 - keyCompromise\n" -msgstr "" - -#: ipaserver/plugins/cert.py:143 -msgid " * 2 - cACompromise\n" -msgstr "" - -#: ipaserver/plugins/cert.py:144 -msgid " * 3 - affiliationChanged\n" -msgstr "" - -#: ipaserver/plugins/cert.py:145 -msgid " * 4 - superseded\n" -msgstr "" - -#: ipaserver/plugins/cert.py:146 -msgid " * 5 - cessationOfOperation\n" -msgstr "" - -#: ipaserver/plugins/cert.py:147 -msgid " * 6 - certificateHold\n" -msgstr "" - -#: ipaserver/plugins/cert.py:148 -msgid " * 8 - removeFromCRL\n" -msgstr "" - -#: ipaserver/plugins/cert.py:149 -msgid " * 9 - privilegeWithdrawn\n" -msgstr "" - -#: ipaserver/plugins/cert.py:150 -msgid " * 10 - aACompromise\n" -msgstr "" - -#: ipaserver/plugins/cert.py:151 -msgid "" -"\n" -"Note that reason code 7 is not used. See RFC 5280 for more details:\n" -msgstr "" - -#: ipaserver/plugins/cert.py:153 -msgid "" -"\n" -"http://www.ietf.org/rfc/rfc5280.txt\n" -"\n" -msgstr "" - -#: ipaserver/plugins/cert.py:283 ipaserver/plugins/certprofile.py:86 -msgid "CA is not configured" -msgstr "" - -#: ipaserver/plugins/cert.py:289 -#, python-format -msgid "" -"Principal '%(principal)s' is not permitted to use CA '%(ca)s' with profile " -"'%(profile_id)s' for certificate issuance." -msgstr "" - -#: ipaserver/plugins/cert.py:309 -msgid "enabledService/configuredService not in ipaConfigString kdc entry" -msgstr "" - -#: ipaserver/plugins/cert.py:313 -#, python-format -msgid "Host '%(hostname)s' is not an active KDC" -msgstr "" - -#: ipaserver/plugins/cert.py:347 -msgid "Issuing CA" -msgstr "" - -#: ipaserver/plugins/cert.py:348 -msgid "Name of issuing CA" -msgstr "" - -#: ipaserver/plugins/cert.py:370 -msgid "Subject email address" -msgstr "" - -#: ipaserver/plugins/cert.py:375 -msgid "Subject DNS name" -msgstr "" - -#: ipaserver/plugins/cert.py:380 -msgid "Subject X.400 address" -msgstr "" - -#: ipaserver/plugins/cert.py:385 -msgid "Subject directory name" -msgstr "" - -#: ipaserver/plugins/cert.py:390 -msgid "Subject EDI Party name" -msgstr "" - -#: ipaserver/plugins/cert.py:395 -msgid "Subject URI" -msgstr "" - -#: ipaserver/plugins/cert.py:400 -msgid "Subject IP Address" -msgstr "" - -#: ipaserver/plugins/cert.py:405 -msgid "Subject OID" -msgstr "" - -#: ipaserver/plugins/cert.py:410 -msgid "Subject UPN" -msgstr "" - -#: ipaserver/plugins/cert.py:415 -msgid "Subject Kerberos principal name" -msgstr "" - -#: ipaserver/plugins/cert.py:420 -msgid "Subject Other Name" -msgstr "" - -#: ipaserver/plugins/cert.py:431 ipaserver/plugins/host.py:533 -#: ipaserver/plugins/service.py:540 -msgid "Not Before" -msgstr "" - -#: ipaserver/plugins/cert.py:436 ipaserver/plugins/host.py:537 -#: ipaserver/plugins/service.py:544 -msgid "Not After" -msgstr "" - -#: ipaserver/plugins/cert.py:441 ipaserver/plugins/host.py:541 -#: ipaserver/plugins/service.py:548 -msgid "Fingerprint (SHA1)" -msgstr "" - -#: ipaserver/plugins/cert.py:446 ipaserver/plugins/host.py:545 -#: ipaserver/plugins/service.py:552 -msgid "Fingerprint (SHA256)" -msgstr "" - -#: ipaserver/plugins/cert.py:458 -msgid "Serial number (hex)" -msgstr "" - -#: ipaserver/plugins/cert.py:584 -msgid "Request status" -msgstr "" - -#: ipaserver/plugins/cert.py:630 -msgid "" -"automatically add the principal if it doesn't exist (service principals only)" -msgstr "" - -#: ipaserver/plugins/cert.py:679 -#, python-format -msgid "krbtgt certs can use only the %s profile" -msgstr "" - -#: ipaserver/plugins/cert.py:731 -msgid "No Common Name was found in subject of request." -msgstr "" - -#: ipaserver/plugins/cert.py:739 -#, python-format -msgid "" -"hostname in subject of request '%(cn)s' does not match name or aliases of " -"principal '%(principal)s'" -msgstr "" - -#: ipaserver/plugins/cert.py:745 -#, python-format -msgid "" -"hostname in subject of request '%(cn)s' does not match principal hostname " -"'%(hostname)s'" -msgstr "" - -#: ipaserver/plugins/cert.py:754 -msgid "DN commonName does not match user's login" -msgstr "" - -#: ipaserver/plugins/cert.py:768 -msgid "DN emailAddress does not match any of user's email addresses" -msgstr "" - -#: ipaserver/plugins/cert.py:777 -#, python-format -msgid "" -"Insufficient 'write' privilege to the 'userCertificate' attribute of entry " -"'%s'." -msgstr "" - -#: ipaserver/plugins/cert.py:798 ipaserver/plugins/cert.py:916 -#, python-format -msgid "subject alt name type %s is forbidden for user principals" -msgstr "" - -#: ipaserver/plugins/cert.py:843 -#, python-format -msgid "" -"The service principal for subject alt name %s in certificate request does " -"not exist" -msgstr "" - -#: ipaserver/plugins/cert.py:874 -#, python-format -msgid "" -"Insufficient privilege to create a certificate with subject alt name '%s'." -msgstr "" - -#: ipaserver/plugins/cert.py:892 -#, python-format -msgid "Principal '%s' in subject alt name does not match requested principal" -msgstr "" - -#: ipaserver/plugins/cert.py:901 -msgid "RFC822Name does not match any of user's email addresses" -msgstr "" - -#: ipaserver/plugins/cert.py:908 -#, python-format -msgid "subject alt name type %s is forbidden for non-user principals" -msgstr "" - -#: ipaserver/plugins/cert.py:925 -#, python-format -msgid "Subject alt name type %s is forbidden" -msgstr "" - -#: ipaserver/plugins/cert.py:943 -#, python-format -msgid "CA '%s' is disabled" -msgstr "" - -#: ipaserver/plugins/cert.py:1030 -msgid "'add' option" -msgstr "" - -#: ipaserver/plugins/cert.py:1034 -msgid "The principal for this request doesn't exist." -msgstr "" - -#: ipaserver/plugins/cert.py:1150 -#, python-format -msgid "IP address in subjectAltName (%s) unreachable from DNS names" -msgstr "" - -#: ipaserver/plugins/cert.py:1167 -#, python-format -msgid "IP address in subjectAltName (%s) does not have PTR record" -msgstr "" - -#: ipaserver/plugins/cert.py:1179 -#, python-format -msgid "PTR record for SAN IP (%s) does not match A/AAAA records" -msgstr "" - -#: ipaserver/plugins/cert.py:1273 ipaserver/plugins/internal.py:700 -#: ipaserver/plugins/internal.py:1030 ipaserver/plugins/internal.py:1333 -#: ipaserver/plugins/internal.py:1936 -msgid "Status" -msgstr "" - -#: ipaserver/plugins/cert.py:1278 -msgid "Revoked" -msgstr "" - -#: ipaserver/plugins/cert.py:1283 ipaserver/plugins/host.py:549 -#: ipaserver/plugins/internal.py:650 ipaserver/plugins/internal.py:691 -#: ipaserver/plugins/service.py:556 -msgid "Revocation reason" -msgstr "" - -#: ipaserver/plugins/cert.py:1284 -msgid "" -"Reason for revoking the certificate (0-10). Type \"ipa help cert\" for " -"revocation reason details. " -msgstr "" - -#: ipaserver/plugins/cert.py:1306 -#, python-format -msgid "Owner %s" -msgstr "" - -#: ipaserver/plugins/cert.py:1393 -#, python-format -msgid "" -"Certificate with serial number %(serial)s issued by CA '%(ca)s' not found" -msgstr "" - -#: ipaserver/plugins/cert.py:1462 -msgid "7 is not a valid revocation reason" -msgstr "" - -#: ipaserver/plugins/cert.py:1564 -msgid "Status of the certificate" -msgstr "" - -#: ipaserver/plugins/cert.py:1570 -msgid "Results should contain primary key attribute only (\"certificate\")" -msgstr "" - -#: ipaserver/plugins/cert.py:1586 -#, python-format -msgid "%(count)d certificate matched" -msgid_plural "%(count)d certificates matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/cert.py:1608 -#, python-format -msgid "Search for certificates with these owner %s." -msgstr "" - -#: ipaserver/plugins/cert.py:1619 -#, python-format -msgid "Search for certificates without these owner %s." -msgstr "" - -#: ipaserver/plugins/certmap.py:50 -msgid "" -"\n" -"Certificate Identity Mapping\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:52 -msgid "" -"\n" -"Manage Certificate Identity Mapping configuration and rules.\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:54 -msgid "" -"\n" -"IPA supports the use of certificates for authentication. Certificates can\n" -"either be stored in the user entry (full certificate in the usercertificate\n" -"attribute), or simply linked to the user entry through a mapping.\n" -"This code enables the management of the rules allowing to link a\n" -"certificate to a user entry.\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:62 -msgid "" -"\n" -" Display the Certificate Identity Mapping global configuration:\n" -" ipa certmapconfig-show\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:65 -msgid "" -"\n" -" Modify Certificate Identity Mapping global configuration:\n" -" ipa certmapconfig-mod --promptusername=TRUE\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:68 -msgid "" -"\n" -" Create a new Certificate Identity Mapping Rule:\n" -" ipa certmaprule-add rule1 --desc=\"Link certificate with subject and " -"issuer\"\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:71 -msgid "" -"\n" -" Modify a Certificate Identity Mapping Rule:\n" -" ipa certmaprule-mod rule1 --maprule=\"\"\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:74 -msgid "" -"\n" -" Disable a Certificate Identity Mapping Rule:\n" -" ipa certmaprule-disable rule1\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:77 -msgid "" -"\n" -" Enable a Certificate Identity Mapping Rule:\n" -" ipa certmaprule-enable rule1\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:80 -msgid "" -"\n" -" Display information about a Certificate Identity Mapping Rule:\n" -" ipa certmaprule-show rule1\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:83 -msgid "" -"\n" -" Find all Certificate Identity Mapping Rules with the specified domain:\n" -" ipa certmaprule-find --domain example.com\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:86 -msgid "" -"\n" -" Delete a Certificate Identity Mapping Rule:\n" -" ipa certmaprule-del rule1\n" -msgstr "" - -#: ipaserver/plugins/certmap.py:141 ipaserver/plugins/certmap.py:148 -#: ipaserver/plugins/certmap.py:175 ipaserver/plugins/trust.py:848 -msgid "domain" -msgstr "" - -#: ipaserver/plugins/certmap.py:142 -#, python-format -msgid "" -"The domain(s) \"%s\" cannot be used to apply altSecurityIdentities check." -msgstr "" - -#: ipaserver/plugins/certmap.py:149 -msgid "" -"The mapping rule with altSecurityIdentities should be applied to a trusted " -"Active Directory domain but no domain was associated with the rule." -msgstr "" - -#: ipaserver/plugins/certmap.py:176 -#, python-format -msgid "The domain %s is neither IPA domain nor a trusteddomain." -msgstr "" - -#: ipaserver/plugins/certmap.py:186 -msgid "Certificate Identity Mapping configuration options" -msgstr "" - -#: ipaserver/plugins/certmap.py:191 ipaserver/plugins/certmap.py:192 -msgid "Certificate Identity Mapping Global Configuration" -msgstr "" - -#: ipaserver/plugins/certmap.py:198 -msgid "Prompt for the username" -msgstr "" - -#: ipaserver/plugins/certmap.py:199 -msgid "" -"Prompt for the username when multiple identities are mapped to a certificate" -msgstr "" - -#: ipaserver/plugins/certmap.py:229 -msgid "Modify Certificate Identity Mapping configuration." -msgstr "" - -#: ipaserver/plugins/certmap.py:234 -msgid "Show the current Certificate Identity Mapping configuration." -msgstr "" - -#: ipaserver/plugins/certmap.py:243 ipaserver/plugins/certmap.py:247 -msgid "Certificate Identity Mapping Rules" -msgstr "" - -#: ipaserver/plugins/certmap.py:244 ipaserver/plugins/certmap.py:246 -msgid "Certificate Identity Mapping Rule" -msgstr "" - -#: ipaserver/plugins/certmap.py:274 -msgid "Certificate Identity Mapping Rule name" -msgstr "" - -#: ipaserver/plugins/certmap.py:280 -msgid "Certificate Identity Mapping Rule description" -msgstr "" - -#: ipaserver/plugins/certmap.py:285 -msgid "Mapping rule" -msgstr "" - -#: ipaserver/plugins/certmap.py:286 -msgid "Rule used to map the certificate with a user entry" -msgstr "" - -#: ipaserver/plugins/certmap.py:291 -msgid "Matching rule" -msgstr "" - -#: ipaserver/plugins/certmap.py:292 -msgid "Rule used to check if a certificate can be used for authentication" -msgstr "" - -#: ipaserver/plugins/certmap.py:299 -msgid "Domain where the user entry will be searched" -msgstr "" - -#: ipaserver/plugins/certmap.py:305 -msgid "Priority of the rule (higher number means lower priority" -msgstr "" - -#: ipaserver/plugins/certmap.py:356 -msgid "Create a new Certificate Identity Mapping Rule." -msgstr "" - -#: ipaserver/plugins/certmap.py:358 -#, python-format -msgid "Added Certificate Identity Mapping Rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/certmap.py:369 -msgid "Modify a Certificate Identity Mapping Rule." -msgstr "" - -#: ipaserver/plugins/certmap.py:371 -#, python-format -msgid "Modified Certificate Identity Mapping Rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/certmap.py:392 -msgid "Search for Certificate Identity Mapping Rules." -msgstr "" - -#: ipaserver/plugins/certmap.py:395 -#, python-format -msgid "%(count)d Certificate Identity Mapping Rule matched" -msgid_plural "%(count)d Certificate Identity Mapping Rules matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/certmap.py:402 -msgid "Display information about a Certificate Identity Mapping Rule." -msgstr "" - -#: ipaserver/plugins/certmap.py:408 -msgid "Delete a Certificate Identity Mapping Rule." -msgstr "" - -#: ipaserver/plugins/certmap.py:410 -#, python-format -msgid "Deleted Certificate Identity Mapping Rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/certmap.py:415 -msgid "Enable a Certificate Identity Mapping Rule." -msgstr "" - -#: ipaserver/plugins/certmap.py:417 -#, python-format -msgid "Enabled Certificate Identity Mapping Rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/certmap.py:444 -msgid "Disable a Certificate Identity Mapping Rule." -msgstr "" - -#: ipaserver/plugins/certmap.py:446 -#, python-format -msgid "Disabled Certificate Identity Mapping Rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/certmap.py:500 -msgid "Failed to connect to sssd over SystemBus. See details in the error_log" -msgstr "" - -#: ipaserver/plugins/certmap.py:554 -msgid "Failed to find users over SystemBus. See details in the error_log" -msgstr "" - -#: ipaserver/plugins/certmap.py:571 -msgid "User logins" -msgstr "" - -#: ipaserver/plugins/certmap.py:579 -msgid "" -"\n" -" Search for users matching the provided certificate.\n" -"\n" -" This command relies on SSSD to retrieve the list of matching users and\n" -" may return cached data. For more information on purging SSSD cache,\n" -" please refer to sss_cache documentation.\n" -" " -msgstr "" - -#: ipaserver/plugins/certmap.py:587 -#, python-format -msgid "%(count)s user matched" -msgid_plural "%(count)s users matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/certprofile.py:21 -msgid "" -"\n" -"Manage Certificate Profiles\n" -"\n" -"Certificate Profiles are used by Certificate Authority (CA) in the signing " -"of\n" -"certificates to determine if a Certificate Signing Request (CSR) is " -"acceptable,\n" -"and if so what features and extensions will be present on the certificate.\n" -"\n" -"The Certificate Profile format is the property-list format understood by " -"the\n" -"Dogtag or Red Hat Certificate System CA.\n" -"\n" -"PROFILE ID SYNTAX:\n" -"\n" -"A Profile ID is a string without spaces or punctuation starting with a " -"letter\n" -"and followed by a sequence of letters, digits or underscore (\"_\").\n" -"\n" -"EXAMPLES:\n" -"\n" -" Import a profile that will not store issued certificates:\n" -" ipa certprofile-import ShortLivedUserCert \\\n" -" --file UserCert.profile --desc \"User Certificates\" \\\n" -" --store=false\n" -"\n" -" Delete a certificate profile:\n" -" ipa certprofile-del ShortLivedUserCert\n" -"\n" -" Show information about a profile:\n" -" ipa certprofile-show ShortLivedUserCert\n" -"\n" -" Save profile configuration to a file:\n" -" ipa certprofile-show caIPAserviceCert --out caIPAserviceCert.cfg\n" -"\n" -" Search for profiles that do not store certificates:\n" -" ipa certprofile-find --store=false\n" -"\n" -"PROFILE CONFIGURATION FORMAT:\n" -"\n" -"The profile configuration format is the raw property-list format\n" -"used by Dogtag Certificate System. The XML format is not supported.\n" -"\n" -"The following restrictions apply to profiles managed by IPA:\n" -"\n" -"- When importing a profile the \"profileId\" field, if present, must\n" -" match the ID given on the command line.\n" -"\n" -"- The \"classId\" field must be set to \"caEnrollImpl\"\n" -"\n" -"- The \"auth.instance_id\" field must be set to \"raCertAuth\"\n" -"\n" -"- The \"certReqInputImpl\" input class and \"certOutputImpl\" output\n" -" class must be used.\n" -"\n" -msgstr "" - -#: ipaserver/plugins/certprofile.py:95 -msgid "invalid Profile ID" -msgstr "" - -#: ipaserver/plugins/certprofile.py:106 ipaserver/plugins/certprofile.py:116 -msgid "Certificate Profile" -msgstr "" - -#: ipaserver/plugins/certprofile.py:107 ipaserver/plugins/certprofile.py:115 -msgid "Certificate Profiles" -msgstr "" - -#: ipaserver/plugins/certprofile.py:126 -msgid "Profile configuration" -msgstr "" - -#: ipaserver/plugins/certprofile.py:190 -#, python-format -msgid "%(count)d profile matched" -msgid_plural "%(count)d profiles matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/certprofile.py:222 -#, python-format -msgid "Imported profile \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/certprofile.py:247 -#, python-format -msgid "Profile data specifies profileId multiple times: %(values)s" -msgstr "" - -#: ipaserver/plugins/certprofile.py:255 -#, python-format -msgid "Profile ID '%(cli_value)s' does not match profile data '%(file_value)s'" -msgstr "" - -#: ipaserver/plugins/certprofile.py:282 -#, python-format -msgid "Deleted profile \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/certprofile.py:289 -#, python-format -msgid "Predefined profile '%(profile_id)s' cannot be deleted" -msgstr "" - -#: ipaserver/plugins/certprofile.py:305 -#, python-format -msgid "Modified Certificate Profile \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/certprofile.py:322 -msgid "Certificate profiles cannot be renamed" -msgstr "" - -#: ipaserver/plugins/certprofile.py:327 -msgid "Insufficient privilege to modify a certificate profile." -msgstr "" - -#: ipaserver/plugins/config.py:50 -msgid "" -"\n" -"Server configuration\n" -"\n" -"Manage the default values that IPA uses and some of its tuning parameters.\n" -"\n" -"NOTES:\n" -"\n" -"The password notification value (--pwdexpnotify) is stored here so it will\n" -"be replicated. It is not currently used to notify users in advance of an\n" -"expiring password.\n" -"\n" -"Some attributes are read-only, provided only for information purposes. " -"These\n" -"include:\n" -"\n" -"Certificate Subject base: the configured certificate subject base,\n" -" e.g. O=EXAMPLE.COM. This is configurable only at install time.\n" -"Password plug-in features: currently defines additional hashes that the\n" -" password will generate (there may be other conditions).\n" -"\n" -"When setting the order list for mapping SELinux users you may need to\n" -"quote the value so it isn't interpreted by the shell.\n" -"\n" -"The maximum length of a hostname in Linux is controlled by\n" -"MAXHOSTNAMELEN in the kernel and defaults to 64. Some other operating\n" -"systems, Solaris for example, allows hostnames up to 255 characters.\n" -"This option will allow flexibility in length but by default limiting\n" -"to the Linux maximum length.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Show basic server configuration:\n" -" ipa config-show\n" -"\n" -" Show all configuration options:\n" -" ipa config-show --all\n" -"\n" -" Change maximum username length to 99 characters:\n" -" ipa config-mod --maxusername=99\n" -"\n" -" Change maximum host name length to 255 characters:\n" -" ipa config-mod --maxhostname=255\n" -"\n" -" Increase default time and size limits for maximum IPA server search:\n" -" ipa config-mod --searchtimelimit=10 --searchrecordslimit=2000\n" -"\n" -" Set default user e-mail domain:\n" -" ipa config-mod --emaildomain=example.com\n" -"\n" -" Enable migration mode to make \"ipa migrate-ds\" command operational:\n" -" ipa config-mod --enable-migration=TRUE\n" -"\n" -" Define SELinux user map order:\n" -" ipa config-mod --ipaselinuxusermaporder='guest_u:s0$xguest_u:s0$user_u:s0-" -"s0:c0.c1023$staff_u:s0-s0:c0.c1023$unconfined_u:s0-s0:c0.c1023'\n" -msgstr "" - -#: ipaserver/plugins/config.py:116 -msgid "must be at least 10" -msgstr "" - -#: ipaserver/plugins/config.py:124 -msgid "configuration options" -msgstr "" - -#: ipaserver/plugins/config.py:160 ipaserver/plugins/config.py:161 -msgid "Configuration" -msgstr "" - -#: ipaserver/plugins/config.py:172 -msgid "Maximum hostname length" -msgstr "" - -#: ipaserver/plugins/config.py:276 ipaserver/plugins/config.py:277 -msgid "Enable adding subids to new users" -msgstr "" - -#: ipaserver/plugins/config.py:281 -msgid "IPA masters" -msgstr "" - -#: ipaserver/plugins/config.py:282 -msgid "List of all IPA masters" -msgstr "" - -#: ipaserver/plugins/config.py:287 -msgid "Hidden IPA masters" -msgstr "" - -#: ipaserver/plugins/config.py:288 -msgid "List of all hidden IPA masters" -msgstr "" - -#: ipaserver/plugins/config.py:293 -msgid "IPA master capable of PKINIT" -msgstr "" - -#: ipaserver/plugins/config.py:294 -msgid "IPA master which can process PKINIT requests" -msgstr "" - -#: ipaserver/plugins/config.py:299 -msgid "IPA CA servers" -msgstr "" - -#: ipaserver/plugins/config.py:300 -msgid "IPA servers configured as certificate authority" -msgstr "" - -#: ipaserver/plugins/config.py:305 -msgid "Hidden IPA CA servers" -msgstr "" - -#: ipaserver/plugins/config.py:306 -msgid "Hidden IPA servers configured as certificate authority" -msgstr "" - -#: ipaserver/plugins/config.py:311 -msgid "IPA CA renewal master" -msgstr "" - -#: ipaserver/plugins/config.py:312 -msgid "Renewal master for IPA certificate authority" -msgstr "" - -#: ipaserver/plugins/config.py:317 ipaserver/plugins/vault.py:978 -msgid "IPA KRA servers" -msgstr "" - -#: ipaserver/plugins/config.py:318 -msgid "IPA servers configured as key recovery agent" -msgstr "" - -#: ipaserver/plugins/config.py:323 -msgid "Hidden IPA KRA servers" -msgstr "" - -#: ipaserver/plugins/config.py:324 -msgid "Hidden IPA servers configured as key recovery agent" -msgstr "" - -#: ipaserver/plugins/config.py:330 ipaserver/plugins/idviews.py:159 -msgid "Domain resolution order" -msgstr "" - -#: ipaserver/plugins/config.py:331 ipaserver/plugins/idviews.py:160 -msgid "colon-separated list of domains used for short name qualification" -msgstr "" - -#: ipaserver/plugins/config.py:336 ipaserver/plugins/dns.py:4147 -msgid "IPA DNS servers" -msgstr "" - -#: ipaserver/plugins/config.py:337 -msgid "IPA servers configured as domain name server" -msgstr "" - -#: ipaserver/plugins/config.py:342 -msgid "Hidden IPA DNS servers" -msgstr "" - -#: ipaserver/plugins/config.py:343 -msgid "Hidden IPA servers configured as domain name server" -msgstr "" - -#: ipaserver/plugins/config.py:348 ipaserver/plugins/dns.py:4153 -msgid "IPA DNSSec key master" -msgstr "" - -#: ipaserver/plugins/config.py:349 -msgid "DNSec key master" -msgstr "" - -#: ipaserver/plugins/config.py:354 -msgid "Setup SID configuration" -msgstr "" - -#: ipaserver/plugins/config.py:355 -msgid "New users and groups automatically get a SID assigned" -msgstr "" - -#: ipaserver/plugins/config.py:360 -msgid "Add SIDs" -msgstr "" - -#: ipaserver/plugins/config.py:361 -msgid "Add SIDs for existing users and groups" -msgstr "" - -#: ipaserver/plugins/config.py:366 ipaserver/plugins/config.py:367 -msgid "NetBIOS name of the IPA domain" -msgstr "" - -#: ipaserver/plugins/config.py:444 -msgid "Empty domain is not allowed" -msgstr "" - -#: ipaserver/plugins/config.py:452 -#, python-format -msgid "Invalid domain name '%(domain)s': %(e)s" -msgstr "" - -#: ipaserver/plugins/config.py:457 -#, python-format -msgid "Server has no information about domain '%(domain)s'" -msgstr "" - -#: ipaserver/plugins/config.py:464 -#, python-format -msgid "Disabled domain '%(domain)s' is not allowed" -msgstr "" - -#: ipaserver/plugins/config.py:514 -msgid "not allowed to enable SID generation" -msgstr "" - -#: ipaserver/plugins/config.py:522 -msgid "" -"Up to 15 characters and only uppercase ASCII letters, digits and dashes are " -"allowed. Empty string is not allowed." -msgstr "" - -#: ipaserver/plugins/config.py:550 -msgid "Failed to call DBus" -msgstr "" - -#: ipaserver/plugins/config.py:560 -msgid "Configuration of SID failed. See details in the error log" -msgstr "" - -#: ipaserver/plugins/config.py:570 -msgid "The group doesn't exist" -msgstr "" - -#: ipaserver/plugins/config.py:588 -#, python-format -msgid "attribute \"%s\" not allowed" -msgstr "" - -#: ipaserver/plugins/config.py:608 -msgid "May not be empty" -msgstr "" - -#: ipaserver/plugins/config.py:627 -#, python-format -msgid "%(obj)s default attribute %(attr)s would not be allowed!" -msgstr "" - -#: ipaserver/plugins/config.py:659 -msgid "A list of SELinux users delimited by $ expected" -msgstr "" - -#: ipaserver/plugins/config.py:663 -#, python-format -msgid "SELinux user '%(user)s' is not valid: %(error)s" -msgstr "" - -#: ipaserver/plugins/config.py:675 -msgid "SELinux user map default user not in order list" -msgstr "" - -#: ipaserver/plugins/config.py:694 -#, python-format -msgid "You cannot specify %s without the --enable-sid option" -msgstr "" - #: ipaserver/plugins/delegation.py:67 msgid "delegation" msgstr "" @@ -16374,6 +13704,11 @@ msgstr "" msgid "Delegation" msgstr "" +#: ipaserver/plugins/delegation.py:101 ipaserver/plugins/aci.py:514 +#: ipaserver/plugins/permission.py:359 ipaserver/plugins/selfservice.py:94 +msgid "ACI" +msgstr "" + #: ipaserver/plugins/delegation.py:132 #, python-format msgid "Added delegation \"%(value)s\"" @@ -17241,10 +14576,18 @@ msgstr "" msgid "IPA DNS version" msgstr "" +#: ipaserver/plugins/dns.py:4147 ipaserver/plugins/config.py:336 +msgid "IPA DNS servers" +msgstr "" + #: ipaserver/plugins/dns.py:4148 msgid "List of IPA masters configured as DNS servers" msgstr "" +#: ipaserver/plugins/dns.py:4153 ipaserver/plugins/config.py:348 +msgid "IPA DNSSec key master" +msgstr "" + #: ipaserver/plugins/dns.py:4154 msgid "IPA server configured as DNSSec key master" msgstr "" @@ -17312,121 +14655,1841 @@ msgstr "" msgid "Do not update records only return expected records" msgstr "" -#: ipaserver/plugins/dnsserver.py:35 -msgid "" -"\n" -"DNS server configuration\n" +#: ipaserver/plugins/hbac.py:7 +msgid "Host-based access control commands" msgstr "" -#: ipaserver/plugins/dnsserver.py:37 -msgid "" -"\n" -"Manipulate DNS server configuration\n" +#: ipaserver/plugins/hbacsvcgroup.py:64 +msgid "HBAC service group" msgstr "" -#: ipaserver/plugins/dnsserver.py:41 -msgid "" -"\n" -" Show configuration of a specific DNS server:\n" -" ipa dnsserver-show\n" +#: ipaserver/plugins/hbacsvcgroup.py:65 +msgid "HBAC service groups" msgstr "" -#: ipaserver/plugins/dnsserver.py:44 -msgid "" -"\n" -" Update configuration of a specific DNS server:\n" -" ipa dnsserver-mod\n" +#: ipaserver/plugins/hbacsvcgroup.py:108 ipaserver/plugins/hbacrule.py:290 +msgid "HBAC Service Groups" msgstr "" -#: ipaserver/plugins/dnsserver.py:62 -msgid "DNS server" +#: ipaserver/plugins/hbacsvcgroup.py:109 +msgid "HBAC Service Group" msgstr "" -#: ipaserver/plugins/dnsserver.py:63 -msgid "DNS servers" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:71 -msgid "DNS Servers" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:72 -msgid "DNS Server" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:113 -msgid "DNS Server name" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:119 -msgid "SOA mname override" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:120 -msgid "SOA mname (authoritative server) override" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:126 -msgid "Forwarders" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:128 -msgid "" -"Per-server forwarders. A custom port can be specified for each forwarder " -"using a standard format \"IP_ADDRESS port PORT\"" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:138 -msgid "" -"Per-server conditional forwarding policy. Set to \"none\" to disable " -"forwarding to global forwarder for this zone. In that case, conditional zone " -"forwarders are disregarded." -msgstr "" - -#: ipaserver/plugins/dnsserver.py:154 -msgid "Modify DNS server configuration" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:157 +#: ipaserver/plugins/hbacsvcgroup.py:131 #, python-format -msgid "Modified DNS server \"%(value)s\"" +msgid "Added HBAC service group \"%(value)s\"" msgstr "" -#: ipaserver/plugins/dnsserver.py:162 -msgid "Search for DNS servers." -msgstr "" - -#: ipaserver/plugins/dnsserver.py:166 +#: ipaserver/plugins/hbacsvcgroup.py:139 #, python-format -msgid "%(count)d DNS server matched" -msgid_plural "%(count)d DNS servers matched" +msgid "Deleted HBAC service group \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/hbacsvcgroup.py:147 +#, python-format +msgid "Modified HBAC service group \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/hbacsvcgroup.py:156 +#, python-format +msgid "%(count)d HBAC service group matched" +msgid_plural "%(count)d HBAC service groups matched" msgstr[0] "" msgstr[1] "" -#: ipaserver/plugins/dnsserver.py:176 -msgid "IPA DNS Server is not installed" +#: ipaserver/plugins/topology.py:24 +msgid "" +"\n" +"Topology\n" +"\n" +"Management of a replication topology at domain level 1.\n" msgstr "" -#: ipaserver/plugins/dnsserver.py:183 -msgid "Display configuration of a DNS server." +#: ipaserver/plugins/topology.py:28 +msgid "" +"\n" +"IPA server's data is stored in LDAP server in two suffixes:\n" +"* domain suffix, e.g., 'dc=example,dc=com', contains all domain related " +"data\n" +"* ca suffix, 'o=ipaca', is present only on server with CA installed. It\n" +" contains data for Certificate Server component\n" msgstr "" -#: ipaserver/plugins/dnsserver.py:193 -msgid "Add a new DNS server." +#: ipaserver/plugins/topology.py:33 +msgid "" +"\n" +"Data stored on IPA servers is replicated to other IPA servers. The way it " +"is\n" +"replicated is defined by replication agreements. Replication agreements " +"needs\n" +"to be set for both suffixes separately. On domain level 0 they are managed\n" +"using ipa-replica-manage and ipa-csreplica-manage tools. With domain level " +"1\n" +"they are managed centrally using `ipa topology*` commands.\n" msgstr "" -#: ipaserver/plugins/dnsserver.py:196 +#: ipaserver/plugins/topology.py:39 +msgid "" +"\n" +"Agreements are represented by topology segments. By default topology " +"segment\n" +"represents 2 replication agreements - one for each direction, e.g., A to B " +"and\n" +"B to A. Creation of unidirectional segments is not allowed.\n" +msgstr "" + +#: ipaserver/plugins/topology.py:43 +msgid "" +"\n" +"To verify that no server is disconnected in the topology of the given " +"suffix,\n" +"use:\n" +" ipa topologysuffix-verify $suffix\n" +msgstr "" + +#: ipaserver/plugins/topology.py:47 +msgid "" +"\n" +"\n" +"Examples:\n" +" Find all IPA servers:\n" +" ipa server-find\n" +msgstr "" + +#: ipaserver/plugins/topology.py:52 +msgid "" +"\n" +" Find all suffixes:\n" +" ipa topologysuffix-find\n" +msgstr "" + +#: ipaserver/plugins/topology.py:55 +msgid "" +"\n" +" Add topology segment to 'domain' suffix:\n" +" ipa topologysegment-add domain --left IPA_SERVER_A --right IPA_SERVER_B\n" +msgstr "" + +#: ipaserver/plugins/topology.py:58 +msgid "" +"\n" +" Add topology segment to 'ca' suffix:\n" +" ipa topologysegment-add ca --left IPA_SERVER_A --right IPA_SERVER_B\n" +msgstr "" + +#: ipaserver/plugins/topology.py:61 +msgid "" +"\n" +" List all topology segments in 'domain' suffix:\n" +" ipa topologysegment-find domain\n" +msgstr "" + +#: ipaserver/plugins/topology.py:64 +msgid "" +"\n" +" List all topology segments in 'ca' suffix:\n" +" ipa topologysegment-find ca\n" +msgstr "" + +#: ipaserver/plugins/topology.py:67 +msgid "" +"\n" +" Delete topology segment in 'domain' suffix:\n" +" ipa topologysegment-del domain segment_name\n" +msgstr "" + +#: ipaserver/plugins/topology.py:70 +msgid "" +"\n" +" Delete topology segment in 'ca' suffix:\n" +" ipa topologysegment-del ca segment_name\n" +msgstr "" + +#: ipaserver/plugins/topology.py:73 +msgid "" +"\n" +" Verify topology of 'domain' suffix:\n" +" ipa topologysuffix-verify domain\n" +msgstr "" + +#: ipaserver/plugins/topology.py:76 +msgid "" +"\n" +" Verify topology of 'ca' suffix:\n" +" ipa topologysuffix-verify ca\n" +msgstr "" + +#: ipaserver/plugins/topology.py:92 +#, python-brace-format +msgid "Topology management requires minimum domain level {0} " +msgstr "" + +#: ipaserver/plugins/topology.py:104 +msgid "segment" +msgstr "" + +#: ipaserver/plugins/topology.py:105 +msgid "segments" +msgstr "" + +#: ipaserver/plugins/topology.py:119 +msgid "Topology Segments" +msgstr "" + +#: ipaserver/plugins/topology.py:120 +msgid "Topology Segment" +msgstr "" + +#: ipaserver/plugins/topology.py:226 #, python-format -msgid "Added new DNS server \"%(value)s\"" +msgid "left node is not a topology node: %(leftnode)s" msgstr "" -#: ipaserver/plugins/dnsserver.py:205 -msgid "Delete a DNS server" -msgstr "" - -#: ipaserver/plugins/dnsserver.py:208 +#: ipaserver/plugins/topology.py:233 #, python-format -msgid "Deleted DNS server \"%(value)s\"" +msgid "right node is not a topology node: %(rightnode)s" +msgstr "" + +#: ipaserver/plugins/topology.py:250 +msgid "left node and right node must not be the same" +msgstr "" + +#: ipaserver/plugins/topology.py:261 +#, python-brace-format +msgid "left node ({host}) does not support suffix '{suff}'" +msgstr "" + +#: ipaserver/plugins/topology.py:269 +#, python-brace-format +msgid "right node ({host}) does not support suffix '{suff}'" +msgstr "" + +#: ipaserver/plugins/topology.py:280 +#, python-format +msgid "%(count)d segment matched" +msgid_plural "%(count)d segments matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/topology.py:289 +#, python-format +msgid "Added segment \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/topology.py:302 +#, python-format +msgid "Deleted segment \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/topology.py:314 +#, python-format +msgid "Modified segment \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/topology.py:329 +#, python-format +msgid "%(value)s" +msgstr "" + +#: ipaserver/plugins/topology.py:365 +msgid "left or right node has to be specified" +msgstr "" + +#: ipaserver/plugins/topology.py:370 +msgid "only one node can be specified" +msgstr "" + +#: ipaserver/plugins/topology.py:374 +#, python-format +msgid "Replication refresh for segment: \"%(pkey)s\" requested." +msgstr "" + +#: ipaserver/plugins/topology.py:377 +#, python-format +msgid "Stopping of replication refresh for segment: \"%(pkey)s\" requested." +msgstr "" + +#: ipaserver/plugins/topology.py:408 +msgid "suffixes" +msgstr "" + +#: ipaserver/plugins/topology.py:412 +msgid "Topology suffixes" +msgstr "" + +#: ipaserver/plugins/topology.py:413 +msgid "Topology suffix" +msgstr "" + +#: ipaserver/plugins/topology.py:435 +#, python-format +msgid "%(count)d topology suffix matched" +msgid_plural "%(count)d topology suffixes matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/topology.py:446 +#, python-format +msgid "Deleted topology suffix \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/topology.py:460 +#, python-format +msgid "Added topology suffix \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/topology.py:474 +#, python-format +msgid "Modified topology suffix \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/topology.py:489 +msgid "" +"\n" +"Verify replication topology for suffix.\n" +"\n" +"Checks done:\n" +" 1. check if a topology is not disconnected. In other words if there are\n" +" replication paths between all servers.\n" +" 2. check if servers don't have more than the recommended number of\n" +" replication agreements\n" +msgstr "" + +#: ipaserver/plugins/automember.py:43 +msgid "" +"\n" +"Auto Membership Rule.\n" +msgstr "" + +#: ipaserver/plugins/automember.py:45 +msgid "" +"\n" +"Bring clarity to the membership of hosts and users by configuring inclusive\n" +"or exclusive regex patterns, you can automatically assign a new entries " +"into\n" +"a group or hostgroup based upon attribute information.\n" +msgstr "" + +#: ipaserver/plugins/automember.py:49 +msgid "" +"\n" +"A rule is directly associated with a group by name, so you cannot create\n" +"a rule without an accompanying group or hostgroup.\n" +msgstr "" + +#: ipaserver/plugins/automember.py:52 +msgid "" +"\n" +"A condition is a regular expression used by 389-ds to match a new incoming\n" +"entry with an automember rule. If it matches an inclusive rule then the\n" +"entry is added to the appropriate group or hostgroup.\n" +msgstr "" + +#: ipaserver/plugins/automember.py:56 +msgid "" +"\n" +"A default group or hostgroup could be specified for entries that do not\n" +"match any rule. In case of user entries this group will be a fallback group\n" +"because all users are by default members of group specified in IPA config.\n" +msgstr "" + +#: ipaserver/plugins/automember.py:60 +msgid "" +"\n" +"The automember-rebuild command can be used to retroactively run automember " +"rules\n" +"against existing entries, thus rebuilding their membership.\n" +msgstr "" + +#: ipaserver/plugins/automember.py:65 +msgid "" +"\n" +" Add the initial group or hostgroup:\n" +" ipa hostgroup-add --desc=\"Web Servers\" webservers\n" +" ipa group-add --desc=\"Developers\" devel\n" +msgstr "" + +#: ipaserver/plugins/automember.py:69 +msgid "" +"\n" +" Add the initial rule:\n" +" ipa automember-add --type=hostgroup webservers\n" +" ipa automember-add --type=group devel\n" +msgstr "" + +#: ipaserver/plugins/automember.py:73 +msgid "" +"\n" +" Add a condition to the rule:\n" +" ipa automember-add-condition --key=fqdn --type=hostgroup --inclusive-" +"regex=^web[1-9]+\\.example\\.com webservers\n" +" ipa automember-add-condition --key=manager --type=group --inclusive-" +"regex=^uid=mscott devel\n" +msgstr "" + +#: ipaserver/plugins/automember.py:77 +msgid "" +"\n" +" Add an exclusive condition to the rule to prevent auto assignment:\n" +" ipa automember-add-condition --key=fqdn --type=hostgroup --exclusive-" +"regex=^web5\\.example\\.com webservers\n" +msgstr "" + +#: ipaserver/plugins/automember.py:80 +msgid "" +"\n" +" Add a host:\n" +" ipa host-add web1.example.com\n" +msgstr "" + +#: ipaserver/plugins/automember.py:83 +msgid "" +"\n" +" Add a user:\n" +" ipa user-add --first=Tim --last=User --password tuser1 --manager=mscott\n" +msgstr "" + +#: ipaserver/plugins/automember.py:86 +msgid "" +"\n" +" Verify automembership:\n" +" ipa hostgroup-show webservers\n" +" Host-group: webservers\n" +" Description: Web Servers\n" +" Member hosts: web1.example.com\n" +"\n" +" ipa group-show devel\n" +" Group name: devel\n" +" Description: Developers\n" +" GID: 1004200000\n" +" Member users: tuser\n" +msgstr "" + +#: ipaserver/plugins/automember.py:98 +msgid "" +"\n" +" Remove a condition from the rule:\n" +" ipa automember-remove-condition --key=fqdn --type=hostgroup --inclusive-" +"regex=^web[1-9]+\\.example\\.com webservers\n" +msgstr "" + +#: ipaserver/plugins/automember.py:101 +msgid "" +"\n" +" Modify the automember rule:\n" +" ipa automember-mod\n" +msgstr "" + +#: ipaserver/plugins/automember.py:104 +msgid "" +"\n" +" Set the default (fallback) target group:\n" +" ipa automember-default-group-set --default-group=webservers --" +"type=hostgroup\n" +" ipa automember-default-group-set --default-group=ipausers --type=group\n" +msgstr "" + +#: ipaserver/plugins/automember.py:108 +msgid "" +"\n" +" Remove the default (fallback) target group:\n" +" ipa automember-default-group-remove --type=hostgroup\n" +" ipa automember-default-group-remove --type=group\n" +msgstr "" + +#: ipaserver/plugins/automember.py:112 +msgid "" +"\n" +" Show the default (fallback) target group:\n" +" ipa automember-default-group-show --type=hostgroup\n" +" ipa automember-default-group-show --type=group\n" +msgstr "" + +#: ipaserver/plugins/automember.py:116 +msgid "" +"\n" +" Find all of the automember rules:\n" +" ipa automember-find\n" +msgstr "" + +#: ipaserver/plugins/automember.py:119 +msgid "" +"\n" +" Find all of the orphan automember rules:\n" +" ipa automember-find-orphans --type=hostgroup\n" +" Find all of the orphan automember rules and remove them:\n" +" ipa automember-find-orphans --type=hostgroup --remove\n" +msgstr "" + +#: ipaserver/plugins/automember.py:124 +msgid "" +"\n" +" Display a automember rule:\n" +" ipa automember-show --type=hostgroup webservers\n" +" ipa automember-show --type=group devel\n" +msgstr "" + +#: ipaserver/plugins/automember.py:128 +msgid "" +"\n" +" Delete an automember rule:\n" +" ipa automember-del --type=hostgroup webservers\n" +" ipa automember-del --type=group devel\n" +msgstr "" + +#: ipaserver/plugins/automember.py:132 +msgid "" +"\n" +" Rebuild membership for all users:\n" +" ipa automember-rebuild --type=group\n" +msgstr "" + +#: ipaserver/plugins/automember.py:135 +msgid "" +"\n" +" Rebuild membership for all hosts:\n" +" ipa automember-rebuild --type=hostgroup\n" +msgstr "" + +#: ipaserver/plugins/automember.py:138 +msgid "" +"\n" +" Rebuild membership for specified users:\n" +" ipa automember-rebuild --users=tuser1 --users=tuser2\n" +msgstr "" + +#: ipaserver/plugins/automember.py:141 +msgid "" +"\n" +" Rebuild membership for specified hosts:\n" +" ipa automember-rebuild --hosts=web1.example.com --hosts=web2.example." +"com\n" +msgstr "" + +#: ipaserver/plugins/automember.py:244 +msgid "Auto Membership Rule" +msgstr "" + +#: ipaserver/plugins/automember.py:275 +#, python-format +msgid "%(otype)s \"%(oname)s\" not found" +msgstr "" + +#: ipaserver/plugins/automember.py:301 +#, python-format +msgid "%s is not a valid attribute." +msgstr "" + +#: ipaserver/plugins/automember.py:314 +msgid "" +"\n" +" Add an automember rule.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:318 +#, python-format +msgid "Added automember rule \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automember.py:325 +msgid "Auto Membership is not configured" +msgstr "" + +#: ipaserver/plugins/automember.py:337 +msgid "" +"\n" +" Add conditions to an automember rule.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:348 +#, python-format +msgid "Added condition(s) to \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automember.py:371 ipaserver/plugins/automember.py:455 +#, python-format +msgid "Auto member rule: %s not found!" +msgstr "" + +#: ipaserver/plugins/automember.py:413 +msgid "" +"\n" +" Override this so we can add completed and failed to the return " +"result.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:428 +msgid "" +"\n" +" Remove conditions from an automember rule.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:432 +#, python-format +msgid "Removed condition(s) from \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automember.py:496 +msgid "" +"\n" +" Override this so we can set completed and failed.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:511 +msgid "" +"\n" +" Modify an automember rule.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:515 +#, python-format +msgid "Modified automember rule \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automember.py:525 +msgid "" +"\n" +" Delete an automember rule.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:529 +#, python-format +msgid "Deleted automember rule \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automember.py:534 +msgid "" +"\n" +" Search for automember rules.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:540 ipaserver/plugins/automember.py:840 +#, python-format +msgid "%(count)d rules matched" +msgid_plural "%(count)d rules matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/automember.py:552 +msgid "" +"\n" +" Display information about an automember rule.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:576 +msgid "" +"\n" +" Set default (fallback) group for all unmatched entries.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:590 +#, python-format +msgid "Set default (fallback) group for automember \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automember.py:607 +msgid "" +"\n" +" Remove default (fallback) group for all unmatched entries.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:614 +#, python-format +msgid "Removed default (fallback) group for automember \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automember.py:625 ipaserver/plugins/automember.py:633 +#: ipaserver/plugins/automember.py:661 +msgid "No default (fallback) group set" +msgstr "" + +#: ipaserver/plugins/automember.py:644 +msgid "" +"\n" +" Display information about the default (fallback) automember groups.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:675 +msgid "Task DN" +msgstr "" + +#: ipaserver/plugins/automember.py:676 +msgid "DN of the started task" +msgstr "" + +#: ipaserver/plugins/automember.py:727 +msgid "at least one of options: type, users, hosts must be specified" +msgstr "" + +#: ipaserver/plugins/automember.py:733 +msgid "users and hosts cannot both be set" +msgstr "" + +#: ipaserver/plugins/automember.py:737 +msgid "hosts cannot be set when type is 'group'" +msgstr "" + +#: ipaserver/plugins/automember.py:741 +msgid "users cannot be set when type is 'hostgroup'" +msgstr "" + +#: ipaserver/plugins/automember.py:795 +msgid "Automember rebuild membership task started" +msgstr "" + +#: ipaserver/plugins/automember.py:799 ipaserver/plugins/internal.py:164 +msgid "Automember rebuild membership task completed" +msgstr "" + +#: ipaserver/plugins/automember.py:815 +#, python-format +msgid "Task DN = '%s'" +msgstr "" + +#: ipaserver/plugins/automember.py:818 ipaserver/plugins/internal.py:1942 +msgid "Automember" +msgstr "" + +#: ipaserver/plugins/automember.py:828 +msgid "" +"\n" +" Search for orphan automember rules. The command might need to be run as\n" +" a privileged user user to get all orphan rules.\n" +" " +msgstr "" + +#: ipaserver/plugins/automember.py:835 +msgid "Remove orphan automember rules" +msgstr "" + +#: ipaserver/plugins/cert.py:64 ipaserver/plugins/hbactest.py:39 +msgid "pyhbac is not installed." +msgstr "" + +#: ipaserver/plugins/cert.py:69 +msgid "" +"\n" +"IPA certificate operations\n" +msgstr "" + +#: ipaserver/plugins/cert.py:71 +msgid "" +"\n" +"Implements a set of commands for managing server SSL certificates.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:73 +msgid "" +"\n" +"Certificate requests exist in the form of a Certificate Signing Request " +"(CSR)\n" +"in PEM format.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:76 +msgid "" +"\n" +"The dogtag CA uses just the CN value of the CSR and forces the rest of the\n" +"subject to values configured in the server.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:79 +msgid "" +"\n" +"A certificate is stored with a service principal and a service principal\n" +"needs a host.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:82 +msgid "" +"\n" +"In order to request a certificate:\n" +msgstr "" + +#: ipaserver/plugins/cert.py:84 +msgid "" +"\n" +"* The host must exist\n" +"* The service must exist (or you use the --add option to automatically add " +"it)\n" +msgstr "" + +#: ipaserver/plugins/cert.py:87 +msgid "" +"\n" +"SEARCHING:\n" +msgstr "" + +#: ipaserver/plugins/cert.py:89 +msgid "" +"\n" +"Certificates may be searched on by certificate subject, serial number,\n" +"revocation reason, validity dates and the issued date.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:92 +msgid "" +"\n" +"When searching on dates the _from date does a >= search and the _to date\n" +"does a <= search. When combined these are done as an AND.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:95 +msgid "" +"\n" +"Dates are treated as GMT to match the dates in the certificates.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:97 +msgid "" +"\n" +"The date format is YYYY-mm-dd.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:101 +msgid "" +"\n" +" Request a new certificate and add the principal:\n" +" ipa cert-request --add --principal=HTTP/lion.example.com example.csr\n" +msgstr "" + +#: ipaserver/plugins/cert.py:104 +msgid "" +"\n" +" Retrieve an existing certificate:\n" +" ipa cert-show 1032\n" +msgstr "" + +#: ipaserver/plugins/cert.py:107 +msgid "" +"\n" +" Revoke a certificate (see RFC 5280 for reason details):\n" +" ipa cert-revoke --revocation-reason=6 1032\n" +msgstr "" + +#: ipaserver/plugins/cert.py:110 +msgid "" +"\n" +" Remove a certificate from revocation hold status:\n" +" ipa cert-remove-hold 1032\n" +msgstr "" + +#: ipaserver/plugins/cert.py:113 +msgid "" +"\n" +" Check the status of a signing request:\n" +" ipa cert-status 10\n" +msgstr "" + +#: ipaserver/plugins/cert.py:116 +msgid "" +"\n" +" Search for certificates by hostname:\n" +" ipa cert-find --subject=ipaserver.example.com\n" +msgstr "" + +#: ipaserver/plugins/cert.py:119 +msgid "" +"\n" +" Search for revoked certificates by reason:\n" +" ipa cert-find --revocation-reason=5\n" +msgstr "" + +#: ipaserver/plugins/cert.py:122 +msgid "" +"\n" +" Search for certificates based on issuance date\n" +" ipa cert-find --issuedon-from=2013-02-01 --issuedon-to=2013-02-07\n" +msgstr "" + +#: ipaserver/plugins/cert.py:125 +msgid "" +"\n" +" Search for certificates owned by a specific user:\n" +" ipa cert-find --user=user\n" +msgstr "" + +#: ipaserver/plugins/cert.py:128 +msgid "" +"\n" +" Examine a certificate:\n" +" ipa cert-find --file=cert.pem --all\n" +msgstr "" + +#: ipaserver/plugins/cert.py:131 +msgid "" +"\n" +" Verify that a certificate is owned by a specific user:\n" +" ipa cert-find --file=cert.pem --user=user\n" +msgstr "" + +#: ipaserver/plugins/cert.py:134 +msgid "" +"\n" +"IPA currently immediately issues (or declines) all certificate requests so\n" +"the status of a request is not normally useful. This is for future use\n" +"or the case where a CA does not immediately issue a certificate.\n" +msgstr "" + +#: ipaserver/plugins/cert.py:138 +msgid "" +"\n" +"The following revocation reasons are supported:\n" +"\n" +msgstr "" + +#: ipaserver/plugins/cert.py:141 +msgid " * 0 - unspecified\n" +msgstr "" + +#: ipaserver/plugins/cert.py:142 +msgid " * 1 - keyCompromise\n" +msgstr "" + +#: ipaserver/plugins/cert.py:143 +msgid " * 2 - cACompromise\n" +msgstr "" + +#: ipaserver/plugins/cert.py:144 +msgid " * 3 - affiliationChanged\n" +msgstr "" + +#: ipaserver/plugins/cert.py:145 +msgid " * 4 - superseded\n" +msgstr "" + +#: ipaserver/plugins/cert.py:146 +msgid " * 5 - cessationOfOperation\n" +msgstr "" + +#: ipaserver/plugins/cert.py:147 +msgid " * 6 - certificateHold\n" +msgstr "" + +#: ipaserver/plugins/cert.py:148 +msgid " * 8 - removeFromCRL\n" +msgstr "" + +#: ipaserver/plugins/cert.py:149 +msgid " * 9 - privilegeWithdrawn\n" +msgstr "" + +#: ipaserver/plugins/cert.py:150 +msgid " * 10 - aACompromise\n" +msgstr "" + +#: ipaserver/plugins/cert.py:151 +msgid "" +"\n" +"Note that reason code 7 is not used. See RFC 5280 for more details:\n" +msgstr "" + +#: ipaserver/plugins/cert.py:153 +msgid "" +"\n" +"http://www.ietf.org/rfc/rfc5280.txt\n" +"\n" +msgstr "" + +#: ipaserver/plugins/cert.py:283 ipaserver/plugins/certprofile.py:86 +msgid "CA is not configured" +msgstr "" + +#: ipaserver/plugins/cert.py:289 +#, python-format +msgid "" +"Principal '%(principal)s' is not permitted to use CA '%(ca)s' with profile " +"'%(profile_id)s' for certificate issuance." +msgstr "" + +#: ipaserver/plugins/cert.py:309 +msgid "enabledService/configuredService not in ipaConfigString kdc entry" +msgstr "" + +#: ipaserver/plugins/cert.py:313 +#, python-format +msgid "Host '%(hostname)s' is not an active KDC" +msgstr "" + +#: ipaserver/plugins/cert.py:347 +msgid "Issuing CA" +msgstr "" + +#: ipaserver/plugins/cert.py:348 +msgid "Name of issuing CA" +msgstr "" + +#: ipaserver/plugins/cert.py:354 ipaserver/plugins/ca.py:113 +msgid "Base-64 encoded certificate." +msgstr "" + +#: ipaserver/plugins/cert.py:359 ipaserver/plugins/ca.py:118 +msgid "Certificate chain" +msgstr "" + +#: ipaserver/plugins/cert.py:360 ipaserver/plugins/ca.py:119 +msgid "X.509 certificate chain" +msgstr "" + +#: ipaserver/plugins/cert.py:365 ipaserver/plugins/cert.py:1502 +#: ipaserver/plugins/host.py:517 ipaserver/plugins/service.py:524 +#: ipaserver/plugins/internal.py:653 ipaserver/plugins/internal.py:729 +#: ipaserver/plugins/baseuser.py:838 +msgid "Subject" +msgstr "" + +#: ipaserver/plugins/cert.py:370 +msgid "Subject email address" +msgstr "" + +#: ipaserver/plugins/cert.py:375 +msgid "Subject DNS name" +msgstr "" + +#: ipaserver/plugins/cert.py:380 +msgid "Subject X.400 address" +msgstr "" + +#: ipaserver/plugins/cert.py:385 +msgid "Subject directory name" +msgstr "" + +#: ipaserver/plugins/cert.py:390 +msgid "Subject EDI Party name" +msgstr "" + +#: ipaserver/plugins/cert.py:395 +msgid "Subject URI" +msgstr "" + +#: ipaserver/plugins/cert.py:400 +msgid "Subject IP Address" +msgstr "" + +#: ipaserver/plugins/cert.py:405 +msgid "Subject OID" +msgstr "" + +#: ipaserver/plugins/cert.py:410 +msgid "Subject UPN" +msgstr "" + +#: ipaserver/plugins/cert.py:415 +msgid "Subject Kerberos principal name" +msgstr "" + +#: ipaserver/plugins/cert.py:420 +msgid "Subject Other Name" +msgstr "" + +#: ipaserver/plugins/cert.py:425 ipaserver/plugins/host.py:529 +#: ipaserver/plugins/service.py:536 ipaserver/plugins/internal.py:726 +#: ipaserver/plugins/baseuser.py:831 +msgid "Issuer" +msgstr "" + +#: ipaserver/plugins/cert.py:426 ipaserver/plugins/ca.py:106 +msgid "Issuer DN" +msgstr "" + +#: ipaserver/plugins/cert.py:431 ipaserver/plugins/host.py:533 +#: ipaserver/plugins/service.py:540 +msgid "Not Before" +msgstr "" + +#: ipaserver/plugins/cert.py:436 ipaserver/plugins/host.py:537 +#: ipaserver/plugins/service.py:544 +msgid "Not After" +msgstr "" + +#: ipaserver/plugins/cert.py:441 ipaserver/plugins/host.py:541 +#: ipaserver/plugins/service.py:548 +msgid "Fingerprint (SHA1)" +msgstr "" + +#: ipaserver/plugins/cert.py:446 ipaserver/plugins/host.py:545 +#: ipaserver/plugins/service.py:552 +msgid "Fingerprint (SHA256)" +msgstr "" + +#: ipaserver/plugins/cert.py:458 +msgid "Serial number (hex)" +msgstr "" + +#: ipaserver/plugins/cert.py:584 +msgid "Request status" +msgstr "" + +#: ipaserver/plugins/cert.py:599 ipaserver/plugins/ca.py:237 +msgid "Include certificate chain in output" +msgstr "" + +#: ipaserver/plugins/cert.py:630 +msgid "" +"automatically add the principal if it doesn't exist (service principals only)" +msgstr "" + +#: ipaserver/plugins/cert.py:679 +#, python-format +msgid "krbtgt certs can use only the %s profile" +msgstr "" + +#: ipaserver/plugins/cert.py:731 +msgid "No Common Name was found in subject of request." +msgstr "" + +#: ipaserver/plugins/cert.py:739 +#, python-format +msgid "" +"hostname in subject of request '%(cn)s' does not match name or aliases of " +"principal '%(principal)s'" +msgstr "" + +#: ipaserver/plugins/cert.py:745 +#, python-format +msgid "" +"hostname in subject of request '%(cn)s' does not match principal hostname " +"'%(hostname)s'" +msgstr "" + +#: ipaserver/plugins/cert.py:754 +msgid "DN commonName does not match user's login" +msgstr "" + +#: ipaserver/plugins/cert.py:768 +msgid "DN emailAddress does not match any of user's email addresses" +msgstr "" + +#: ipaserver/plugins/cert.py:777 +#, python-format +msgid "" +"Insufficient 'write' privilege to the 'userCertificate' attribute of entry " +"'%s'." +msgstr "" + +#: ipaserver/plugins/cert.py:798 ipaserver/plugins/cert.py:916 +#, python-format +msgid "subject alt name type %s is forbidden for user principals" +msgstr "" + +#: ipaserver/plugins/cert.py:843 +#, python-format +msgid "" +"The service principal for subject alt name %s in certificate request does " +"not exist" +msgstr "" + +#: ipaserver/plugins/cert.py:874 +#, python-format +msgid "" +"Insufficient privilege to create a certificate with subject alt name '%s'." +msgstr "" + +#: ipaserver/plugins/cert.py:892 +#, python-format +msgid "Principal '%s' in subject alt name does not match requested principal" +msgstr "" + +#: ipaserver/plugins/cert.py:901 +msgid "RFC822Name does not match any of user's email addresses" +msgstr "" + +#: ipaserver/plugins/cert.py:908 +#, python-format +msgid "subject alt name type %s is forbidden for non-user principals" +msgstr "" + +#: ipaserver/plugins/cert.py:925 +#, python-format +msgid "Subject alt name type %s is forbidden" +msgstr "" + +#: ipaserver/plugins/cert.py:943 +#, python-format +msgid "CA '%s' is disabled" +msgstr "" + +#: ipaserver/plugins/cert.py:1030 +msgid "'add' option" +msgstr "" + +#: ipaserver/plugins/cert.py:1034 +msgid "The principal for this request doesn't exist." +msgstr "" + +#: ipaserver/plugins/cert.py:1150 +#, python-format +msgid "IP address in subjectAltName (%s) unreachable from DNS names" +msgstr "" + +#: ipaserver/plugins/cert.py:1167 +#, python-format +msgid "IP address in subjectAltName (%s) does not have PTR record" +msgstr "" + +#: ipaserver/plugins/cert.py:1179 +#, python-format +msgid "PTR record for SAN IP (%s) does not match A/AAAA records" +msgstr "" + +#: ipaserver/plugins/cert.py:1273 ipaserver/plugins/internal.py:700 +#: ipaserver/plugins/internal.py:1030 ipaserver/plugins/internal.py:1333 +#: ipaserver/plugins/internal.py:1936 +msgid "Status" +msgstr "" + +#: ipaserver/plugins/cert.py:1278 +msgid "Revoked" +msgstr "" + +#: ipaserver/plugins/cert.py:1283 ipaserver/plugins/host.py:549 +#: ipaserver/plugins/service.py:556 ipaserver/plugins/internal.py:650 +#: ipaserver/plugins/internal.py:691 +msgid "Revocation reason" +msgstr "" + +#: ipaserver/plugins/cert.py:1284 +msgid "" +"Reason for revoking the certificate (0-10). Type \"ipa help cert\" for " +"revocation reason details. " +msgstr "" + +#: ipaserver/plugins/cert.py:1306 +#, python-format +msgid "Owner %s" +msgstr "" + +#: ipaserver/plugins/cert.py:1393 +#, python-format +msgid "" +"Certificate with serial number %(serial)s issued by CA '%(ca)s' not found" +msgstr "" + +#: ipaserver/plugins/cert.py:1462 +msgid "7 is not a valid revocation reason" +msgstr "" + +#: ipaserver/plugins/cert.py:1564 +msgid "Status of the certificate" +msgstr "" + +#: ipaserver/plugins/cert.py:1570 +msgid "Results should contain primary key attribute only (\"certificate\")" +msgstr "" + +#: ipaserver/plugins/cert.py:1586 +#, python-format +msgid "%(count)d certificate matched" +msgid_plural "%(count)d certificates matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/cert.py:1608 +#, python-format +msgid "Search for certificates with these owner %s." +msgstr "" + +#: ipaserver/plugins/cert.py:1619 +#, python-format +msgid "Search for certificates without these owner %s." +msgstr "" + +#: ipaserver/plugins/otp.py:7 +msgid "One time password commands" +msgstr "" + +#: ipaserver/plugins/otpconfig.py:57 +msgid "OTP configuration options" +msgstr "" + +#: ipaserver/plugins/otpconfig.py:80 ipaserver/plugins/otpconfig.py:81 +msgid "OTP Configuration" +msgstr "" + +#: ipaserver/plugins/pkinit.py:13 +msgid "" +"\n" +"Kerberos PKINIT feature status reporting tools.\n" +"\n" +"Report IPA masters on which Kerberos PKINIT is enabled or disabled\n" +"\n" +"EXAMPLES:\n" +" List PKINIT status on all masters:\n" +" ipa pkinit-status\n" +"\n" +" Check PKINIT status on `ipa.example.com`:\n" +" ipa pkinit-status --server ipa.example.com\n" +"\n" +" List all IPA masters with disabled PKINIT:\n" +" ipa pkinit-status --status='disabled'\n" +"\n" +"For more info about PKINIT support see:\n" +"\n" +"https://www.freeipa.org/page/V4/Kerberos_PKINIT\n" +msgstr "" + +#: ipaserver/plugins/pkinit.py:39 +msgid "pkinit" +msgstr "" + +#: ipaserver/plugins/pkinit.py:41 ipaserver/plugins/internal.py:192 +msgid "PKINIT" +msgstr "" + +#: ipaserver/plugins/pkinit.py:53 +msgid "PKINIT status" +msgstr "" + +#: ipaserver/plugins/pkinit.py:54 +msgid "Whether PKINIT is enabled or disabled" +msgstr "" + +#: ipaserver/plugins/pkinit.py:63 +msgid "Report PKINIT status on the IPA masters" +msgstr "" + +#: ipaserver/plugins/pkinit.py:65 +#, python-format +msgid "%(count)s server matched" +msgid_plural "%(count)s servers matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/radiusproxy.py:35 +msgid "" +"\n" +"RADIUS Proxy Servers\n" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:37 +msgid "" +"\n" +"Manage RADIUS Proxy Servers.\n" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:39 +msgid "" +"\n" +"IPA supports the use of an external RADIUS proxy server for krb5 OTP\n" +"authentications. This permits a great deal of flexibility when\n" +"integrating with third-party authentication services.\n" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:45 +msgid "" +"\n" +" Add a new server:\n" +" ipa radiusproxy-add MyRADIUS --server=radius.example.com:1812\n" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:48 +msgid "" +"\n" +" Find all servers whose entries include the string \"example.com\":\n" +" ipa radiusproxy-find example.com\n" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:51 +msgid "" +"\n" +" Examine the configuration:\n" +" ipa radiusproxy-show MyRADIUS\n" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:54 +msgid "" +"\n" +" Change the secret:\n" +" ipa radiusproxy-mod MyRADIUS --secret\n" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:57 +msgid "" +"\n" +" Delete a configuration:\n" +" ipa radiusproxy-del MyRADIUS\n" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:68 +msgid "invalid attribute name" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:80 +msgid "invalid port number" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:98 +msgid "RADIUS proxy server" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:99 +msgid "RADIUS proxy servers" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:106 +msgid "RADIUS Servers" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:107 +msgid "RADIUS Server" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:172 +#, python-format +msgid "Added RADIUS proxy server \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:177 +#, python-format +msgid "Deleted RADIUS proxy server \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:182 +#, python-format +msgid "Modified RADIUS proxy server \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/radiusproxy.py:188 +#, python-format +msgid "%(count)d RADIUS proxy server matched" +msgid_plural "%(count)d RADIUS proxy servers matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/aci.py:165 +msgid "A list of ACI values" +msgstr "" + +#: ipaserver/plugins/aci.py:229 +msgid "type, filter, subtree and targetgroup are mutually exclusive" +msgstr "" + +#: ipaserver/plugins/aci.py:232 +msgid "ACI prefix is required" +msgstr "" + +#: ipaserver/plugins/aci.py:235 +msgid "" +"at least one of: type, filter, subtree, targetgroup, attrs or memberof are " +"required" +msgstr "" + +#: ipaserver/plugins/aci.py:238 +msgid "filter and memberof are mutually exclusive" +msgstr "" + +#: ipaserver/plugins/aci.py:244 +msgid "group, permission and self are mutually exclusive" +msgstr "" + +#: ipaserver/plugins/aci.py:246 +msgid "One of group, permission or self is required" +msgstr "" + +#: ipaserver/plugins/aci.py:269 +#, python-format +msgid "Group '%s' does not exist" +msgstr "" + +#: ipaserver/plugins/aci.py:295 +msgid "empty filter" +msgstr "" + +#: ipaserver/plugins/aci.py:316 +#, python-format +msgid "Syntax Error: %(error)s" +msgstr "" + +#: ipaserver/plugins/aci.py:361 +#, python-format +msgid "invalid DN (%s)" +msgstr "" + +#: ipaserver/plugins/aci.py:408 +#, python-format +msgid "ACI with name \"%s\" not found" +msgstr "" + +#: ipaserver/plugins/aci.py:437 +msgid "ACI object." +msgstr "" + +#: ipaserver/plugins/aci.py:440 +msgid "ACIs" +msgstr "" + +#: ipaserver/plugins/aci.py:524 +#, python-format +msgid "Created ACI \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/aci.py:577 +#, python-format +msgid "Deleted ACI \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/aci.py:620 +#, python-format +msgid "Modified ACI \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/aci.py:694 +#, python-format +msgid "%(count)d ACI matched" +msgid_plural "%(count)d ACIs matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/aci.py:929 +#, python-format +msgid "Renamed ACI to \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/ca.py:20 +msgid "" +"\n" +"Manage Certificate Authorities\n" +msgstr "" + +#: ipaserver/plugins/ca.py:22 +msgid "" +"\n" +"Subordinate Certificate Authorities (Sub-CAs) can be added for scoped " +"issuance\n" +"of X.509 certificates.\n" +msgstr "" + +#: ipaserver/plugins/ca.py:25 +msgid "" +"\n" +"CAs are enabled on creation, but their use is subject to CA ACLs unless the\n" +"operator has permission to bypass CA ACLs.\n" +msgstr "" + +#: ipaserver/plugins/ca.py:28 +msgid "" +"\n" +"All CAs except the 'IPA' CA can be disabled or re-enabled. Disabling a CA\n" +"prevents it from issuing certificates but does not affect the validity of " +"its\n" +"certificate.\n" +msgstr "" + +#: ipaserver/plugins/ca.py:32 +msgid "" +"\n" +"CAs (all except the 'IPA' CA) can be deleted. Deleting a CA causes its " +"signing\n" +"certificate to be revoked and its private key deleted.\n" +msgstr "" + +#: ipaserver/plugins/ca.py:37 +msgid "" +"\n" +" Create new CA, subordinate to the IPA CA (requires permission\n" +" \"System: Add CA\"):\n" +"\n" +" ipa ca-add puppet --desc \"Puppet\" \\\n" +" --subject \"CN=Puppet CA,O=EXAMPLE.COM\"\n" +msgstr "" + +#: ipaserver/plugins/ca.py:43 +msgid "" +"\n" +" Disable a CA (requires permission \"System: Modify CA\"):\n" +"\n" +" ipa ca-disable puppet\n" +msgstr "" + +#: ipaserver/plugins/ca.py:47 +msgid "" +"\n" +" Re-enable a CA (requires permission \"System: Modify CA\"):\n" +"\n" +" ipa ca-enable puppet\n" +msgstr "" + +#: ipaserver/plugins/ca.py:51 +msgid "" +"\n" +" Delete a CA (requires permission \"System: Delete CA\"; also requires\n" +" CA to be disabled first):\n" +"\n" +" ipa ca-del puppet\n" +msgstr "" + +#: ipaserver/plugins/ca.py:68 ipaserver/plugins/ca.py:78 +msgid "Certificate Authority" +msgstr "" + +#: ipaserver/plugins/ca.py:69 ipaserver/plugins/ca.py:77 +msgid "Certificate Authorities" +msgstr "" + +#: ipaserver/plugins/ca.py:84 ipaserver/plugins/schema.py:48 +#: ipaserver/plugins/trust.py:1418 +msgid "Name" +msgstr "" + +#: ipaserver/plugins/ca.py:85 +msgid "Name for referencing the CA" +msgstr "" + +#: ipaserver/plugins/ca.py:90 +msgid "Description of the purpose of the CA" +msgstr "" + +#: ipaserver/plugins/ca.py:94 +msgid "Authority ID" +msgstr "" + +#: ipaserver/plugins/ca.py:95 +msgid "Dogtag Authority ID" +msgstr "" + +#: ipaserver/plugins/ca.py:100 ipaserver/plugins/ca.py:286 +msgid "Subject DN" +msgstr "" + +#: ipaserver/plugins/ca.py:101 +msgid "Subject Distinguished Name" +msgstr "" + +#: ipaserver/plugins/ca.py:107 +msgid "Issuer Distinguished Name" +msgstr "" + +#: ipaserver/plugins/ca.py:218 +msgid "Search for CAs." +msgstr "" + +#: ipaserver/plugins/ca.py:220 +#, python-format +msgid "%(count)d CA matched" +msgid_plural "%(count)d CAs matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/ca.py:243 +msgid "Display the properties of a CA." +msgstr "" + +#: ipaserver/plugins/ca.py:260 +msgid "Create a CA." +msgstr "" + +#: ipaserver/plugins/ca.py:261 +#, python-format +msgid "Created CA \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/ca.py:271 +#, python-format +msgid "Insufficient 'add' privilege for entry '%s'." +msgstr "" + +#: ipaserver/plugins/ca.py:287 +#, python-format +msgid "Unrecognized attributes: %(attrs)s" +msgstr "" + +#: ipaserver/plugins/ca.py:302 +#, python-format +msgid "Subject DN is already used by CA '%s'" +msgstr "" + +#: ipaserver/plugins/ca.py:326 +msgid "Delete a CA (must be disabled first)." +msgstr "" + +#: ipaserver/plugins/ca.py:328 +#, python-format +msgid "Deleted CA \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/ca.py:337 +msgid "Insufficient privilege to delete a CA." +msgstr "" + +#: ipaserver/plugins/ca.py:341 ipaserver/plugins/ca.py:350 +#: ipaserver/plugins/ca.py:369 ipaserver/plugins/ca.py:409 +#: ipaserver/plugins/internal.py:636 +msgid "CA" +msgstr "" + +#: ipaserver/plugins/ca.py:343 +msgid "IPA CA cannot be deleted" +msgstr "" + +#: ipaserver/plugins/ca.py:352 +msgid "Must be disabled first" +msgstr "" + +#: ipaserver/plugins/ca.py:360 +msgid "Modify CA configuration." +msgstr "" + +#: ipaserver/plugins/ca.py:361 +#, python-format +msgid "Modified CA \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/ca.py:387 +msgid "Insufficient privilege to modify a CA." +msgstr "" + +#: ipaserver/plugins/ca.py:403 +msgid "Disable a CA." +msgstr "" + +#: ipaserver/plugins/ca.py:404 +#, python-format +msgid "Disabled CA \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/ca.py:411 +msgid "IPA CA cannot be disabled" +msgstr "" + +#: ipaserver/plugins/ca.py:421 +msgid "Enable a CA." +msgstr "" + +#: ipaserver/plugins/ca.py:422 +#, python-format +msgid "Enabled CA \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certprofile.py:21 +msgid "" +"\n" +"Manage Certificate Profiles\n" +"\n" +"Certificate Profiles are used by Certificate Authority (CA) in the signing " +"of\n" +"certificates to determine if a Certificate Signing Request (CSR) is " +"acceptable,\n" +"and if so what features and extensions will be present on the certificate.\n" +"\n" +"The Certificate Profile format is the property-list format understood by " +"the\n" +"Dogtag or Red Hat Certificate System CA.\n" +"\n" +"PROFILE ID SYNTAX:\n" +"\n" +"A Profile ID is a string without spaces or punctuation starting with a " +"letter\n" +"and followed by a sequence of letters, digits or underscore (\"_\").\n" +"\n" +"EXAMPLES:\n" +"\n" +" Import a profile that will not store issued certificates:\n" +" ipa certprofile-import ShortLivedUserCert \\\n" +" --file UserCert.profile --desc \"User Certificates\" \\\n" +" --store=false\n" +"\n" +" Delete a certificate profile:\n" +" ipa certprofile-del ShortLivedUserCert\n" +"\n" +" Show information about a profile:\n" +" ipa certprofile-show ShortLivedUserCert\n" +"\n" +" Save profile configuration to a file:\n" +" ipa certprofile-show caIPAserviceCert --out caIPAserviceCert.cfg\n" +"\n" +" Search for profiles that do not store certificates:\n" +" ipa certprofile-find --store=false\n" +"\n" +"PROFILE CONFIGURATION FORMAT:\n" +"\n" +"The profile configuration format is the raw property-list format\n" +"used by Dogtag Certificate System. The XML format is not supported.\n" +"\n" +"The following restrictions apply to profiles managed by IPA:\n" +"\n" +"- When importing a profile the \"profileId\" field, if present, must\n" +" match the ID given on the command line.\n" +"\n" +"- The \"classId\" field must be set to \"caEnrollImpl\"\n" +"\n" +"- The \"auth.instance_id\" field must be set to \"raCertAuth\"\n" +"\n" +"- The \"certReqInputImpl\" input class and \"certOutputImpl\" output\n" +" class must be used.\n" +"\n" +msgstr "" + +#: ipaserver/plugins/certprofile.py:95 +msgid "invalid Profile ID" +msgstr "" + +#: ipaserver/plugins/certprofile.py:106 ipaserver/plugins/certprofile.py:116 +msgid "Certificate Profile" +msgstr "" + +#: ipaserver/plugins/certprofile.py:107 ipaserver/plugins/certprofile.py:115 +msgid "Certificate Profiles" +msgstr "" + +#: ipaserver/plugins/certprofile.py:126 +msgid "Profile configuration" +msgstr "" + +#: ipaserver/plugins/certprofile.py:190 +#, python-format +msgid "%(count)d profile matched" +msgid_plural "%(count)d profiles matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/certprofile.py:222 +#, python-format +msgid "Imported profile \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certprofile.py:247 +#, python-format +msgid "Profile data specifies profileId multiple times: %(values)s" +msgstr "" + +#: ipaserver/plugins/certprofile.py:255 +#, python-format +msgid "Profile ID '%(cli_value)s' does not match profile data '%(file_value)s'" +msgstr "" + +#: ipaserver/plugins/certprofile.py:282 +#, python-format +msgid "Deleted profile \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certprofile.py:289 +#, python-format +msgid "Predefined profile '%(profile_id)s' cannot be deleted" +msgstr "" + +#: ipaserver/plugins/certprofile.py:305 +#, python-format +msgid "Modified Certificate Profile \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certprofile.py:322 +msgid "Certificate profiles cannot be renamed" +msgstr "" + +#: ipaserver/plugins/certprofile.py:327 +msgid "Insufficient privilege to modify a certificate profile." msgstr "" #: ipaserver/plugins/dogtag.py:1251 @@ -17447,26 +16510,663 @@ msgstr "" msgid "Response from CA was not valid JSON" msgstr "" -#: ipaserver/plugins/domainlevel.py:69 -#, python-brace-format +#: ipaserver/plugins/permission.py:40 msgid "" -"Domain Level cannot be raised to {0}, existing replication conflicts have to " -"be resolved." +"\n" +"Permissions\n" msgstr "" -#: ipaserver/plugins/domainlevel.py:112 -msgid "Server does not support domain level functionality" +#: ipaserver/plugins/permission.py:42 +msgid "" +"\n" +"A permission enables fine-grained delegation of rights. A permission is\n" +"a human-readable wrapper around a 389-ds Access Control Rule,\n" +"or instruction (ACI).\n" +"A permission grants the right to perform a specific task such as adding a\n" +"user, modifying a group, etc.\n" msgstr "" -#: ipaserver/plugins/domainlevel.py:147 -msgid "Domain Level cannot be lowered." +#: ipaserver/plugins/permission.py:48 +msgid "" +"\n" +"A permission may not contain other permissions.\n" msgstr "" -#: ipaserver/plugins/domainlevel.py:155 -#, python-brace-format -msgid "Domain Level cannot be raised to {0}, server {1} does not support it." +#: ipaserver/plugins/permission.py:50 +msgid "" +"\n" +"* A permission grants access to read, write, add, delete, read, search,\n" +" or compare.\n" +"* A privilege combines similar permissions (for example all the permissions\n" +" needed to add a user).\n" +"* A role grants a set of privileges to users, groups, hosts or hostgroups.\n" msgstr "" +#: ipaserver/plugins/permission.py:56 +msgid "" +"\n" +"A permission is made up of a number of different parts:\n" +"\n" +"1. The name of the permission.\n" +"2. The target of the permission.\n" +"3. The rights granted by the permission.\n" +msgstr "" + +#: ipaserver/plugins/permission.py:62 +msgid "" +"\n" +"Rights define what operations are allowed, and may be one or more\n" +"of the following:\n" +"1. write - write one or more attributes\n" +"2. read - read one or more attributes\n" +"3. search - search on one or more attributes\n" +"4. compare - compare one or more attributes\n" +"5. add - add a new entry to the tree\n" +"6. delete - delete an existing entry\n" +"7. all - all permissions are granted\n" +msgstr "" + +#: ipaserver/plugins/permission.py:72 +msgid "" +"\n" +"Note the distinction between attributes and entries. The permissions are\n" +"independent, so being able to add a user does not mean that the user will\n" +"be editable.\n" +msgstr "" + +#: ipaserver/plugins/permission.py:76 +msgid "" +"\n" +"There are a number of allowed targets:\n" +"1. subtree: a DN; the permission applies to the subtree under this DN\n" +"2. target filter: an LDAP filter\n" +"3. target: DN with possible wildcards, specifies entries permission applies " +"to\n" +msgstr "" + +#: ipaserver/plugins/permission.py:81 +msgid "" +"\n" +"Additionally, there are the following convenience options.\n" +"Setting one of these options will set the corresponding attribute(s).\n" +"1. type: a type of object (user, group, etc); sets subtree and target " +"filter.\n" +"2. memberof: apply to members of a group; sets target filter\n" +"3. targetgroup: grant access to modify a specific group (such as granting\n" +" the rights to manage group membership); sets target.\n" +msgstr "" + +#: ipaserver/plugins/permission.py:88 +msgid "" +"\n" +"Managed permissions\n" +msgstr "" + +#: ipaserver/plugins/permission.py:90 +msgid "" +"\n" +"Permissions that come with IPA by default can be so-called \"managed\"\n" +"permissions. These have a default set of attributes they apply to,\n" +"but the administrator can add/remove individual attributes to/from the set.\n" +msgstr "" + +#: ipaserver/plugins/permission.py:94 +msgid "" +"\n" +"Deleting or renaming a managed permission, as well as changing its target,\n" +"is not allowed.\n" +msgstr "" + +#: ipaserver/plugins/permission.py:99 +msgid "" +"\n" +" Add a permission that grants the creation of users:\n" +" ipa permission-add --type=user --permissions=add \"Add Users\"\n" +msgstr "" + +#: ipaserver/plugins/permission.py:102 +msgid "" +"\n" +" Add a permission that grants the ability to manage group membership:\n" +" ipa permission-add --attrs=member --permissions=write --type=group " +"\"Manage Group Members\"\n" +msgstr "" + +#: ipaserver/plugins/permission.py:129 +msgid "must be enclosed in parentheses" +msgstr "" + +#: ipaserver/plugins/permission.py:149 +#, python-format +msgid "\"%s\" is not an object type" +msgstr "" + +#: ipaserver/plugins/permission.py:151 ipaserver/plugins/permission.py:897 +#, python-format +msgid "\"%s\" is not a valid permission type" +msgstr "" + +#: ipaserver/plugins/permission.py:353 +#, python-format +msgid "Deprecated; use %s" +msgstr "" + +#: ipaserver/plugins/permission.py:370 +#, python-format +msgid "Permission with unknown flag %s may not be modified or removed" +msgstr "" + +#: ipaserver/plugins/permission.py:374 +msgid "A SYSTEM permission may not be modified or removed" +msgstr "" + +#: ipaserver/plugins/permission.py:624 +#, python-format +msgid "Entry %s not found" +msgstr "" + +#: ipaserver/plugins/permission.py:716 +#, python-format +msgid "The ACI for permission %(name)s was not found in %(dn)s " +msgstr "" + +#: ipaserver/plugins/permission.py:820 +msgid "" +"cannot specify full target filter and extra target filter simultaneously" +msgstr "" + +#: ipaserver/plugins/permission.py:843 +#, python-format +msgid "option was renamed; use %s" +msgstr "" + +#: ipaserver/plugins/permission.py:847 +#, python-format +msgid "Cannot use %(old_name)s with %(new_name)s" +msgstr "" + +#: ipaserver/plugins/permission.py:861 ipaserver/plugins/permission.py:876 +#, python-format +msgid "%s: group not found" +msgstr "" + +#: ipaserver/plugins/permission.py:871 +msgid "target and targetgroup are mutually exclusive" +msgstr "" + +#: ipaserver/plugins/permission.py:892 +msgid "subtree and type are mutually exclusive" +msgstr "" + +#: ipaserver/plugins/permission.py:930 +msgid "Bad search filter" +msgstr "" + +#: ipaserver/plugins/permission.py:940 +#, python-format +msgid "Entry %s does not exist" +msgstr "" + +#: ipaserver/plugins/permission.py:949 +msgid "" +"there must be at least one target entry specifier (e.g. target, " +"targetfilter, attrs)" +msgstr "" + +#: ipaserver/plugins/permission.py:961 ipaserver/plugins/permission.py:989 +#, python-format +msgid "Added permission \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/permission.py:1014 +msgid "attrs and included attributes are mutually exclusive" +msgstr "" + +#: ipaserver/plugins/permission.py:1046 +#, python-format +msgid "Cannot store permission ACI to %s" +msgstr "" + +#: ipaserver/plugins/permission.py:1057 +#, python-format +msgid "Deleted permission \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/permission.py:1077 +msgid "cannot delete managed permissions" +msgstr "" + +#: ipaserver/plugins/permission.py:1083 +#, python-format +msgid "ACI of permission %s was not found" +msgstr "" + +#: ipaserver/plugins/permission.py:1092 +#, python-format +msgid "Modified permission \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/permission.py:1125 +msgid "cannot rename managed permissions" +msgstr "" + +#: ipaserver/plugins/permission.py:1132 ipaserver/plugins/permission.py:1136 +msgid "not modifiable on managed permissions" +msgstr "" + +#: ipaserver/plugins/permission.py:1143 +msgid "only available on managed permissions" +msgstr "" + +#: ipaserver/plugins/permission.py:1150 ipaserver/plugins/permission.py:1276 +msgid "attrs and included/excluded attributes are mutually exclusive" +msgstr "" + +#: ipaserver/plugins/permission.py:1161 +msgid "cannot set bindtype for a permission that is assigned to a privilege" +msgstr "" + +#: ipaserver/plugins/permission.py:1265 +#, python-format +msgid "%(count)d permission matched" +msgid_plural "%(count)d permissions matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/pwpolicy.py:92 +msgid "Class of Service object used for linking policies with groups" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:143 +#, python-format +msgid "priority must be a unique value (%(prio)d already used by %(gname)s)" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:171 +msgid "Add Class of Service entry" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:194 +msgid "Delete Class of Service entry" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:200 +msgid "Modify Class of Service entry" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:218 +msgid "Display Class of Service entry" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:224 +msgid "Search for Class of Service entry" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:237 +msgid "password policy" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:238 +msgid "password policies" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:297 +msgid "Password Policies" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:298 ipaserver/plugins/internal.py:1233 +msgid "Password Policy" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:370 +msgid "Max repeat" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:371 +msgid "Maximum number of same consecutive characters" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:379 +msgid "Max sequence" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:380 +msgid "The max. length of monotonic character sequences (abcd)" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:388 +msgid "Dictionary check" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:389 +msgid "Check if the password is a dictionary word" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:395 +msgid "User check" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:396 +msgid "Check if the password contains the username" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:469 +msgid "" +"Minimum length must be >= 6 if maxrepeat, maxsequence, dictcheck or " +"usercheck are defined" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:495 +msgid "Maximum password life must be equal to or greater than the minimum." +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:554 +msgid "cannot delete global password policy" +msgstr "" + +#: ipaserver/plugins/pwpolicy.py:588 +msgid "priority cannot be set on global policy" +msgstr "" + +#: ipaserver/plugins/server.py:36 +msgid "" +"\n" +"IPA servers\n" +msgstr "" + +#: ipaserver/plugins/server.py:38 +msgid "" +"\n" +"Get information about installed IPA servers.\n" +msgstr "" + +#: ipaserver/plugins/server.py:42 +msgid "" +"\n" +" Find all servers:\n" +" ipa server-find\n" +msgstr "" + +#: ipaserver/plugins/server.py:45 +msgid "" +"\n" +" Show specific server:\n" +" ipa server-show ipa.example.com\n" +msgstr "" + +#: ipaserver/plugins/server.py:61 +msgid "server" +msgstr "" + +#: ipaserver/plugins/server.py:62 +msgid "servers" +msgstr "" + +#: ipaserver/plugins/server.py:70 +msgid "IPA Servers" +msgstr "" + +#: ipaserver/plugins/server.py:71 ipaserver/plugins/internal.py:1948 +#: ipaserver/plugins/location.py:157 +msgid "IPA Server" +msgstr "" + +#: ipaserver/plugins/server.py:133 +msgid "Server location" +msgstr "" + +#: ipaserver/plugins/server.py:140 +msgid "Service weight" +msgstr "" + +#: ipaserver/plugins/server.py:141 +msgid "Weight for server services" +msgstr "" + +#: ipaserver/plugins/server.py:148 +msgid "Service relative weight" +msgstr "" + +#: ipaserver/plugins/server.py:149 +msgid "Relative weight for server services (counts per location)" +msgstr "" + +#: ipaserver/plugins/server.py:154 +msgid "Enabled server roles" +msgstr "" + +#: ipaserver/plugins/server.py:155 +msgid "List of enabled roles" +msgstr "" + +#: ipaserver/plugins/server.py:222 +msgid "Modify information about an IPA server." +msgstr "" + +#: ipaserver/plugins/server.py:224 +#, python-format +msgid "Modified IPA server \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/server.py:306 +#, python-format +msgid "%(count)d IPA server matched" +msgid_plural "%(count)d IPA servers matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/server.py:444 +#, python-format +msgid "Deleted IPA server \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/server.py:449 +msgid "Ignore topology errors" +msgstr "" + +#: ipaserver/plugins/server.py:450 +msgid "Ignore topology connectivity problems after removal" +msgstr "" + +#: ipaserver/plugins/server.py:455 +msgid "Ignore check for last remaining CA or DNS server" +msgstr "" + +#: ipaserver/plugins/server.py:456 +msgid "Skip a check whether the last CA master or DNS server is removed" +msgstr "" + +#: ipaserver/plugins/server.py:462 +msgid "Force server removal" +msgstr "" + +#: ipaserver/plugins/server.py:463 +msgid "Force server removal even if it does not exist" +msgstr "" + +#: ipaserver/plugins/server.py:500 +msgid "" +"Replica is active DNSSEC key master. Uninstall could break your DNS system. " +"Please disable or replace DNSSEC key master first." +msgstr "" + +#: ipaserver/plugins/server.py:506 +msgid "Deleting this server will leave your installation without a DNS." +msgstr "" + +#: ipaserver/plugins/server.py:520 +msgid "" +"Deleting this server is not allowed as it would leave your installation " +"without a KRA." +msgstr "" + +#: ipaserver/plugins/server.py:530 +msgid "" +"Deleting this server is not allowed as it would leave your installation " +"without a CA." +msgstr "" + +#: ipaserver/plugins/server.py:545 +msgid "Ignoring these warnings and proceeding with removal" +msgstr "" + +#: ipaserver/plugins/server.py:595 +#, python-format +msgid "" +"Failed to clean memberPrincipal %(principal)s from s4u2proxy entry %(dn)s: " +"%(err)s" +msgstr "" + +#: ipaserver/plugins/server.py:616 +#, python-format +msgid "Failed to clean up DNA hostname entries for %(master)s: %(err)s" +msgstr "" + +#: ipaserver/plugins/server.py:637 +#, python-format +msgid "Failed to remove server %(master)s from server list: %(err)s" +msgstr "" + +#: ipaserver/plugins/server.py:663 +#, python-format +msgid "Failed to clean up Custodia keys for %(master)s: %(err)s" +msgstr "" + +#: ipaserver/plugins/server.py:701 +#, python-format +msgid "Failed to cleanup server principals/keys: %(err)s" +msgstr "" + +#: ipaserver/plugins/server.py:717 +#, python-format +msgid "Failed to cleanup %(hostname)s DNS entries: %(err)s" +msgstr "" + +#: ipaserver/plugins/server.py:722 +msgid "You may need to manually remove them from the tree" +msgstr "" + +#: ipaserver/plugins/server.py:737 +#, python-format +msgid "Forcing removal of %(hostname)s" +msgstr "" + +#: ipaserver/plugins/server.py:747 +msgid "Ignoring topology connectivity errors." +msgstr "" + +#: ipaserver/plugins/server.py:766 +#, python-format +msgid "Failed to remove server from security domain: %s" +msgstr "" + +#: ipaserver/plugins/server.py:793 +msgid "Server has already been deleted" +msgstr "" + +#: ipaserver/plugins/server.py:843 +msgid "Agreements deleted" +msgstr "" + +#: ipaserver/plugins/server.py:854 +msgid "Following segments were not deleted:" +msgstr "" + +#: ipaserver/plugins/server.py:927 ipaserver/plugins/trust.py:1865 +#, python-format +msgid "must be \"%s\"" +msgstr "" + +#: ipaserver/plugins/server.py:939 +msgid "not allowed to perform server connection check" +msgstr "" + +#: ipaserver/plugins/server.py:965 +msgid "Set enabled/hidden state of a server." +msgstr "" + +#: ipaserver/plugins/server.py:971 +msgid "State" +msgstr "" + +#: ipaserver/plugins/server.py:972 +msgid "Server state" +msgstr "" + +#: ipaserver/plugins/server.py:977 +#, python-format +msgid "Changed server state of \"%(value)s\"." +msgstr "" + +#: ipaserver/plugins/server.py:986 +msgid "Cannot hide CA renewal master." +msgstr "" + +#: ipaserver/plugins/server.py:988 +msgid "Cannot hide DNSSec key master." +msgstr "" + +#: ipaserver/plugins/server.py:1000 +#, python-format +msgid "Cannot hide last enabled %(name)s server." +msgstr "" + +#: ipaserver/plugins/sudocmdgroup.py:34 +msgid "" +"\n" +"Groups of Sudo Commands\n" +"\n" +"Manage groups of Sudo Commands.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Add a new Sudo Command Group:\n" +" ipa sudocmdgroup-add --desc='administrators commands' admincmds\n" +"\n" +" Remove a Sudo Command Group:\n" +" ipa sudocmdgroup-del admincmds\n" +"\n" +" Manage Sudo Command Group membership, commands:\n" +" ipa sudocmdgroup-add-member --sudocmds=/usr/bin/less --sudocmds=/usr/bin/" +"vim admincmds\n" +"\n" +" Manage Sudo Command Group membership, commands:\n" +" ipa sudocmdgroup-remove-member --sudocmds=/usr/bin/less admincmds\n" +"\n" +" Show a Sudo Command Group:\n" +" ipa sudocmdgroup-show admincmds\n" +msgstr "" + +#: ipaserver/plugins/sudocmdgroup.py:67 +msgid "sudo command group" +msgstr "" + +#: ipaserver/plugins/sudocmdgroup.py:68 +msgid "sudo command groups" +msgstr "" + +#: ipaserver/plugins/sudocmdgroup.py:149 +#, python-format +msgid "Added Sudo Command Group \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/sudocmdgroup.py:157 +#, python-format +msgid "Deleted Sudo Command Group \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/sudocmdgroup.py:165 +#, python-format +msgid "Modified Sudo Command Group \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/sudocmdgroup.py:174 +#, python-format +msgid "%(count)d Sudo Command Group matched" +msgid_plural "%(count)d Sudo Command Groups matched" +msgstr[0] "" +msgstr[1] "" + #: ipaserver/plugins/group.py:62 msgid "" "\n" @@ -17661,10 +17361,148 @@ msgstr "" msgid "Remove users that can manage members of this group." msgstr "" -#: ipaserver/plugins/hbac.py:7 -msgid "Host-based access control commands" +#: ipaserver/plugins/whoami.py:15 +msgid "" +"\n" +"Return information about currently authenticated identity\n" +"\n" +"Who am I command returns information on how to get\n" +"more details about the identity authenticated for this\n" +"request. The information includes:\n" +"\n" +" * type of object\n" +" * command to retrieve details of the object\n" +" * arguments and options to pass to the command\n" +"\n" +"The information is returned as a dictionary. Examples below use\n" +"'key: value' output for illustrative purposes.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Look up as IPA user:\n" +" kinit admin\n" +" ipa console\n" +" >> api.Command.whoami()\n" +" ------------------------------------------\n" +" object: user\n" +" command: user_show/1\n" +" arguments: admin\n" +" ------------------------------------------\n" +"\n" +" Look up as a user from a trusted domain:\n" +" kinit user@AD.DOMAIN\n" +" ipa console\n" +" >> api.Command.whoami()\n" +" ------------------------------------------\n" +" object: idoverrideuser\n" +" command: idoverrideuser_show/1\n" +" arguments: ('default trust view', 'user@ad.domain')\n" +" ------------------------------------------\n" +"\n" +" Look up as a host:\n" +" kinit -k\n" +" ipa console\n" +" >> api.Command.whoami()\n" +" ------------------------------------------\n" +" object: host\n" +" command: host_show/1\n" +" arguments: ipa.example.com\n" +" ------------------------------------------\n" +"\n" +" Look up as a Kerberos service:\n" +" kinit -k -t /path/to/keytab HTTP/ipa.example.com\n" +" ipa console\n" +" >> api.Command.whoami()\n" +" ------------------------------------------\n" +" object: service\n" +" command: service_show/1\n" +" arguments: HTTP/ipa.example.com\n" +" ------------------------------------------\n" msgstr "" +#: ipaserver/plugins/whoami.py:77 +msgid "Describe currently authenticated identity." +msgstr "" + +#: ipaserver/plugins/whoami.py:82 ipaserver/plugins/whoami.py:88 +msgid "Object class name" +msgstr "" + +#: ipaserver/plugins/whoami.py:83 ipaserver/plugins/whoami.py:89 +msgid "Function to get details" +msgstr "" + +#: ipaserver/plugins/whoami.py:84 ipaserver/plugins/whoami.py:91 +msgid "Arguments to details function" +msgstr "" + +#: ipaserver/plugins/whoami.py:111 +msgid "Cannot query Directory Manager with API" +msgstr "" + +#: ipaserver/plugins/privilege.py:76 +#, python-format +msgid "" +"cannot add permission \"%(perm)s\" with bindtype \"%(bindtype)s\" to a " +"privilege" +msgstr "" + +#: ipaserver/plugins/privilege.py:149 +msgid "Privilege" +msgstr "" + +#: ipaserver/plugins/privilege.py:169 +#, python-format +msgid "Added privilege \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/privilege.py:176 +#, python-format +msgid "Deleted privilege \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/privilege.py:183 +#, python-format +msgid "Modified privilege \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/privilege.py:191 +#, python-format +msgid "%(count)d privilege matched" +msgid_plural "%(count)d privileges matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/role.py:82 ipaserver/plugins/serverrole.py:186 +msgid "roles" +msgstr "" + +#: ipaserver/plugins/role.py:143 +msgid "Role" +msgstr "" + +#: ipaserver/plugins/role.py:164 +#, python-format +msgid "Added role \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/role.py:172 +#, python-format +msgid "Deleted role \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/role.py:180 +#, python-format +msgid "Modified role \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/role.py:189 +#, python-format +msgid "%(count)d role matched" +msgid_plural "%(count)d roles matched" +msgstr[0] "" +msgstr[1] "" + #: ipaserver/plugins/hbacrule.py:108 msgid "The deny type has been deprecated." msgstr "" @@ -17681,10 +17519,6 @@ msgstr "" msgid "HBAC Services" msgstr "" -#: ipaserver/plugins/hbacrule.py:290 ipaserver/plugins/hbacsvcgroup.py:108 -msgid "HBAC Service Groups" -msgstr "" - #: ipaserver/plugins/hbacrule.py:302 #, python-format msgid "Added HBAC rule \"%(value)s\"" @@ -17700,6 +17534,21 @@ msgstr "" msgid "Modified HBAC rule \"%(value)s\"" msgstr "" +#: ipaserver/plugins/hbacrule.py:345 ipaserver/plugins/caacl.py:294 +#: ipaserver/plugins/netgroup.py:321 +msgid "user category cannot be set to 'all' while there are allowed users" +msgstr "" + +#: ipaserver/plugins/hbacrule.py:350 ipaserver/plugins/caacl.py:298 +#: ipaserver/plugins/netgroup.py:326 +msgid "host category cannot be set to 'all' while there are allowed hosts" +msgstr "" + +#: ipaserver/plugins/hbacrule.py:356 ipaserver/plugins/caacl.py:302 +msgid "" +"service category cannot be set to 'all' while there are allowed services" +msgstr "" + #: ipaserver/plugins/hbacrule.py:368 #, python-format msgid "%(count)d HBAC rule matched" @@ -17721,613 +17570,206 @@ msgstr "" msgid "Access time" msgstr "" +#: ipaserver/plugins/hbacrule.py:518 ipaserver/plugins/caacl.py:397 +#: ipaserver/plugins/selinuxusermap.py:572 ipaserver/plugins/sudorule.py:607 +msgid "users cannot be added when user category='all'" +msgstr "" + +#: ipaserver/plugins/hbacrule.py:549 ipaserver/plugins/caacl.py:429 +#: ipaserver/plugins/selinuxusermap.py:605 ipaserver/plugins/sudorule.py:710 +msgid "hosts cannot be added when host category='all'" +msgstr "" + #: ipaserver/plugins/hbacrule.py:565 msgid "Add source hosts and hostgroups to an HBAC rule." msgstr "" -#: ipaserver/plugins/hbacsvc.py:28 -msgid "" -"\n" -"HBAC Services\n" -"\n" -"The PAM services that HBAC can control access to. The name used here\n" -"must match the service name that PAM is evaluating.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a new HBAC service:\n" -" ipa hbacsvc-add tftp\n" -"\n" -" Modify an existing HBAC service:\n" -" ipa hbacsvc-mod --desc=\"TFTP service\" tftp\n" -"\n" -" Search for HBAC services. This example will return two results, the FTP\n" -" service and the newly-added tftp service:\n" -" ipa hbacsvc-find ftp\n" -"\n" -" Delete an HBAC service:\n" -" ipa hbacsvc-del tftp\n" -"\n" +#: ipaserver/plugins/hbacrule.py:606 ipaserver/plugins/caacl.py:459 +msgid "services cannot be added when service category='all'" msgstr "" -#: ipaserver/plugins/hbacsvc.py:62 -msgid "HBAC services" +#: ipaserver/plugins/user.py:164 ipaserver/plugins/sudorule.py:442 +msgid "users" msgstr "" -#: ipaserver/plugins/hbacsvc.py:96 -msgid "HBAC Service" -msgstr "" - -#: ipaserver/plugins/hbacsvc.py:119 +#: ipaserver/plugins/user.py:496 #, python-format -msgid "Added HBAC service \"%(value)s\"" +msgid "Added user \"%(value)s\"" msgstr "" -#: ipaserver/plugins/hbacsvc.py:127 +#: ipaserver/plugins/user.py:562 ipaserver/plugins/host.py:692 +#: ipaserver/plugins/stageuser.py:329 ipaserver/plugins/stageuser.py:533 +#: ipaserver/plugins/baseuser.py:574 #, python-format -msgid "Deleted HBAC service \"%(value)s\"" +msgid "can be at most %(len)d characters" msgstr "" -#: ipaserver/plugins/hbacsvc.py:135 -#, python-format -msgid "Modified HBAC service \"%(value)s\"" +#: ipaserver/plugins/user.py:592 ipaserver/plugins/migration.py:804 +msgid "Default group for new users not found" msgstr "" -#: ipaserver/plugins/hbacsvc.py:144 +#: ipaserver/plugins/user.py:595 +msgid "Default group for new users is not POSIX" +msgstr "" + +#: ipaserver/plugins/user.py:695 #, python-format -msgid "%(count)d HBAC service matched" -msgid_plural "%(count)d HBAC services matched" +msgid "Deleted user \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/user.py:713 +#, python-format +msgid "%s: user is already preserved" +msgstr "" + +#: ipaserver/plugins/user.py:835 +#, python-format +msgid "Modified user \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/user.py:871 ipaserver/plugins/stageuser.py:471 +#, python-format +msgid "%(count)d user matched" +msgid_plural "%(count)d users matched" msgstr[0] "" msgstr[1] "" -#: ipaserver/plugins/hbacsvcgroup.py:64 -msgid "HBAC service group" -msgstr "" - -#: ipaserver/plugins/hbacsvcgroup.py:65 -msgid "HBAC service groups" -msgstr "" - -#: ipaserver/plugins/hbacsvcgroup.py:109 -msgid "HBAC Service Group" -msgstr "" - -#: ipaserver/plugins/hbacsvcgroup.py:131 +#: ipaserver/plugins/user.py:949 #, python-format -msgid "Added HBAC service group \"%(value)s\"" +msgid "Undeleted user account \"%(value)s\"" msgstr "" -#: ipaserver/plugins/hbacsvcgroup.py:139 +#: ipaserver/plugins/user.py:963 #, python-format -msgid "Deleted HBAC service group \"%(value)s\"" +msgid "user \"%s\" is already active" msgstr "" -#: ipaserver/plugins/hbacsvcgroup.py:147 +#: ipaserver/plugins/user.py:994 #, python-format -msgid "Modified HBAC service group \"%(value)s\"" +msgid "Staged user account \"%(value)s\"" msgstr "" -#: ipaserver/plugins/hbacsvcgroup.py:156 +#: ipaserver/plugins/user.py:1089 #, python-format -msgid "%(count)d HBAC service group matched" -msgid_plural "%(count)d HBAC service groups matched" -msgstr[0] "" -msgstr[1] "" +msgid "Disabled user account \"%(value)s\"" +msgstr "" -#: ipaserver/plugins/hbactest.py:45 +#: ipaserver/plugins/user.py:1111 +#, python-format +msgid "Enabled user account \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/user.py:1128 msgid "" "\n" -"Simulate use of Host-based access controls\n" +" Unlock a user account\n" "\n" -"HBAC rules control who can access what services on what hosts.\n" -"You can use HBAC to control which users or groups can access a service,\n" -"or group of services, on a target host.\n" -"\n" -"Since applying HBAC rules implies use of a production environment,\n" -"this plugin aims to provide simulation of HBAC rules evaluation without\n" -"having access to the production environment.\n" -"\n" -" Test user coming to a service on a named host against\n" -" existing enabled rules.\n" -"\n" -" ipa hbactest --user= --host= --service=\n" -" [--rules=rules-list] [--nodetail] [--enabled] [--disabled]\n" -" [--sizelimit= ]\n" -"\n" -" --user, --host, and --service are mandatory, others are optional.\n" -"\n" -" If --rules is specified simulate enabling of the specified rules and test\n" -" the login of the user using only these rules.\n" -"\n" -" If --enabled is specified, all enabled HBAC rules will be added to " -"simulation\n" -"\n" -" If --disabled is specified, all disabled HBAC rules will be added to " -"simulation\n" -"\n" -" If --nodetail is specified, do not return information about rules matched/" -"not matched.\n" -"\n" -" If both --rules and --enabled are specified, apply simulation to --rules " -"_and_\n" -" all IPA enabled rules.\n" -"\n" -" If no --rules specified, simulation is run against all IPA enabled rules.\n" -" By default there is a IPA-wide limit to number of entries fetched, you can " -"change it\n" -" with --sizelimit option.\n" -"\n" -"EXAMPLES:\n" -"\n" -" 1. Use all enabled HBAC rules in IPA database to simulate:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: my-third-rule\n" -" Not matched rules: myrule\n" -" Matched rules: allow_all\n" -"\n" -" 2. Disable detailed summary of how rules were applied:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd --nodetail\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -"\n" -" 3. Test explicitly specified HBAC rules:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\\\n" -" --rules=myrule --rules=my-second-rule\n" -" ---------------------\n" -" Access granted: False\n" -" ---------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: myrule\n" -"\n" -" 4. Use all enabled HBAC rules in IPA database + explicitly specified " -"rules:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\\\n" -" --rules=myrule --rules=my-second-rule --enabled\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: my-third-rule\n" -" Not matched rules: myrule\n" -" Matched rules: allow_all\n" -"\n" -" 5. Test all disabled HBAC rules in IPA database:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd --disabled\n" -" ---------------------\n" -" Access granted: False\n" -" ---------------------\n" -" Not matched rules: new-rule\n" -"\n" -" 6. Test all disabled HBAC rules in IPA database + explicitly specified " -"rules:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\\\n" -" --rules=myrule --rules=my-second-rule --disabled\n" -" ---------------------\n" -" Access granted: False\n" -" ---------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: my-third-rule\n" -" Not matched rules: myrule\n" -"\n" -" 7. Test all (enabled and disabled) HBAC rules in IPA database:\n" -" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\\\n" -" --enabled --disabled\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Not matched rules: my-second-rule\n" -" Not matched rules: my-third-rule\n" -" Not matched rules: myrule\n" -" Not matched rules: new-rule\n" -" Matched rules: allow_all\n" -"\n" -"\n" -"HBACTEST AND TRUSTED DOMAINS\n" -"\n" -"When an external trusted domain is configured in IPA, HBAC rules are also " -"applied\n" -"on users accessing IPA resources from the trusted domain. Trusted domain " -"users and\n" -"groups (and their SIDs) can be then assigned to external groups which can " -"be\n" -"members of POSIX groups in IPA which can be used in HBAC rules and thus " -"allowing\n" -"access to resources protected by the HBAC system.\n" -"\n" -"hbactest plugin is capable of testing access for both local IPA users and " -"users\n" -"from the trusted domains, either by a fully qualified user name or by user " -"SID.\n" -"Such user names need to have a trusted domain specified as a short name\n" -"(DOMAIN\\Administrator) or with a user principal name (UPN), " -"Administrator@ad.test.\n" -"\n" -"Please note that hbactest executed with a trusted domain user as --user " -"parameter\n" -"can be only run by members of \"trust admins\" group.\n" -"\n" -"EXAMPLES:\n" -"\n" -" 1. Test if a user from a trusted domain specified by its shortname " -"matches any\n" -" rule:\n" -"\n" -" $ ipa hbactest --user 'DOMAIN\\Administrator' --host `hostname` --" -"service sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Matched rules: can_login\n" -"\n" -" 2. Test if a user from a trusted domain specified by its domain name " -"matches\n" -" any rule:\n" -"\n" -" $ ipa hbactest --user 'Administrator@domain.com' --host `hostname` --" -"service sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Matched rules: can_login\n" -"\n" -" 3. Test if a user from a trusted domain specified by its SID matches any " -"rule:\n" -"\n" -" $ ipa hbactest --user S-1-5-21-3035198329-144811719-1378114514-500 \\\\\n" -" --host `hostname` --service sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Matched rules: can_login\n" -"\n" -" 4. Test if other user from a trusted domain specified by its SID matches " -"any rule:\n" -"\n" -" $ ipa hbactest --user S-1-5-21-3035198329-144811719-1378114514-1203 \\" -"\\\n" -" --host `hostname` --service sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Not matched rules: can_login\n" -"\n" -" 5. Test if other user from a trusted domain specified by its shortname " -"matches\n" -" any rule:\n" -"\n" -" $ ipa hbactest --user 'DOMAIN\\Otheruser' --host `hostname` --service " -"sshd\n" -" --------------------\n" -" Access granted: True\n" -" --------------------\n" -" Matched rules: allow_all\n" -" Not matched rules: can_login\n" +" An account may become locked if the password is entered incorrectly too\n" +" many times within a specific time period as controlled by password\n" +" policy. A locked account is a temporary condition and may be unlocked " +"by\n" +" an administrator." msgstr "" -#: ipaserver/plugins/hbactest.py:384 -msgid "Unresolved rules in --rules" -msgstr "" - -#: ipaserver/plugins/hbactest.py:408 ipaserver/plugins/trust.py:345 -msgid "" -"Cannot search in trusted domains without own domain configured. Make sure " -"you have run ipa-adtrust-install on the IPA server first" -msgstr "" - -#: ipaserver/plugins/hbactest.py:497 +#: ipaserver/plugins/user.py:1137 #, python-format -msgid "Access granted: %s" +msgid "Unlocked account \"%(value)s\"" msgstr "" -#: ipaserver/plugins/host.py:74 +#: ipaserver/plugins/user.py:1169 +msgid "Failed logins" +msgstr "" + +#: ipaserver/plugins/user.py:1173 +msgid "Last successful authentication" +msgstr "" + +#: ipaserver/plugins/user.py:1177 +msgid "Last failed authentication" +msgstr "" + +#: ipaserver/plugins/user.py:1181 +msgid "Time now" +msgstr "" + +#: ipaserver/plugins/user.py:1189 msgid "" "\n" -"Hosts/Machines\n" +" Lockout status of a user account\n" "\n" -"A host represents a machine. It can be used in a number of contexts:\n" -"- service entries are associated with a host\n" -"- a host stores the host/ service principal\n" -"- a host can be used in Host-based Access Control (HBAC) rules\n" -"- every enrolled client generates a host entry\n" -msgstr "" - -#: ipaserver/plugins/host.py:82 -msgid "" +" An account may become locked if the password is entered incorrectly too\n" +" many times within a specific time period as controlled by password\n" +" policy. A locked account is a temporary condition and may be unlocked " +"by\n" +" an administrator.\n" "\n" -"ENROLLMENT:\n" +" This connects to each IPA master and displays the lockout status on\n" +" each one.\n" "\n" -"There are three enrollment scenarios when enrolling a new client:\n" +" To determine whether an account is locked on a given server you need\n" +" to compare the number of failed logins and the time of the last " +"failure.\n" +" For an account to be locked it must exceed the maxfail failures within\n" +" the failinterval duration as specified in the password policy " +"associated\n" +" with the user.\n" "\n" -"1. You are enrolling as a full administrator. The host entry may exist\n" -" or not. A full administrator is a member of the hostadmin role\n" -" or the admins group.\n" -"2. You are enrolling as a limited administrator. The host must already\n" -" exist. A limited administrator is a member a role with the\n" -" Host Enrollment privilege.\n" -"3. The host has been created with a one-time password.\n" +" The failed login counter is modified only when a user attempts a log in\n" +" so it is possible that an account may appear locked but the last failed\n" +" login attempt is older than the lockouttime of the password policy. " +"This\n" +" means that the user may attempt a login again. " msgstr "" -#: ipaserver/plugins/host.py:94 -msgid "" -"\n" -"RE-ENROLLMENT:\n" -"\n" -"Host that has been enrolled at some point, and lost its configuration (e.g. " -"VM\n" -"destroyed) can be re-enrolled.\n" -"\n" -"For more information, consult the manual pages for ipa-client-install.\n" -"\n" -"A host can optionally store information such as where it is located,\n" -"the OS that it runs, etc.\n" -msgstr "" - -#: ipaserver/plugins/host.py:106 -msgid "" -"\n" -" Add a new host:\n" -" ipa host-add --location=\"3rd floor lab\" --locality=Dallas test.example." -"com\n" -msgstr "" - -#: ipaserver/plugins/host.py:109 -msgid "" -"\n" -" Delete a host:\n" -" ipa host-del test.example.com\n" -msgstr "" - -#: ipaserver/plugins/host.py:112 -msgid "" -"\n" -" Add a new host with a one-time password:\n" -" ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n" -msgstr "" - -#: ipaserver/plugins/host.py:115 -msgid "" -"\n" -" Add a new host with a random one-time password:\n" -" ipa host-add --os='Fedora 12' --random test.example.com\n" -msgstr "" - -#: ipaserver/plugins/host.py:118 -msgid "" -"\n" -" Modify information about a host:\n" -" ipa host-mod --os='Fedora 12' test.example.com\n" -msgstr "" - -#: ipaserver/plugins/host.py:121 -msgid "" -"\n" -" Remove SSH public keys of a host and update DNS to reflect this change:\n" -" ipa host-mod --sshpubkey= --updatedns test.example.com\n" -msgstr "" - -#: ipaserver/plugins/host.py:124 -msgid "" -"\n" -" Disable the host Kerberos key, SSL certificate and all of its services:\n" -" ipa host-disable test.example.com\n" -msgstr "" - -#: ipaserver/plugins/host.py:127 -msgid "" -"\n" -" Add a host that can manage this host's keytab and certificate:\n" -" ipa host-add-managedby --hosts=test2 test\n" -msgstr "" - -#: ipaserver/plugins/host.py:130 -msgid "" -"\n" -" Allow user to create a keytab:\n" -" ipa host-allow-create-keytab test2 --users=tuser1\n" -msgstr "" - -#: ipaserver/plugins/host.py:462 ipaserver/plugins/internal.py:1161 -#: ipaserver/plugins/internal.py:1283 -msgid "Host" -msgstr "" - -#: ipaserver/plugins/host.py:514 -msgid "Base-64 encoded host certificate" -msgstr "" - -#: ipaserver/plugins/host.py:521 ipaserver/plugins/internal.py:696 -#: ipaserver/plugins/service.py:528 -msgid "Serial Number" -msgstr "" - -#: ipaserver/plugins/host.py:525 ipaserver/plugins/internal.py:697 -#: ipaserver/plugins/service.py:532 -msgid "Serial Number (hex)" -msgstr "" - -#: ipaserver/plugins/host.py:597 ipaserver/plugins/service.py:570 -msgid "Authentication Indicators" -msgstr "" - -#: ipaserver/plugins/host.py:598 ipaserver/plugins/service.py:571 -msgid "" -"Defines an allow list for Authentication Indicators. Use 'otp' to allow OTP-" -"based 2FA authentications. Use 'radius' to allow RADIUS-based 2FA " -"authentications. Use 'pkinit' to allow PKINIT-based 2FA authentications. Use " -"'hardened' to allow brute-force hardened password authentication by SPAKE or " -"FAST. With no indicator specified, all authentication mechanisms are allowed." -msgstr "" - -#: ipaserver/plugins/host.py:668 +#: ipaserver/plugins/user.py:1243 #, python-format -msgid "Added host \"%(value)s\"" +msgid "%(host)s failed: %(error)s" msgstr "" -#: ipaserver/plugins/host.py:792 +#: ipaserver/plugins/user.py:1281 #, python-format -msgid "Deleted host \"%(value)s\"" +msgid "%(host)s failed" msgstr "" -#: ipaserver/plugins/host.py:797 -msgid "Remove A, AAAA, SSHFP and PTR records of the host(s) managed by IPA DNS" -msgstr "" - -#: ipaserver/plugins/host.py:869 -msgid "No A, AAAA, SSHFP or PTR records found." -msgstr "" - -#: ipaserver/plugins/host.py:885 +#: ipaserver/plugins/user.py:1291 #, python-format -msgid "Modified host \"%(value)s\"" +msgid "Account disabled: %(disabled)s" msgstr "" -#: ipaserver/plugins/host.py:906 -msgid "Password cannot be set on enrolled host." -msgstr "" - -#: ipaserver/plugins/host.py:910 -msgid "cn is immutable" -msgstr "" - -#: ipaserver/plugins/host.py:1035 +#: ipaserver/plugins/user.py:1299 #, python-format -msgid "%(count)d host matched" -msgid_plural "%(count)d hosts matched" -msgstr[0] "" -msgstr[1] "" +msgid "Added certificates to user \"%(value)s\"" +msgstr "" -#: ipaserver/plugins/host.py:1190 +#: ipaserver/plugins/user.py:1305 #, python-format -msgid "Disabled host \"%(value)s\"" +msgid "Removed certificates from user \"%(value)s\"" msgstr "" -#: ipaserver/plugins/host.py:1359 +#: ipaserver/plugins/user.py:1310 ipaserver/plugins/baseuser.py:952 +msgid "Add one or more certificate mappings to the user entry." +msgstr "" + +#: ipaserver/plugins/user.py:1315 ipaserver/plugins/baseuser.py:971 +msgid "Remove one or more certificate mappings from the user entry." +msgstr "" + +#: ipaserver/plugins/user.py:1330 +msgid "Add new principal alias to the user entry" +msgstr "" + +#: ipaserver/plugins/user.py:1331 #, python-format -msgid "Added certificates to host \"%(value)s\"" +msgid "Added new aliases to user \"%(value)s\"" msgstr "" -#: ipaserver/plugins/host.py:1366 +#: ipaserver/plugins/user.py:1336 +msgid "Remove principal alias from the user entry" +msgstr "" + +#: ipaserver/plugins/user.py:1337 #, python-format -msgid "Removed certificates from host \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/host.py:1382 -msgid "Add new principal alias to host entry" -msgstr "" - -#: ipaserver/plugins/host.py:1383 -#, python-format -msgid "Added new aliases to host \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/host.py:1394 -msgid "Remove principal alias from a host entry" -msgstr "" - -#: ipaserver/plugins/host.py:1395 -#, python-format -msgid "Removed aliases from host \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:35 -msgid "" -"\n" -"Groups of hosts.\n" -"\n" -"Manage groups of hosts. This is useful for applying access control to a\n" -"number of hosts by using Host-based Access Control.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a new host group:\n" -" ipa hostgroup-add --desc=\"Baltimore hosts\" baltimore\n" -"\n" -" Add another new host group:\n" -" ipa hostgroup-add --desc=\"Maryland hosts\" maryland\n" -"\n" -" Add members to the hostgroup (using Bash brace expansion):\n" -" ipa hostgroup-add-member --hosts={box1,box2,box3} baltimore\n" -"\n" -" Add a hostgroup as a member of another hostgroup:\n" -" ipa hostgroup-add-member --hostgroups=baltimore maryland\n" -"\n" -" Remove a host from the hostgroup:\n" -" ipa hostgroup-remove-member --hosts=box2 baltimore\n" -"\n" -" Display a host group:\n" -" ipa hostgroup-show baltimore\n" -"\n" -" Add a member manager:\n" -" ipa hostgroup-add-member-manager --users=user1 baltimore\n" -"\n" -" Remove a member manager\n" -" ipa hostgroup-remove-member-manager --users=user1 baltimore\n" -"\n" -" Delete a hostgroup:\n" -" ipa hostgroup-del baltimore\n" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:107 -msgid "host groups" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:179 -msgid "Host Group" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:223 -#, python-format -msgid "Added hostgroup \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:239 -#, python-format -msgid "" -"netgroup with name \"%s\" already exists. Hostgroups and netgroups share a " -"common namespace" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:262 -#, python-format -msgid "Deleted hostgroup \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:266 ipaserver/plugins/hostgroup.py:284 -#: ipaserver/plugins/hostgroup.py:349 -msgid "hostgroup" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:268 ipaserver/plugins/hostgroup.py:286 -msgid "privileged hostgroup" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:278 -#, python-format -msgid "Modified hostgroup \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/hostgroup.py:303 -#, python-format -msgid "%(count)d hostgroup matched" -msgid_plural "%(count)d hostgroups matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/hostgroup.py:362 -msgid "Add users that can manage members of this hostgroup." -msgstr "" - -#: ipaserver/plugins/hostgroup.py:372 -msgid "Remove users that can manage members of this hostgroup." +msgid "Removed aliases from user \"%(value)s\"" msgstr "" #: ipaserver/plugins/idrange.py:43 @@ -18671,248 +18113,1092 @@ msgstr "" msgid "Options dom-sid and rid-base must be used together" msgstr "" -#: ipaserver/plugins/idviews.py:72 ipaserver/plugins/idviews.py:123 -#: ipaserver/plugins/idviews.py:131 ipaserver/plugins/idviews.py:351 -#: ipaserver/plugins/idviews.py:838 -msgid "ID View" -msgstr "" - -#: ipaserver/plugins/idviews.py:74 -msgid "system ID View" -msgstr "" - -#: ipaserver/plugins/idviews.py:124 ipaserver/plugins/idviews.py:130 -msgid "ID Views" -msgstr "" - -#: ipaserver/plugins/idviews.py:145 -msgid "User object overrides" -msgstr "" - -#: ipaserver/plugins/idviews.py:149 -msgid "Group object overrides" -msgstr "" - -#: ipaserver/plugins/idviews.py:153 -msgid "Hosts the view applies to" -msgstr "" - -#: ipaserver/plugins/idviews.py:196 -#, python-format -msgid "Added ID View \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/idviews.py:213 -#, python-format -msgid "Deleted ID View \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/idviews.py:226 -#, python-format -msgid "Modified an ID View \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/idviews.py:242 -#, python-format -msgid "%(count)d ID View matched" -msgid_plural "%(count)d ID Views matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/idviews.py:352 -msgid "Default Trust View cannot be applied on hosts" -msgstr "" - -#: ipaserver/plugins/idviews.py:380 ipaserver/plugins/idviews.py:413 -msgid "not found" -msgstr "" - -#: ipaserver/plugins/idviews.py:394 -msgid "ID View cannot be applied to IPA master" -msgstr "" - -#: ipaserver/plugins/idviews.py:411 -msgid "ID View already applied" -msgstr "" - -#: ipaserver/plugins/idviews.py:431 -msgid "value" -msgstr "" - -#: ipaserver/plugins/idviews.py:444 -#, python-format -msgid "ID View applied to %i host." -msgstr "" - -#: ipaserver/plugins/idviews.py:445 -#, python-format -msgid "ID View applied to %i hosts." -msgstr "" - -#: ipaserver/plugins/idviews.py:487 -#, python-format -msgid "ID View cleared from %i host." -msgstr "" - -#: ipaserver/plugins/idviews.py:488 -#, python-format -msgid "ID View cleared from %i hosts." -msgstr "" - -#: ipaserver/plugins/idviews.py:556 +#: ipaserver/plugins/domainlevel.py:69 +#, python-brace-format msgid "" -"You are trying to reference a magic private group which is not allowed to be " -"overridden. Try overriding the GID attribute of the corresponding user " -"instead." +"Domain Level cannot be raised to {0}, existing replication conflicts have to " +"be resolved." msgstr "" -#: ipaserver/plugins/idviews.py:594 -msgid "IPA object" +#: ipaserver/plugins/domainlevel.py:112 +msgid "Server does not support domain level functionality" msgstr "" -#: ipaserver/plugins/idviews.py:595 +#: ipaserver/plugins/domainlevel.py:147 +msgid "Domain Level cannot be lowered." +msgstr "" + +#: ipaserver/plugins/domainlevel.py:155 +#, python-brace-format +msgid "Domain Level cannot be raised to {0}, server {1} does not support it." +msgstr "" + +#: ipaserver/plugins/hbactest.py:45 msgid "" -"system IPA objects (e.g. system groups, user private groups) cannot be " -"overridden" +"\n" +"Simulate use of Host-based access controls\n" +"\n" +"HBAC rules control who can access what services on what hosts.\n" +"You can use HBAC to control which users or groups can access a service,\n" +"or group of services, on a target host.\n" +"\n" +"Since applying HBAC rules implies use of a production environment,\n" +"this plugin aims to provide simulation of HBAC rules evaluation without\n" +"having access to the production environment.\n" +"\n" +" Test user coming to a service on a named host against\n" +" existing enabled rules.\n" +"\n" +" ipa hbactest --user= --host= --service=\n" +" [--rules=rules-list] [--nodetail] [--enabled] [--disabled]\n" +" [--sizelimit= ]\n" +"\n" +" --user, --host, and --service are mandatory, others are optional.\n" +"\n" +" If --rules is specified simulate enabling of the specified rules and test\n" +" the login of the user using only these rules.\n" +"\n" +" If --enabled is specified, all enabled HBAC rules will be added to " +"simulation\n" +"\n" +" If --disabled is specified, all disabled HBAC rules will be added to " +"simulation\n" +"\n" +" If --nodetail is specified, do not return information about rules matched/" +"not matched.\n" +"\n" +" If both --rules and --enabled are specified, apply simulation to --rules " +"_and_\n" +" all IPA enabled rules.\n" +"\n" +" If no --rules specified, simulation is run against all IPA enabled rules.\n" +" By default there is a IPA-wide limit to number of entries fetched, you can " +"change it\n" +" with --sizelimit option.\n" +"\n" +"EXAMPLES:\n" +"\n" +" 1. Use all enabled HBAC rules in IPA database to simulate:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: my-third-rule\n" +" Not matched rules: myrule\n" +" Matched rules: allow_all\n" +"\n" +" 2. Disable detailed summary of how rules were applied:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd --nodetail\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +"\n" +" 3. Test explicitly specified HBAC rules:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\\\n" +" --rules=myrule --rules=my-second-rule\n" +" ---------------------\n" +" Access granted: False\n" +" ---------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: myrule\n" +"\n" +" 4. Use all enabled HBAC rules in IPA database + explicitly specified " +"rules:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\\\n" +" --rules=myrule --rules=my-second-rule --enabled\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: my-third-rule\n" +" Not matched rules: myrule\n" +" Matched rules: allow_all\n" +"\n" +" 5. Test all disabled HBAC rules in IPA database:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd --disabled\n" +" ---------------------\n" +" Access granted: False\n" +" ---------------------\n" +" Not matched rules: new-rule\n" +"\n" +" 6. Test all disabled HBAC rules in IPA database + explicitly specified " +"rules:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\\\n" +" --rules=myrule --rules=my-second-rule --disabled\n" +" ---------------------\n" +" Access granted: False\n" +" ---------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: my-third-rule\n" +" Not matched rules: myrule\n" +"\n" +" 7. Test all (enabled and disabled) HBAC rules in IPA database:\n" +" $ ipa hbactest --user=a1a --host=bar --service=sshd \\\\\n" +" --enabled --disabled\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Not matched rules: my-second-rule\n" +" Not matched rules: my-third-rule\n" +" Not matched rules: myrule\n" +" Not matched rules: new-rule\n" +" Matched rules: allow_all\n" +"\n" +"\n" +"HBACTEST AND TRUSTED DOMAINS\n" +"\n" +"When an external trusted domain is configured in IPA, HBAC rules are also " +"applied\n" +"on users accessing IPA resources from the trusted domain. Trusted domain " +"users and\n" +"groups (and their SIDs) can be then assigned to external groups which can " +"be\n" +"members of POSIX groups in IPA which can be used in HBAC rules and thus " +"allowing\n" +"access to resources protected by the HBAC system.\n" +"\n" +"hbactest plugin is capable of testing access for both local IPA users and " +"users\n" +"from the trusted domains, either by a fully qualified user name or by user " +"SID.\n" +"Such user names need to have a trusted domain specified as a short name\n" +"(DOMAIN\\Administrator) or with a user principal name (UPN), " +"Administrator@ad.test.\n" +"\n" +"Please note that hbactest executed with a trusted domain user as --user " +"parameter\n" +"can be only run by members of \"trust admins\" group.\n" +"\n" +"EXAMPLES:\n" +"\n" +" 1. Test if a user from a trusted domain specified by its shortname " +"matches any\n" +" rule:\n" +"\n" +" $ ipa hbactest --user 'DOMAIN\\Administrator' --host `hostname` --" +"service sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Matched rules: can_login\n" +"\n" +" 2. Test if a user from a trusted domain specified by its domain name " +"matches\n" +" any rule:\n" +"\n" +" $ ipa hbactest --user 'Administrator@domain.com' --host `hostname` --" +"service sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Matched rules: can_login\n" +"\n" +" 3. Test if a user from a trusted domain specified by its SID matches any " +"rule:\n" +"\n" +" $ ipa hbactest --user S-1-5-21-3035198329-144811719-1378114514-500 \\\\\n" +" --host `hostname` --service sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Matched rules: can_login\n" +"\n" +" 4. Test if other user from a trusted domain specified by its SID matches " +"any rule:\n" +"\n" +" $ ipa hbactest --user S-1-5-21-3035198329-144811719-1378114514-1203 \\" +"\\\n" +" --host `hostname` --service sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Not matched rules: can_login\n" +"\n" +" 5. Test if other user from a trusted domain specified by its shortname " +"matches\n" +" any rule:\n" +"\n" +" $ ipa hbactest --user 'DOMAIN\\Otheruser' --host `hostname` --service " +"sshd\n" +" --------------------\n" +" Access granted: True\n" +" --------------------\n" +" Matched rules: allow_all\n" +" Not matched rules: can_login\n" msgstr "" -#: ipaserver/plugins/idviews.py:689 +#: ipaserver/plugins/hbactest.py:384 +msgid "Unresolved rules in --rules" +msgstr "" + +#: ipaserver/plugins/hbactest.py:408 ipaserver/plugins/trust.py:345 +msgid "" +"Cannot search in trusted domains without own domain configured. Make sure " +"you have run ipa-adtrust-install on the IPA server first" +msgstr "" + +#: ipaserver/plugins/hbactest.py:497 #, python-format -msgid "Anchor '%(anchor)s' could not be resolved." +msgid "Access granted: %s" msgstr "" -#: ipaserver/plugins/idviews.py:839 -msgid "Default Trust View cannot contain IPA users" +#: ipaserver/plugins/hostgroup.py:35 +msgid "" +"\n" +"Groups of hosts.\n" +"\n" +"Manage groups of hosts. This is useful for applying access control to a\n" +"number of hosts by using Host-based Access Control.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Add a new host group:\n" +" ipa hostgroup-add --desc=\"Baltimore hosts\" baltimore\n" +"\n" +" Add another new host group:\n" +" ipa hostgroup-add --desc=\"Maryland hosts\" maryland\n" +"\n" +" Add members to the hostgroup (using Bash brace expansion):\n" +" ipa hostgroup-add-member --hosts={box1,box2,box3} baltimore\n" +"\n" +" Add a hostgroup as a member of another hostgroup:\n" +" ipa hostgroup-add-member --hostgroups=baltimore maryland\n" +"\n" +" Remove a host from the hostgroup:\n" +" ipa hostgroup-remove-member --hosts=box2 baltimore\n" +"\n" +" Display a host group:\n" +" ipa hostgroup-show baltimore\n" +"\n" +" Add a member manager:\n" +" ipa hostgroup-add-member-manager --users=user1 baltimore\n" +"\n" +" Remove a member manager\n" +" ipa hostgroup-remove-member-manager --users=user1 baltimore\n" +"\n" +" Delete a hostgroup:\n" +" ipa hostgroup-del baltimore\n" msgstr "" -#: ipaserver/plugins/idviews.py:883 -msgid "Add a new ID override." +#: ipaserver/plugins/hostgroup.py:107 +msgid "host groups" msgstr "" -#: ipaserver/plugins/idviews.py:884 +#: ipaserver/plugins/hostgroup.py:179 +msgid "Host Group" +msgstr "" + +#: ipaserver/plugins/hostgroup.py:223 #, python-format -msgid "Added ID override \"%(value)s\"" +msgid "Added hostgroup \"%(value)s\"" msgstr "" -#: ipaserver/plugins/idviews.py:899 -msgid "Delete an ID override." -msgstr "" - -#: ipaserver/plugins/idviews.py:900 +#: ipaserver/plugins/hostgroup.py:239 #, python-format -msgid "Deleted ID override \"%(value)s\"" +msgid "" +"netgroup with name \"%s\" already exists. Hostgroups and netgroups share a " +"common namespace" msgstr "" -#: ipaserver/plugins/idviews.py:923 -msgid "Modify an ID override." -msgstr "" - -#: ipaserver/plugins/idviews.py:924 +#: ipaserver/plugins/hostgroup.py:262 #, python-format -msgid "Modified an ID override \"%(value)s\"" +msgid "Deleted hostgroup \"%(value)s\"" msgstr "" -#: ipaserver/plugins/idviews.py:931 -msgid "ID override" +#: ipaserver/plugins/hostgroup.py:266 ipaserver/plugins/hostgroup.py:284 +#: ipaserver/plugins/hostgroup.py:349 +msgid "hostgroup" msgstr "" -#: ipaserver/plugins/idviews.py:932 -msgid "ID overrides cannot be renamed" +#: ipaserver/plugins/hostgroup.py:268 ipaserver/plugins/hostgroup.py:286 +msgid "privileged hostgroup" msgstr "" -#: ipaserver/plugins/idviews.py:944 -msgid "Search for an ID override." -msgstr "" - -#: ipaserver/plugins/idviews.py:945 +#: ipaserver/plugins/hostgroup.py:278 #, python-format -msgid "%(count)d ID override matched" -msgid_plural "%(count)d ID overrides matched" +msgid "Modified hostgroup \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/hostgroup.py:303 +#, python-format +msgid "%(count)d hostgroup matched" +msgid_plural "%(count)d hostgroups matched" msgstr[0] "" msgstr[1] "" -#: ipaserver/plugins/idviews.py:957 -msgid "Display information about an ID override." +#: ipaserver/plugins/hostgroup.py:362 +msgid "Add users that can manage members of this hostgroup." msgstr "" -#: ipaserver/plugins/idviews.py:969 ipaserver/plugins/idviews.py:973 -msgid "User ID override" +#: ipaserver/plugins/hostgroup.py:372 +msgid "Remove users that can manage members of this hostgroup." msgstr "" -#: ipaserver/plugins/idviews.py:970 ipaserver/plugins/idviews.py:972 -msgid "User ID overrides" +#: ipaserver/plugins/serverroles.py:84 +#, python-brace-format +msgid "{role}: role not found" msgstr "" -#: ipaserver/plugins/idviews.py:1092 ipaserver/plugins/idviews.py:1096 -msgid "Group ID override" +#: ipaserver/plugins/serverroles.py:178 +#, python-brace-format +msgid "{attr}: no such attribute" msgstr "" -#: ipaserver/plugins/idviews.py:1093 ipaserver/plugins/idviews.py:1095 -msgid "Group ID overrides" +#: ipaserver/plugins/host.py:74 +msgid "" +"\n" +"Hosts/Machines\n" +"\n" +"A host represents a machine. It can be used in a number of contexts:\n" +"- service entries are associated with a host\n" +"- a host stores the host/ service principal\n" +"- a host can be used in Host-based Access Control (HBAC) rules\n" +"- every enrolled client generates a host entry\n" msgstr "" -#: ipaserver/plugins/idviews.py:1137 -msgid "Add one or more certificates to the idoverrideuser entry" +#: ipaserver/plugins/host.py:82 +msgid "" +"\n" +"ENROLLMENT:\n" +"\n" +"There are three enrollment scenarios when enrolling a new client:\n" +"\n" +"1. You are enrolling as a full administrator. The host entry may exist\n" +" or not. A full administrator is a member of the hostadmin role\n" +" or the admins group.\n" +"2. You are enrolling as a limited administrator. The host must already\n" +" exist. A limited administrator is a member a role with the\n" +" Host Enrollment privilege.\n" +"3. The host has been created with a one-time password.\n" msgstr "" -#: ipaserver/plugins/idviews.py:1138 +#: ipaserver/plugins/host.py:94 +msgid "" +"\n" +"RE-ENROLLMENT:\n" +"\n" +"Host that has been enrolled at some point, and lost its configuration (e.g. " +"VM\n" +"destroyed) can be re-enrolled.\n" +"\n" +"For more information, consult the manual pages for ipa-client-install.\n" +"\n" +"A host can optionally store information such as where it is located,\n" +"the OS that it runs, etc.\n" +msgstr "" + +#: ipaserver/plugins/host.py:106 +msgid "" +"\n" +" Add a new host:\n" +" ipa host-add --location=\"3rd floor lab\" --locality=Dallas test.example." +"com\n" +msgstr "" + +#: ipaserver/plugins/host.py:109 +msgid "" +"\n" +" Delete a host:\n" +" ipa host-del test.example.com\n" +msgstr "" + +#: ipaserver/plugins/host.py:112 +msgid "" +"\n" +" Add a new host with a one-time password:\n" +" ipa host-add --os='Fedora 12' --password=Secret123 test.example.com\n" +msgstr "" + +#: ipaserver/plugins/host.py:115 +msgid "" +"\n" +" Add a new host with a random one-time password:\n" +" ipa host-add --os='Fedora 12' --random test.example.com\n" +msgstr "" + +#: ipaserver/plugins/host.py:118 +msgid "" +"\n" +" Modify information about a host:\n" +" ipa host-mod --os='Fedora 12' test.example.com\n" +msgstr "" + +#: ipaserver/plugins/host.py:121 +msgid "" +"\n" +" Remove SSH public keys of a host and update DNS to reflect this change:\n" +" ipa host-mod --sshpubkey= --updatedns test.example.com\n" +msgstr "" + +#: ipaserver/plugins/host.py:124 +msgid "" +"\n" +" Disable the host Kerberos key, SSL certificate and all of its services:\n" +" ipa host-disable test.example.com\n" +msgstr "" + +#: ipaserver/plugins/host.py:127 +msgid "" +"\n" +" Add a host that can manage this host's keytab and certificate:\n" +" ipa host-add-managedby --hosts=test2 test\n" +msgstr "" + +#: ipaserver/plugins/host.py:130 +msgid "" +"\n" +" Allow user to create a keytab:\n" +" ipa host-allow-create-keytab test2 --users=tuser1\n" +msgstr "" + +#: ipaserver/plugins/host.py:462 ipaserver/plugins/internal.py:1161 +#: ipaserver/plugins/internal.py:1283 +msgid "Host" +msgstr "" + +#: ipaserver/plugins/host.py:514 +msgid "Base-64 encoded host certificate" +msgstr "" + +#: ipaserver/plugins/host.py:521 ipaserver/plugins/service.py:528 +#: ipaserver/plugins/internal.py:696 +msgid "Serial Number" +msgstr "" + +#: ipaserver/plugins/host.py:525 ipaserver/plugins/service.py:532 +#: ipaserver/plugins/internal.py:697 +msgid "Serial Number (hex)" +msgstr "" + +#: ipaserver/plugins/host.py:562 ipaserver/plugins/service.py:511 +#: ipaserver/plugins/baseuser.py:259 +msgid "Principal alias" +msgstr "" + +#: ipaserver/plugins/host.py:581 ipaserver/plugins/baseuser.py:355 +msgid "SSH public key fingerprint" +msgstr "" + +#: ipaserver/plugins/host.py:597 ipaserver/plugins/service.py:570 +msgid "Authentication Indicators" +msgstr "" + +#: ipaserver/plugins/host.py:598 ipaserver/plugins/service.py:571 +msgid "" +"Defines an allow list for Authentication Indicators. Use 'otp' to allow OTP-" +"based 2FA authentications. Use 'radius' to allow RADIUS-based 2FA " +"authentications. Use 'pkinit' to allow PKINIT-based 2FA authentications. Use " +"'hardened' to allow brute-force hardened password authentication by SPAKE or " +"FAST. With no indicator specified, all authentication mechanisms are allowed." +msgstr "" + +#: ipaserver/plugins/host.py:668 #, python-format -msgid "Added certificates to idoverrideuser \"%(value)s\"" +msgid "Added host \"%(value)s\"" msgstr "" -#: ipaserver/plugins/idviews.py:1160 -msgid "Remove one or more certificates to the idoverrideuser entry" -msgstr "" - -#: ipaserver/plugins/idviews.py:1161 +#: ipaserver/plugins/host.py:792 #, python-format -msgid "Removed certificates from idoverrideuser \"%(value)s\"" +msgid "Deleted host \"%(value)s\"" msgstr "" -#: ipaserver/plugins/idviews.py:1185 -#, python-format -msgid "Added User ID override \"%(value)s\"" +#: ipaserver/plugins/host.py:797 +msgid "Remove A, AAAA, SSHFP and PTR records of the host(s) managed by IPA DNS" msgstr "" -#: ipaserver/plugins/idviews.py:1210 -#, python-format -msgid "Deleted User ID override \"%(value)s\"" +#: ipaserver/plugins/host.py:869 +msgid "No A, AAAA, SSHFP or PTR records found." msgstr "" -#: ipaserver/plugins/idviews.py:1216 +#: ipaserver/plugins/host.py:885 #, python-format -msgid "Modified an User ID override \"%(value)s\"" +msgid "Modified host \"%(value)s\"" msgstr "" -#: ipaserver/plugins/idviews.py:1248 +#: ipaserver/plugins/host.py:906 +msgid "Password cannot be set on enrolled host." +msgstr "" + +#: ipaserver/plugins/host.py:910 +msgid "cn is immutable" +msgstr "" + +#: ipaserver/plugins/host.py:1035 #, python-format -msgid "%(count)d User ID override matched" -msgid_plural "%(count)d User ID overrides matched" +msgid "%(count)d host matched" +msgid_plural "%(count)d hosts matched" msgstr[0] "" msgstr[1] "" -#: ipaserver/plugins/idviews.py:1284 +#: ipaserver/plugins/host.py:1190 #, python-format -msgid "Added Group ID override \"%(value)s\"" +msgid "Disabled host \"%(value)s\"" msgstr "" -#: ipaserver/plugins/idviews.py:1290 +#: ipaserver/plugins/host.py:1359 #, python-format -msgid "Deleted Group ID override \"%(value)s\"" +msgid "Added certificates to host \"%(value)s\"" msgstr "" -#: ipaserver/plugins/idviews.py:1296 +#: ipaserver/plugins/host.py:1366 #, python-format -msgid "Modified an Group ID override \"%(value)s\"" +msgid "Removed certificates from host \"%(value)s\"" msgstr "" -#: ipaserver/plugins/idviews.py:1302 +#: ipaserver/plugins/host.py:1382 +msgid "Add new principal alias to host entry" +msgstr "" + +#: ipaserver/plugins/host.py:1383 #, python-format -msgid "%(count)d Group ID override matched" -msgid_plural "%(count)d Group ID overrides matched" +msgid "Added new aliases to host \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/host.py:1394 +msgid "Remove principal alias from a host entry" +msgstr "" + +#: ipaserver/plugins/host.py:1395 +#, python-format +msgid "Removed aliases from host \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/migration.py:46 +msgid "" +"\n" +"Migration to IPA\n" +"\n" +"Migrate users and groups from an LDAP server to IPA.\n" +"\n" +"This performs an LDAP query against the remote server searching for\n" +"users and groups in a container. In order to migrate passwords you need\n" +"to bind as a user that can read the userPassword attribute on the remote\n" +"server. This is generally restricted to high-level admins such as\n" +"cn=Directory Manager in 389-ds (this is the default bind user).\n" +"\n" +"The default user container is ou=People.\n" +"\n" +"The default group container is ou=Groups.\n" +"\n" +"Users and groups that already exist on the IPA server are skipped.\n" +"\n" +"Two LDAP schemas define how group members are stored: RFC2307 and\n" +"RFC2307bis. RFC2307bis uses member and uniquemember to specify group\n" +"members, RFC2307 uses memberUid. The default schema is RFC2307bis.\n" +"\n" +"The schema compat feature allows IPA to reformat data for systems that\n" +"do not support RFC2307bis. It is recommended that this feature is disabled\n" +"during migration to reduce system overhead. It can be re-enabled after\n" +"migration. To migrate with it enabled use the \"--with-compat\" option.\n" +"\n" +"Migrated users do not have Kerberos credentials, they have only their\n" +"LDAP password. To complete the migration process, users need to go\n" +"to http://ipa.example.com/ipa/migration and authenticate using their\n" +"LDAP password in order to generate their Kerberos credentials.\n" +"\n" +"Migration is disabled by default. Use the command ipa config-mod to\n" +"enable it:\n" +"\n" +" ipa config-mod --enable-migration=TRUE\n" +"\n" +"If a base DN is not provided with --basedn then IPA will use either\n" +"the value of defaultNamingContext if it is set or the first value\n" +"in namingContexts set in the root of the remote LDAP server.\n" +"\n" +"Users are added as members to the default user group. This can be a\n" +"time-intensive task so during migration this is done in a batch\n" +"mode for every 100 users. As a result there will be a window in which\n" +"users will be added to IPA but will not be members of the default\n" +"user group.\n" +"\n" +"EXAMPLES:\n" +"\n" +" The simplest migration, accepting all defaults:\n" +" ipa migrate-ds ldap://ds.example.com:389\n" +"\n" +" Specify the user and group container. This can be used to migrate user\n" +" and group data from an IPA v1 server:\n" +" ipa migrate-ds --user-container='cn=users,cn=accounts' \\\n" +" --group-container='cn=groups,cn=accounts' \\\n" +" ldap://ds.example.com:389\n" +"\n" +" Since IPA v2 server already contain predefined groups that may collide " +"with\n" +" groups in migrated (IPA v1) server (for example admins, ipausers), users\n" +" having colliding group as their primary group may happen to belong to\n" +" an unknown group on new IPA v2 server.\n" +" Use --group-overwrite-gid option to overwrite GID of already existing " +"groups\n" +" to prevent this issue:\n" +" ipa migrate-ds --group-overwrite-gid \\\n" +" --user-container='cn=users,cn=accounts' \\\n" +" --group-container='cn=groups,cn=accounts' \\\n" +" ldap://ds.example.com:389\n" +"\n" +" Migrated users or groups may have object class and accompanied attributes\n" +" unknown to the IPA v2 server. These object classes and attributes may be\n" +" left out of the migration process:\n" +" ipa migrate-ds --user-container='cn=users,cn=accounts' \\\n" +" --group-container='cn=groups,cn=accounts' \\\n" +" --user-ignore-objectclass=radiusprofile \\\n" +" --user-ignore-attribute=radiusgroupname \\\n" +" ldap://ds.example.com:389\n" +"\n" +"LOGGING\n" +"\n" +"Migration will log warnings and errors to the Apache error log. This\n" +"file should be evaluated post-migration to correct or investigate any\n" +"issues that were discovered.\n" +"\n" +"For every 100 users migrated an info-level message will be displayed to\n" +"give the current progress and duration to make it possible to track\n" +"the progress of migration.\n" +"\n" +"If the log level is debug, either by setting debug = True in\n" +"/etc/ipa/default.conf or /etc/ipa/server.conf, then an entry will be " +"printed\n" +"for each user added plus a summary when the default user group is\n" +"updated.\n" +msgstr "" + +#: ipaserver/plugins/migration.py:145 +#, python-format +msgid "" +"Kerberos principal %s already exists. Use 'ipa user-mod' to set it manually." +msgstr "" + +#: ipaserver/plugins/migration.py:146 +#, python-format +msgid "" +"Unable to determine if Kerberos principal %s already exists. Use 'ipa user-" +"mod' to set it manually." +msgstr "" + +#: ipaserver/plugins/migration.py:147 +msgid "" +"Failed to add user to the default group. Use 'ipa group-add-member' to add " +"manually." +msgstr "" + +#: ipaserver/plugins/migration.py:148 +msgid "Migration of LDAP search reference is not supported." +msgstr "" + +#: ipaserver/plugins/migration.py:149 +msgid "Malformed DN" +msgstr "" + +#: ipaserver/plugins/migration.py:194 +#, python-format +msgid "%(user)s is not a POSIX user" +msgstr "" + +#: ipaserver/plugins/migration.py:461 +msgid "" +". Check GID of the existing group. Use --group-overwrite-gid option to " +"overwrite the GID" +msgstr "" + +#: ipaserver/plugins/migration.py:476 +msgid "Invalid LDAP URI." +msgstr "" + +#: ipaserver/plugins/migration.py:678 +#, python-format +msgid "%s to exclude from migration" +msgstr "" + +#: ipaserver/plugins/migration.py:680 +msgid "" +"search results for objects to be migrated\n" +"have been truncated by the server;\n" +"migration process might be incomplete\n" +msgstr "" + +#: ipaserver/plugins/migration.py:769 +#, python-format +msgid "" +"%(container)s LDAP search did not return any result (search base: " +"%(search_base)s, objectclass: %(objectclass)s)" +msgstr "" + +#: ipaserver/plugins/otptoken.py:42 +msgid "" +"\n" +"OTP Tokens\n" +msgstr "" + +#: ipaserver/plugins/otptoken.py:44 +msgid "" +"\n" +"Manage OTP tokens.\n" +msgstr "" + +#: ipaserver/plugins/otptoken.py:46 +msgid "" +"\n" +"IPA supports the use of OTP tokens for multi-factor authentication. This\n" +"code enables the management of OTP tokens.\n" +msgstr "" + +#: ipaserver/plugins/otptoken.py:51 +msgid "" +"\n" +" Add a new token:\n" +" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n" +msgstr "" + +#: ipaserver/plugins/otptoken.py:54 +msgid "" +"\n" +" Examine the token:\n" +" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n" +msgstr "" + +#: ipaserver/plugins/otptoken.py:57 +msgid "" +"\n" +" Change the vendor:\n" +" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat" +"\"\n" +msgstr "" + +#: ipaserver/plugins/otptoken.py:60 +msgid "" +"\n" +" Delete a token:\n" +" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n" +msgstr "" + +#: ipaserver/plugins/otptoken.py:137 +msgid "OTP token" +msgstr "" + +#: ipaserver/plugins/otptoken.py:138 +msgid "OTP tokens" +msgstr "" + +#: ipaserver/plugins/otptoken.py:154 +msgid "OTP Tokens" +msgstr "" + +#: ipaserver/plugins/otptoken.py:155 +msgid "OTP Token" +msgstr "" + +#: ipaserver/plugins/otptoken.py:272 +msgid "URI" +msgstr "" + +#: ipaserver/plugins/otptoken.py:281 +#, python-format +msgid "Added OTP token \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/otptoken.py:335 +msgid "cannot be empty" +msgstr "" + +#: ipaserver/plugins/otptoken.py:367 +#, python-format +msgid "Deleted OTP token \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/otptoken.py:373 +#, python-format +msgid "Modified OTP token \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/otptoken.py:422 +#, python-format +msgid "%(count)d OTP token matched" +msgid_plural "%(count)d OTP tokens matched" msgstr[0] "" msgstr[1] "" +#: ipaserver/plugins/passwd.py:40 +msgid "" +"\n" +"Set a user's password\n" +"\n" +"If someone other than a user changes that user's password (e.g., Helpdesk\n" +"resets it) then the password will need to be changed the first time it\n" +"is used. This is so the end-user is the only one who knows the password.\n" +"\n" +"The IPA password policy controls how often a password may be changed,\n" +"what strength requirements exist, and the length of the password history.\n" +"\n" +"If the user authentication method is set to password+OTP, the user should\n" +"pass the --otp option when resetting the password.\n" +"\n" +"EXAMPLES:\n" +"\n" +" To reset your own password:\n" +" ipa passwd\n" +"\n" +" To reset your own password when password+OTP is set as authentication " +"method:\n" +" ipa passwd --otp\n" +"\n" +" To change another user's password:\n" +" ipa passwd tuser1\n" +msgstr "" + +#: ipaserver/plugins/passwd.py:114 +msgid "The OTP if the user has a token configured" +msgstr "" + +#: ipaserver/plugins/passwd.py:120 +#, python-format +msgid "Changed password for \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/service.py:60 +msgid "" +"\n" +"Services\n" +"\n" +"A IPA service represents a service that runs on a host. The IPA service\n" +"record can store a Kerberos principal, an SSL certificate, or both.\n" +"\n" +"An IPA service can be managed directly from a machine, provided that\n" +"machine has been given the correct permission. This is true even for\n" +"machines other than the one the service is associated with. For example,\n" +"requesting an SSL certificate using the host service principal credentials\n" +"of the host. To manage a service using host credentials you need to\n" +"kinit as the host:\n" +"\n" +" # kinit -kt /etc/krb5.keytab host/ipa.example.com@EXAMPLE.COM\n" +"\n" +"Adding an IPA service allows the associated service to request an SSL\n" +"certificate or keytab, but this is performed as a separate step; they\n" +"are not produced as a result of adding the service.\n" +"\n" +"Only the public aspect of a certificate is stored in a service record;\n" +"the private key is not stored.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Add a new IPA service:\n" +" ipa service-add HTTP/web.example.com\n" +"\n" +" Allow a host to manage an IPA service certificate:\n" +" ipa service-add-host --hosts=web.example.com HTTP/web.example.com\n" +" ipa role-add-member --hosts=web.example.com certadmin\n" +"\n" +" Override a default list of supported PAC types for the service:\n" +" ipa service-mod HTTP/web.example.com --pac-type=MS-PAC\n" +"\n" +" A typical use case where overriding the PAC type is needed is NFS.\n" +" Currently the related code in the Linux kernel can only handle Kerberos\n" +" tickets up to a maximal size. Since the PAC data can become quite large " +"it\n" +" is recommended to set --pac-type=NONE for NFS services.\n" +"\n" +" Delete an IPA service:\n" +" ipa service-del HTTP/web.example.com\n" +"\n" +" Find all IPA services associated with a host:\n" +" ipa service-find web.example.com\n" +"\n" +" Find all HTTP services:\n" +" ipa service-find HTTP\n" +"\n" +" Disable the service Kerberos key and SSL certificate:\n" +" ipa service-disable HTTP/web.example.com\n" +"\n" +" Request a certificate for an IPA service:\n" +" ipa cert-request --principal=HTTP/web.example.com example.csr\n" +msgstr "" + +#: ipaserver/plugins/service.py:113 +msgid "" +"\n" +" Allow user to create a keytab:\n" +" ipa service-allow-create-keytab HTTP/web.example.com --users=tuser1\n" +msgstr "" + +#: ipaserver/plugins/service.py:116 +msgid "" +"\n" +" Generate and retrieve a keytab for an IPA service:\n" +" ipa-getkeytab -s ipa.example.com -p HTTP/web.example.com -k /etc/httpd/" +"httpd.keytab\n" +"\n" +msgstr "" + +#: ipaserver/plugins/service.py:180 +msgid "Trusted to authenticate as user" +msgstr "" + +#: ipaserver/plugins/service.py:181 +msgid "The service is allowed to authenticate on behalf of a client" +msgstr "" + +#: ipaserver/plugins/service.py:226 +#, python-format +msgid "authentication indicators not allowed in service \"%s\"" +msgstr "" + +#: ipaserver/plugins/service.py:242 +msgid "Malformed principal" +msgstr "" + +#: ipaserver/plugins/service.py:321 +msgid "{} is required by the IPA master" +msgstr "" + +#: ipaserver/plugins/service.py:395 +msgid "service" +msgstr "" + +#: ipaserver/plugins/service.py:396 +msgid "services" +msgstr "" + +#: ipaserver/plugins/service.py:512 +msgid "Service principal alias" +msgstr "" + +#: ipaserver/plugins/service.py:520 +msgid "Base-64 encoded service certificate" +msgstr "" + +#: ipaserver/plugins/service.py:596 +msgid "NONE value cannot be combined with other PAC types" +msgstr "" + +#: ipaserver/plugins/service.py:648 +msgid "Add a new IPA service." +msgstr "" + +#: ipaserver/plugins/service.py:650 ipaserver/plugins/service.py:719 +#, python-format +msgid "Added service \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/service.py:656 +msgid "force principal name even if host not in DNS" +msgstr "" + +#: ipaserver/plugins/service.py:659 +msgid "Skip host check" +msgstr "" + +#: ipaserver/plugins/service.py:660 +msgid "" +"force service to be created even when host object does not exist to manage it" +msgstr "" + +#: ipaserver/plugins/service.py:678 ipaserver/plugins/service.py:787 +#, python-format +msgid "The host '%s' does not exist to add a service to." +msgstr "" + +#: ipaserver/plugins/service.py:717 +msgid "Add a new SMB service." +msgstr "" + +#: ipaserver/plugins/service.py:733 +msgid "SMB service NetBIOS name" +msgstr "" + +#: ipaserver/plugins/service.py:847 +#, python-format +msgid "Deleted service \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/service.py:867 +#, python-format +msgid "Modified service \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/service.py:918 +#, python-format +msgid "%(count)d service matched" +msgid_plural "%(count)d services matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/service.py:1117 +#, python-format +msgid "Disabled service \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/service.py:1158 +#, python-format +msgid "Added certificates to service principal \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/service.py:1165 +#, python-format +msgid "Removed certificates from service principal \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/service.py:1181 +msgid "Add new principal alias to a service" +msgstr "" + +#: ipaserver/plugins/service.py:1182 +#, python-format +msgid "Added new aliases to the service principal \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/service.py:1193 +msgid "Remove principal alias from a service" +msgstr "" + +#: ipaserver/plugins/service.py:1194 +#, python-format +msgid "Removed aliases to the service principal \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/batch.py:35 +msgid "" +"\n" +"Plugin to make multiple ipa calls via one remote procedure call\n" +"\n" +"To run this code in the lite-server\n" +"\n" +"curl -H \"Content-Type:application/json\" -H \"Accept:application/" +"json\" -H \"Accept-Language:en\" --negotiate -u : --cacert /" +"etc/ipa/ca.crt -d @batch_request.json -X POST http://" +"localhost:8888/ipa/json\n" +"\n" +"where the contents of the file batch_request.json follow the below example\n" +"\n" +"{\"method\":\"batch\",\"params\":[[\n" +" {\"method\":\"group_find\",\"params\":[[],{}]},\n" +" {\"method\":\"user_find\",\"params\":[[],{\"whoami\":\"true\",\"all" +"\":\"true\"}]},\n" +" {\"method\":\"user_show\",\"params\":[[\"admin\"],{\"all\":true}]}\n" +" ],{}],\"id\":1}\n" +"\n" +"The format of the response is nested the same way. At the top you will see\n" +" \"error\": null,\n" +" \"id\": 1,\n" +" \"result\": {\n" +" \"count\": 3,\n" +" \"results\": [\n" +"\n" +"\n" +"And then a nested response for each IPA command method sent in the request\n" +"\n" +msgstr "" + +#: ipaserver/plugins/batch.py:71 +msgid "Make multiple ipa calls via one remote procedure call" +msgstr "" + +#: ipaserver/plugins/batch.py:122 +msgid "must contain a tuple (list, dict)" +msgstr "" + #: ipaserver/plugins/internal.py:151 msgid "Internationalization messages" msgstr "" @@ -19032,10 +19318,6 @@ msgstr "" msgid "RADIUS" msgstr "" -#: ipaserver/plugins/internal.py:192 ipaserver/plugins/pkinit.py:41 -msgid "PKINIT" -msgstr "" - #: ipaserver/plugins/internal.py:193 msgid "Hardened Password (by SPAKE or FAST)" msgstr "" @@ -20370,6 +20652,11 @@ msgstr "" msgid "Add certificate mapping data" msgstr "" +#: ipaserver/plugins/internal.py:721 ipaserver/plugins/baseuser.py:406 +#: ipaserver/plugins/baseuser.py:407 +msgid "Certificate mapping data" +msgstr "" + #: ipaserver/plugins/internal.py:723 msgid "Configuration string" msgstr "" @@ -21468,10 +21755,6 @@ msgstr "" msgid "Add password policy" msgstr "" -#: ipaserver/plugins/internal.py:1233 ipaserver/plugins/pwpolicy.py:298 -msgid "Password Policy" -msgstr "" - #: ipaserver/plugins/internal.py:1234 msgid "Remove password policies" msgstr "" @@ -21508,6 +21791,10 @@ msgstr "" msgid "Remove ID ranges" msgstr "" +#: ipaserver/plugins/internal.py:1247 ipaserver/dcerpc_common.py:37 +msgid "Active Directory domain" +msgstr "" + #: ipaserver/plugins/internal.py:1248 msgid "Active Directory domain with POSIX attributes" msgstr "" @@ -22736,11 +23023,6 @@ msgstr "" msgid "Identity" msgstr "" -#: ipaserver/plugins/internal.py:1948 ipaserver/plugins/location.py:157 -#: ipaserver/plugins/server.py:71 -msgid "IPA Server" -msgstr "" - #: ipaserver/plugins/internal.py:1949 msgid "Network Services" msgstr "" @@ -22899,6 +23181,10 @@ msgstr "" msgid "Unsupported value" msgstr "" +#: ipaserver/plugins/ldap2.py:277 +msgid "Could not read UPG Definition originfilter. Check your permissions." +msgstr "" + #: ipaserver/plugins/join.py:125 #, python-format msgid "" @@ -22983,10 +23269,407 @@ msgstr "" msgid "Default ticket policy could not be read" msgstr "" -#: ipaserver/plugins/ldap2.py:277 -msgid "Could not read UPG Definition originfilter. Check your permissions." +#: ipaserver/plugins/idviews.py:72 ipaserver/plugins/idviews.py:123 +#: ipaserver/plugins/idviews.py:131 ipaserver/plugins/idviews.py:351 +#: ipaserver/plugins/idviews.py:838 +msgid "ID View" msgstr "" +#: ipaserver/plugins/idviews.py:74 +msgid "system ID View" +msgstr "" + +#: ipaserver/plugins/idviews.py:124 ipaserver/plugins/idviews.py:130 +msgid "ID Views" +msgstr "" + +#: ipaserver/plugins/idviews.py:145 +msgid "User object overrides" +msgstr "" + +#: ipaserver/plugins/idviews.py:149 +msgid "Group object overrides" +msgstr "" + +#: ipaserver/plugins/idviews.py:153 +msgid "Hosts the view applies to" +msgstr "" + +#: ipaserver/plugins/idviews.py:159 ipaserver/plugins/config.py:330 +msgid "Domain resolution order" +msgstr "" + +#: ipaserver/plugins/idviews.py:160 ipaserver/plugins/config.py:331 +msgid "colon-separated list of domains used for short name qualification" +msgstr "" + +#: ipaserver/plugins/idviews.py:196 +#, python-format +msgid "Added ID View \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:213 +#, python-format +msgid "Deleted ID View \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:226 +#, python-format +msgid "Modified an ID View \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:242 +#, python-format +msgid "%(count)d ID View matched" +msgid_plural "%(count)d ID Views matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/idviews.py:352 +msgid "Default Trust View cannot be applied on hosts" +msgstr "" + +#: ipaserver/plugins/idviews.py:380 ipaserver/plugins/idviews.py:413 +msgid "not found" +msgstr "" + +#: ipaserver/plugins/idviews.py:394 +msgid "ID View cannot be applied to IPA master" +msgstr "" + +#: ipaserver/plugins/idviews.py:411 +msgid "ID View already applied" +msgstr "" + +#: ipaserver/plugins/idviews.py:431 +msgid "value" +msgstr "" + +#: ipaserver/plugins/idviews.py:444 +#, python-format +msgid "ID View applied to %i host." +msgstr "" + +#: ipaserver/plugins/idviews.py:445 +#, python-format +msgid "ID View applied to %i hosts." +msgstr "" + +#: ipaserver/plugins/idviews.py:487 +#, python-format +msgid "ID View cleared from %i host." +msgstr "" + +#: ipaserver/plugins/idviews.py:488 +#, python-format +msgid "ID View cleared from %i hosts." +msgstr "" + +#: ipaserver/plugins/idviews.py:556 +msgid "" +"You are trying to reference a magic private group which is not allowed to be " +"overridden. Try overriding the GID attribute of the corresponding user " +"instead." +msgstr "" + +#: ipaserver/plugins/idviews.py:594 +msgid "IPA object" +msgstr "" + +#: ipaserver/plugins/idviews.py:595 +msgid "" +"system IPA objects (e.g. system groups, user private groups) cannot be " +"overridden" +msgstr "" + +#: ipaserver/plugins/idviews.py:689 +#, python-format +msgid "Anchor '%(anchor)s' could not be resolved." +msgstr "" + +#: ipaserver/plugins/idviews.py:839 +msgid "Default Trust View cannot contain IPA users" +msgstr "" + +#: ipaserver/plugins/idviews.py:883 +msgid "Add a new ID override." +msgstr "" + +#: ipaserver/plugins/idviews.py:884 +#, python-format +msgid "Added ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:899 +msgid "Delete an ID override." +msgstr "" + +#: ipaserver/plugins/idviews.py:900 +#, python-format +msgid "Deleted ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:923 +msgid "Modify an ID override." +msgstr "" + +#: ipaserver/plugins/idviews.py:924 +#, python-format +msgid "Modified an ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:931 +msgid "ID override" +msgstr "" + +#: ipaserver/plugins/idviews.py:932 +msgid "ID overrides cannot be renamed" +msgstr "" + +#: ipaserver/plugins/idviews.py:944 +msgid "Search for an ID override." +msgstr "" + +#: ipaserver/plugins/idviews.py:945 +#, python-format +msgid "%(count)d ID override matched" +msgid_plural "%(count)d ID overrides matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/idviews.py:957 +msgid "Display information about an ID override." +msgstr "" + +#: ipaserver/plugins/idviews.py:969 ipaserver/plugins/idviews.py:973 +msgid "User ID override" +msgstr "" + +#: ipaserver/plugins/idviews.py:970 ipaserver/plugins/idviews.py:972 +msgid "User ID overrides" +msgstr "" + +#: ipaserver/plugins/idviews.py:1056 ipaserver/plugins/baseuser.py:401 +#: ipaserver/plugins/baseuser.py:846 ipaserver/plugins/certmap.py:606 +msgid "Base-64 encoded user certificate" +msgstr "" + +#: ipaserver/plugins/idviews.py:1092 ipaserver/plugins/idviews.py:1096 +msgid "Group ID override" +msgstr "" + +#: ipaserver/plugins/idviews.py:1093 ipaserver/plugins/idviews.py:1095 +msgid "Group ID overrides" +msgstr "" + +#: ipaserver/plugins/idviews.py:1137 +msgid "Add one or more certificates to the idoverrideuser entry" +msgstr "" + +#: ipaserver/plugins/idviews.py:1138 +#, python-format +msgid "Added certificates to idoverrideuser \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:1160 +msgid "Remove one or more certificates to the idoverrideuser entry" +msgstr "" + +#: ipaserver/plugins/idviews.py:1161 +#, python-format +msgid "Removed certificates from idoverrideuser \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:1185 +#, python-format +msgid "Added User ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:1210 +#, python-format +msgid "Deleted User ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:1216 +#, python-format +msgid "Modified an User ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:1248 +#, python-format +msgid "%(count)d User ID override matched" +msgid_plural "%(count)d User ID overrides matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/idviews.py:1284 +#, python-format +msgid "Added Group ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:1290 +#, python-format +msgid "Deleted Group ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:1296 +#, python-format +msgid "Modified an Group ID override \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/idviews.py:1302 +#, python-format +msgid "%(count)d Group ID override matched" +msgid_plural "%(count)d Group ID overrides matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/automount.py:218 +msgid "automount location" +msgstr "" + +#: ipaserver/plugins/automount.py:219 +msgid "automount locations" +msgstr "" + +#: ipaserver/plugins/automount.py:222 +msgid "Automount Locations" +msgstr "" + +#: ipaserver/plugins/automount.py:223 +msgid "Automount Location" +msgstr "" + +#: ipaserver/plugins/automount.py:263 +#, python-format +msgid "Added automount location \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:283 +#, python-format +msgid "Deleted automount location \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:296 +#, python-format +msgid "%(count)d automount location matched" +msgid_plural "%(count)d automount locations matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/automount.py:349 +msgid "automount map" +msgstr "" + +#: ipaserver/plugins/automount.py:350 +msgid "automount maps" +msgstr "" + +#: ipaserver/plugins/automount.py:393 +msgid "Automount Maps" +msgstr "" + +#: ipaserver/plugins/automount.py:394 +msgid "Automount Map" +msgstr "" + +#: ipaserver/plugins/automount.py:401 +#, python-format +msgid "Added automount map \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:408 +#, python-format +msgid "Deleted automount map \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:428 +#, python-format +msgid "Modified automount map \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:436 +#, python-format +msgid "%(count)d automount map matched" +msgid_plural "%(count)d automount maps matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/automount.py:448 +msgid "Automount key object." +msgstr "" + +#: ipaserver/plugins/automount.py:452 +msgid "automount key" +msgstr "" + +#: ipaserver/plugins/automount.py:453 +msgid "automount keys" +msgstr "" + +#: ipaserver/plugins/automount.py:512 +msgid "Automount Keys" +msgstr "" + +#: ipaserver/plugins/automount.py:513 +msgid "Automount Key" +msgstr "" + +#: ipaserver/plugins/automount.py:514 +#, python-format +msgid "" +"The key,info pair must be unique. A key named %(key)s with info %(info)s " +"already exists" +msgstr "" + +#: ipaserver/plugins/automount.py:515 +#, python-format +msgid "key named %(key)s already exists" +msgstr "" + +#: ipaserver/plugins/automount.py:516 +#, python-format +msgid "The automount key %(key)s with info %(info)s does not exist" +msgstr "" + +#: ipaserver/plugins/automount.py:566 +#, python-format +msgid "" +"More than one entry with key %(key)s found, use --info to select specific " +"entry." +msgstr "" + +#: ipaserver/plugins/automount.py:625 +#, python-format +msgid "Added automount key \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:654 +#, python-format +msgid "Added automount indirect map \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:678 +msgid "mount point is relative to parent map, cannot begin with /" +msgstr "" + +#: ipaserver/plugins/automount.py:707 +#, python-format +msgid "Deleted automount key \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:748 +#, python-format +msgid "Modified automount key \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/automount.py:807 +#, python-format +msgid "%(count)d automount key matched" +msgid_plural "%(count)d automount keys matched" +msgstr[0] "" +msgstr[1] "" + #: ipaserver/plugins/location.py:33 msgid "" "\n" @@ -23117,167 +23800,634 @@ msgstr "" msgid "Servers in location" msgstr "" -#: ipaserver/plugins/migration.py:46 +#: ipaserver/plugins/subid.py:29 msgid "" "\n" -"Migration to IPA\n" +"Subordinate ids\n" "\n" -"Migrate users and groups from an LDAP server to IPA.\n" -"\n" -"This performs an LDAP query against the remote server searching for\n" -"users and groups in a container. In order to migrate passwords you need\n" -"to bind as a user that can read the userPassword attribute on the remote\n" -"server. This is generally restricted to high-level admins such as\n" -"cn=Directory Manager in 389-ds (this is the default bind user).\n" -"\n" -"The default user container is ou=People.\n" -"\n" -"The default group container is ou=Groups.\n" -"\n" -"Users and groups that already exist on the IPA server are skipped.\n" -"\n" -"Two LDAP schemas define how group members are stored: RFC2307 and\n" -"RFC2307bis. RFC2307bis uses member and uniquemember to specify group\n" -"members, RFC2307 uses memberUid. The default schema is RFC2307bis.\n" -"\n" -"The schema compat feature allows IPA to reformat data for systems that\n" -"do not support RFC2307bis. It is recommended that this feature is disabled\n" -"during migration to reduce system overhead. It can be re-enabled after\n" -"migration. To migrate with it enabled use the \"--with-compat\" option.\n" -"\n" -"Migrated users do not have Kerberos credentials, they have only their\n" -"LDAP password. To complete the migration process, users need to go\n" -"to http://ipa.example.com/ipa/migration and authenticate using their\n" -"LDAP password in order to generate their Kerberos credentials.\n" -"\n" -"Migration is disabled by default. Use the command ipa config-mod to\n" -"enable it:\n" -"\n" -" ipa config-mod --enable-migration=TRUE\n" -"\n" -"If a base DN is not provided with --basedn then IPA will use either\n" -"the value of defaultNamingContext if it is set or the first value\n" -"in namingContexts set in the root of the remote LDAP server.\n" -"\n" -"Users are added as members to the default user group. This can be a\n" -"time-intensive task so during migration this is done in a batch\n" -"mode for every 100 users. As a result there will be a window in which\n" -"users will be added to IPA but will not be members of the default\n" -"user group.\n" +"Manage subordinate user and group ids for users\n" "\n" "EXAMPLES:\n" "\n" -" The simplest migration, accepting all defaults:\n" -" ipa migrate-ds ldap://ds.example.com:389\n" +" Auto-assign a subordinate id range to current user\n" +" ipa subid-generate\n" "\n" -" Specify the user and group container. This can be used to migrate user\n" -" and group data from an IPA v1 server:\n" -" ipa migrate-ds --user-container='cn=users,cn=accounts' \\\n" -" --group-container='cn=groups,cn=accounts' \\\n" -" ldap://ds.example.com:389\n" +" Auto-assign a subordinate id range to user alice:\n" +" ipa subid-generate --owner=alice\n" "\n" -" Since IPA v2 server already contain predefined groups that may collide " -"with\n" -" groups in migrated (IPA v1) server (for example admins, ipausers), users\n" -" having colliding group as their primary group may happen to belong to\n" -" an unknown group on new IPA v2 server.\n" -" Use --group-overwrite-gid option to overwrite GID of already existing " -"groups\n" -" to prevent this issue:\n" -" ipa migrate-ds --group-overwrite-gid \\\n" -" --user-container='cn=users,cn=accounts' \\\n" -" --group-container='cn=groups,cn=accounts' \\\n" -" ldap://ds.example.com:389\n" +" Find subordinate ids for user alice:\n" +" ipa subid-find --owner=alice\n" "\n" -" Migrated users or groups may have object class and accompanied attributes\n" -" unknown to the IPA v2 server. These object classes and attributes may be\n" -" left out of the migration process:\n" -" ipa migrate-ds --user-container='cn=users,cn=accounts' \\\n" -" --group-container='cn=groups,cn=accounts' \\\n" -" --user-ignore-objectclass=radiusprofile \\\n" -" --user-ignore-attribute=radiusgroupname \\\n" -" ldap://ds.example.com:389\n" -"\n" -"LOGGING\n" -"\n" -"Migration will log warnings and errors to the Apache error log. This\n" -"file should be evaluated post-migration to correct or investigate any\n" -"issues that were discovered.\n" -"\n" -"For every 100 users migrated an info-level message will be displayed to\n" -"give the current progress and duration to make it possible to track\n" -"the progress of migration.\n" -"\n" -"If the log level is debug, either by setting debug = True in\n" -"/etc/ipa/default.conf or /etc/ipa/server.conf, then an entry will be " -"printed\n" -"for each user added plus a summary when the default user group is\n" -"updated.\n" +" Match entry by any subordinate uid in range:\n" +" ipa subid-match --subuid=2147483649\n" msgstr "" -#: ipaserver/plugins/migration.py:145 +#: ipaserver/plugins/subid.py:59 ipaserver/plugins/subid.py:62 +msgid "Subordinate id" +msgstr "" + +#: ipaserver/plugins/subid.py:60 ipaserver/plugins/subid.py:61 +msgid "Subordinate ids" +msgstr "" + +#: ipaserver/plugins/subid.py:144 +msgid "Subordinate id description" +msgstr "" + +#: ipaserver/plugins/subid.py:150 ipaserver/plugins/subid.py:468 +msgid "Owning user of subordinate id entry" +msgstr "" + +#: ipaserver/plugins/subid.py:157 +msgid "Start value for subordinate user ID (subuid) range" +msgstr "" + +#: ipaserver/plugins/subid.py:166 +msgid "Subordinate user ID count" +msgstr "" + +#: ipaserver/plugins/subid.py:175 +msgid "Start value for subordinate group ID (subgid) range" +msgstr "" + +#: ipaserver/plugins/subid.py:184 +msgid "Subordinate group ID count" +msgstr "" + +#: ipaserver/plugins/subid.py:213 #, python-format msgid "" -"Kerberos principal %s already exists. Use 'ipa user-mod' to set it manually." +"%(oname)s with with name \"%(pkey)s\" or for user \"%(uid)s\" already exists." msgstr "" -#: ipaserver/plugins/migration.py:146 +#: ipaserver/plugins/subid.py:246 #, python-format -msgid "" -"Unable to determine if Kerberos principal %s already exists. Use 'ipa user-" -"mod' to set it manually." +msgid "'%(dn)s is not a valid user" msgstr "" -#: ipaserver/plugins/migration.py:147 -msgid "" -"Failed to add user to the default group. Use 'ipa group-add-member' to add " -"manually." +#: ipaserver/plugins/subid.py:278 +msgid "subgidnumber must be equal to subuidnumber" msgstr "" -#: ipaserver/plugins/migration.py:148 -msgid "Migration of LDAP search reference is not supported." +#: ipaserver/plugins/subid.py:351 +msgid "Add a new subordinate id." msgstr "" -#: ipaserver/plugins/migration.py:149 -msgid "Malformed DN" -msgstr "" - -#: ipaserver/plugins/migration.py:194 +#: ipaserver/plugins/subid.py:352 #, python-format -msgid "%(user)s is not a POSIX user" +msgid "Added subordinate id \"%(value)s\"" msgstr "" -#: ipaserver/plugins/migration.py:461 -msgid "" -". Check GID of the existing group. Use --group-overwrite-gid option to " -"overwrite the GID" +#: ipaserver/plugins/subid.py:384 +msgid "Delete a subordinate id." msgstr "" -#: ipaserver/plugins/migration.py:476 -msgid "Invalid LDAP URI." -msgstr "" - -#: ipaserver/plugins/migration.py:678 +#: ipaserver/plugins/subid.py:385 #, python-format -msgid "%s to exclude from migration" +msgid "Deleted subordinate id \"%(value)s\"" msgstr "" -#: ipaserver/plugins/migration.py:680 -msgid "" -"search results for objects to be migrated\n" -"have been truncated by the server;\n" -"migration process might be incomplete\n" +#: ipaserver/plugins/subid.py:393 +msgid "Modify a subordinate id." msgstr "" -#: ipaserver/plugins/migration.py:769 +#: ipaserver/plugins/subid.py:394 #, python-format -msgid "" -"%(container)s LDAP search did not return any result (search base: " -"%(search_base)s, objectclass: %(objectclass)s)" +msgid "Modified subordinate id \"%(value)s\"" msgstr "" -#: ipaserver/plugins/migration.py:804 ipaserver/plugins/user.py:592 -msgid "Default group for new users not found" +#: ipaserver/plugins/subid.py:405 +msgid "Search for subordinate id." +msgstr "" + +#: ipaserver/plugins/subid.py:407 +#, python-format +msgid "%(count)d subordinate id matched" +msgid_plural "%(count)d subordinate ids matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/subid.py:440 +msgid "Display information about a subordinate id." +msgstr "" + +#: ipaserver/plugins/subid.py:458 +msgid "Generate and auto-assign subuid and subgid range to user entry" +msgstr "" + +#: ipaserver/plugins/subid.py:493 +msgid "Match users by any subordinate uid in their range" +msgstr "" + +#: ipaserver/plugins/subid.py:500 +msgid "SubUID match" +msgstr "" + +#: ipaserver/plugins/subid.py:501 +msgid "Match value for subordinate user ID" +msgstr "" + +#: ipaserver/plugins/subid.py:542 +msgid "Subordinate id statistics" +msgstr "" + +#: ipaserver/plugins/subid.py:586 +#, python-format +msgid "%(remaining)i remaining subordinate id ranges" +msgstr "" + +#: ipaserver/plugins/caacl.py:21 +msgid "" +"\n" +"Manage CA ACL rules.\n" +"\n" +"This plugin is used to define rules governing which CAs and profiles\n" +"may be used to issue certificates to particular principals or groups\n" +"of principals.\n" +"\n" +"SUBJECT PRINCIPAL SCOPE:\n" +"\n" +"For a certificate request to be allowed, the principal(s) that are\n" +"the subject of a certificate request (not necessarily the principal\n" +"actually requesting the certificate) must be included in the scope\n" +"of a CA ACL that also includes the target CA and profile.\n" +"\n" +"Users can be included by name, group or the \"all users\" category.\n" +"Hosts can be included by name, hostgroup or the \"all hosts\"\n" +"category. Services can be included by service name or the \"all\n" +"services\" category. CA ACLs may be associated with a single type of\n" +"principal, or multiple types.\n" +"\n" +"CERTIFICATE AUTHORITY SCOPE:\n" +"\n" +"A CA ACL can be associated with one or more CAs by name, or by the\n" +"\"all CAs\" category. For compatibility reasons, a CA ACL with no CA\n" +"association implies an association with the 'ipa' CA (and only this\n" +"CA).\n" +"\n" +"PROFILE SCOPE:\n" +"\n" +"A CA ACL can be associated with one or more profiles by Profile ID.\n" +"The Profile ID is a string without spaces or punctuation starting\n" +"with a letter and followed by a sequence of letters, digits or\n" +"underscore (\"_\").\n" +"\n" +"EXAMPLES:\n" +"\n" +" Create a CA ACL \"test\" that grants all users access to the\n" +" \"UserCert\" profile on all CAs:\n" +" ipa caacl-add test --usercat=all --cacat=all\n" +" ipa caacl-add-profile test --certprofiles UserCert\n" +"\n" +" Display the properties of a named CA ACL:\n" +" ipa caacl-show test\n" +"\n" +" Create a CA ACL to let user \"alice\" use the \"DNP3\" profile on \"DNP3-CA" +"\":\n" +" ipa caacl-add alice_dnp3\n" +" ipa caacl-add-ca alice_dnp3 --cas DNP3-CA\n" +" ipa caacl-add-profile alice_dnp3 --certprofiles DNP3\n" +" ipa caacl-add-user alice_dnp3 --user=alice\n" +"\n" +" Disable a CA ACL:\n" +" ipa caacl-disable test\n" +"\n" +" Remove a CA ACL:\n" +" ipa caacl-del test\n" +msgstr "" + +#: ipaserver/plugins/caacl.py:87 ipaserver/plugins/caacl.py:165 +#: ipaserver/plugins/caacl.py:263 +msgid "CA ACL" +msgstr "" + +#: ipaserver/plugins/caacl.py:88 ipaserver/plugins/caacl.py:164 +msgid "CA ACLs" +msgstr "" + +#: ipaserver/plugins/caacl.py:183 +msgid "CA category" +msgstr "" + +#: ipaserver/plugins/caacl.py:184 +msgid "CA category the ACL applies to" +msgstr "" + +#: ipaserver/plugins/caacl.py:212 +msgid "CAs" +msgstr "" + +#: ipaserver/plugins/caacl.py:246 +#, python-format +msgid "Added CA ACL \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/caacl.py:258 +#, python-format +msgid "Deleted CA ACL \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/caacl.py:265 +msgid "default CA ACL can be only disabled" +msgstr "" + +#: ipaserver/plugins/caacl.py:273 +#, python-format +msgid "Modified CA ACL \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/caacl.py:285 +msgid "CA category cannot be set to 'all' while there are allowed CAs" +msgstr "" + +#: ipaserver/plugins/caacl.py:290 +msgid "" +"profile category cannot be set to 'all' while there are allowed profiles" +msgstr "" + +#: ipaserver/plugins/caacl.py:312 +#, python-format +msgid "%(count)d CA ACL matched" +msgid_plural "%(count)d CA ACLs matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/caacl.py:325 +#, python-format +msgid "Enabled CA ACL \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/caacl.py:354 +#, python-format +msgid "Disabled CA ACL \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/caacl.py:385 +#, python-format +msgid "%i user or group added." +msgstr "" + +#: ipaserver/plugins/caacl.py:386 +#, python-format +msgid "%i users or groups added." +msgstr "" + +#: ipaserver/plugins/caacl.py:407 +#, python-format +msgid "%i user or group removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:408 +#, python-format +msgid "%i users or groups removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:417 +#, python-format +msgid "%i host or hostgroup added." +msgstr "" + +#: ipaserver/plugins/caacl.py:418 +#, python-format +msgid "%i hosts or hostgroups added." +msgstr "" + +#: ipaserver/plugins/caacl.py:439 +#, python-format +msgid "%i host or hostgroup removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:440 +#, python-format +msgid "%i hosts or hostgroups removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:448 +#, python-format +msgid "%i service added." +msgstr "" + +#: ipaserver/plugins/caacl.py:448 +#, python-format +msgid "%i services added." +msgstr "" + +#: ipaserver/plugins/caacl.py:468 +#, python-format +msgid "%i service removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:468 +#, python-format +msgid "%i services removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:488 +#, python-format +msgid "%i profile added." +msgstr "" + +#: ipaserver/plugins/caacl.py:488 +#, python-format +msgid "%i profiles added." +msgstr "" + +#: ipaserver/plugins/caacl.py:499 +msgid "profiles cannot be added when profile category='all'" +msgstr "" + +#: ipaserver/plugins/caacl.py:510 +#, python-format +msgid "%i profile removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:510 +#, python-format +msgid "%i profiles removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:515 +msgid "Add CAs to a CA ACL." +msgstr "" + +#: ipaserver/plugins/caacl.py:520 +#, python-format +msgid "%i CA added." +msgstr "" + +#: ipaserver/plugins/caacl.py:520 +#, python-format +msgid "%i CAs added." +msgstr "" + +#: ipaserver/plugins/caacl.py:531 +msgid "CAs cannot be added when CA category='all'" +msgstr "" + +#: ipaserver/plugins/caacl.py:537 +msgid "Remove CAs from a CA ACL." +msgstr "" + +#: ipaserver/plugins/caacl.py:542 +#, python-format +msgid "%i CA removed." +msgstr "" + +#: ipaserver/plugins/caacl.py:542 +#, python-format +msgid "%i CAs removed." +msgstr "" + +#: ipaserver/plugins/dnsserver.py:35 +msgid "" +"\n" +"DNS server configuration\n" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:37 +msgid "" +"\n" +"Manipulate DNS server configuration\n" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:41 +msgid "" +"\n" +" Show configuration of a specific DNS server:\n" +" ipa dnsserver-show\n" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:44 +msgid "" +"\n" +" Update configuration of a specific DNS server:\n" +" ipa dnsserver-mod\n" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:62 +msgid "DNS server" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:63 +msgid "DNS servers" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:71 +msgid "DNS Servers" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:72 +msgid "DNS Server" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:113 +msgid "DNS Server name" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:119 +msgid "SOA mname override" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:120 +msgid "SOA mname (authoritative server) override" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:126 +msgid "Forwarders" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:128 +msgid "" +"Per-server forwarders. A custom port can be specified for each forwarder " +"using a standard format \"IP_ADDRESS port PORT\"" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:138 +msgid "" +"Per-server conditional forwarding policy. Set to \"none\" to disable " +"forwarding to global forwarder for this zone. In that case, conditional zone " +"forwarders are disregarded." +msgstr "" + +#: ipaserver/plugins/dnsserver.py:154 +msgid "Modify DNS server configuration" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:157 +#, python-format +msgid "Modified DNS server \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:162 +msgid "Search for DNS servers." +msgstr "" + +#: ipaserver/plugins/dnsserver.py:166 +#, python-format +msgid "%(count)d DNS server matched" +msgid_plural "%(count)d DNS servers matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/dnsserver.py:176 +msgid "IPA DNS Server is not installed" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:183 +msgid "Display configuration of a DNS server." +msgstr "" + +#: ipaserver/plugins/dnsserver.py:193 +msgid "Add a new DNS server." +msgstr "" + +#: ipaserver/plugins/dnsserver.py:196 +#, python-format +msgid "Added new DNS server \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:205 +msgid "Delete a DNS server" +msgstr "" + +#: ipaserver/plugins/dnsserver.py:208 +#, python-format +msgid "Deleted DNS server \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/hbacsvc.py:28 +msgid "" +"\n" +"HBAC Services\n" +"\n" +"The PAM services that HBAC can control access to. The name used here\n" +"must match the service name that PAM is evaluating.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Add a new HBAC service:\n" +" ipa hbacsvc-add tftp\n" +"\n" +" Modify an existing HBAC service:\n" +" ipa hbacsvc-mod --desc=\"TFTP service\" tftp\n" +"\n" +" Search for HBAC services. This example will return two results, the FTP\n" +" service and the newly-added tftp service:\n" +" ipa hbacsvc-find ftp\n" +"\n" +" Delete an HBAC service:\n" +" ipa hbacsvc-del tftp\n" +"\n" +msgstr "" + +#: ipaserver/plugins/hbacsvc.py:62 +msgid "HBAC services" +msgstr "" + +#: ipaserver/plugins/hbacsvc.py:96 +msgid "HBAC Service" +msgstr "" + +#: ipaserver/plugins/hbacsvc.py:119 +#, python-format +msgid "Added HBAC service \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/hbacsvc.py:127 +#, python-format +msgid "Deleted HBAC service \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/hbacsvc.py:135 +#, python-format +msgid "Modified HBAC service \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/hbacsvc.py:144 +#, python-format +msgid "%(count)d HBAC service matched" +msgid_plural "%(count)d HBAC services matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/selinuxusermap.py:89 +msgid "HBAC rule and local members cannot both be set" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:128 +msgid "Invalid SELinux user name, must match {}" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:142 +#, python-brace-format +msgid "Invalid MLS value, must match {mls}, where max level {mls_max}" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:147 +#, python-brace-format +msgid "Invalid MCS value, must match {mcs}, where max category {mcs_max}" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:161 +msgid "SELinux user map list not found in configuration" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:166 +#, python-format +msgid "SELinux user %(user)s not found in ordering list (in config)" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:176 +msgid "SELinux User Map rule" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:177 +msgid "SELinux User Map rules" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:233 +msgid "SELinux User Maps" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:234 +msgid "SELinux User Map" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:309 +#, python-format +msgid "HBAC rule %(rule)s not found" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:330 +#, python-format +msgid "Added SELinux User Map \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:368 +#, python-format +msgid "Deleted SELinux User Map \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:376 +#, python-format +msgid "Modified SELinux User Map \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:449 +#, python-format +msgid "%(count)d SELinux User Map matched" +msgid_plural "%(count)d SELinux User Maps matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/selinuxusermap.py:499 +#, python-format +msgid "Enabled SELinux User Map \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/selinuxusermap.py:529 +#, python-format +msgid "Disabled SELinux User Map \"%(value)s\"" msgstr "" #: ipaserver/plugins/netgroup.py:103 @@ -23317,714 +24467,48 @@ msgid_plural "%(count)d netgroups matched" msgstr[0] "" msgstr[1] "" -#: ipaserver/plugins/otp.py:7 -msgid "One time password commands" +#: ipaserver/plugins/selfservice.py:68 +msgid "self service permission" msgstr "" -#: ipaserver/plugins/otpconfig.py:57 -msgid "OTP configuration options" +#: ipaserver/plugins/selfservice.py:69 +msgid "self service permissions" msgstr "" -#: ipaserver/plugins/otpconfig.py:80 ipaserver/plugins/otpconfig.py:81 -msgid "OTP Configuration" +#: ipaserver/plugins/selfservice.py:70 +msgid "Self Service Permissions" msgstr "" -#: ipaserver/plugins/otptoken.py:42 -msgid "" -"\n" -"OTP Tokens\n" +#: ipaserver/plugins/selfservice.py:71 +msgid "Self Service Permission" msgstr "" -#: ipaserver/plugins/otptoken.py:44 -msgid "" -"\n" -"Manage OTP tokens.\n" -msgstr "" - -#: ipaserver/plugins/otptoken.py:46 -msgid "" -"\n" -"IPA supports the use of OTP tokens for multi-factor authentication. This\n" -"code enables the management of OTP tokens.\n" -msgstr "" - -#: ipaserver/plugins/otptoken.py:51 -msgid "" -"\n" -" Add a new token:\n" -" ipa otptoken-add --type=totp --owner=jdoe --desc=\"My soft token\"\n" -msgstr "" - -#: ipaserver/plugins/otptoken.py:54 -msgid "" -"\n" -" Examine the token:\n" -" ipa otptoken-show a93db710-a31a-4639-8647-f15b2c70b78a\n" -msgstr "" - -#: ipaserver/plugins/otptoken.py:57 -msgid "" -"\n" -" Change the vendor:\n" -" ipa otptoken-mod a93db710-a31a-4639-8647-f15b2c70b78a --vendor=\"Red Hat" -"\"\n" -msgstr "" - -#: ipaserver/plugins/otptoken.py:60 -msgid "" -"\n" -" Delete a token:\n" -" ipa otptoken-del a93db710-a31a-4639-8647-f15b2c70b78a\n" -msgstr "" - -#: ipaserver/plugins/otptoken.py:137 -msgid "OTP token" -msgstr "" - -#: ipaserver/plugins/otptoken.py:138 -msgid "OTP tokens" -msgstr "" - -#: ipaserver/plugins/otptoken.py:154 -msgid "OTP Tokens" -msgstr "" - -#: ipaserver/plugins/otptoken.py:155 -msgid "OTP Token" -msgstr "" - -#: ipaserver/plugins/otptoken.py:272 -msgid "URI" -msgstr "" - -#: ipaserver/plugins/otptoken.py:281 +#: ipaserver/plugins/selfservice.py:124 #, python-format -msgid "Added OTP token \"%(value)s\"" +msgid "Added selfservice \"%(value)s\"" msgstr "" -#: ipaserver/plugins/otptoken.py:335 -msgid "cannot be empty" -msgstr "" - -#: ipaserver/plugins/otptoken.py:367 +#: ipaserver/plugins/selfservice.py:146 #, python-format -msgid "Deleted OTP token \"%(value)s\"" +msgid "Deleted selfservice \"%(value)s\"" msgstr "" -#: ipaserver/plugins/otptoken.py:373 +#: ipaserver/plugins/selfservice.py:163 #, python-format -msgid "Modified OTP token \"%(value)s\"" +msgid "Modified selfservice \"%(value)s\"" msgstr "" -#: ipaserver/plugins/otptoken.py:422 +#: ipaserver/plugins/selfservice.py:185 #, python-format -msgid "%(count)d OTP token matched" -msgid_plural "%(count)d OTP tokens matched" +msgid "%(count)d selfservice matched" +msgid_plural "%(count)d selfservices matched" msgstr[0] "" msgstr[1] "" -#: ipaserver/plugins/passwd.py:40 -msgid "" -"\n" -"Set a user's password\n" -"\n" -"If someone other than a user changes that user's password (e.g., Helpdesk\n" -"resets it) then the password will need to be changed the first time it\n" -"is used. This is so the end-user is the only one who knows the password.\n" -"\n" -"The IPA password policy controls how often a password may be changed,\n" -"what strength requirements exist, and the length of the password history.\n" -"\n" -"If the user authentication method is set to password+OTP, the user should\n" -"pass the --otp option when resetting the password.\n" -"\n" -"EXAMPLES:\n" -"\n" -" To reset your own password:\n" -" ipa passwd\n" -"\n" -" To reset your own password when password+OTP is set as authentication " -"method:\n" -" ipa passwd --otp\n" -"\n" -" To change another user's password:\n" -" ipa passwd tuser1\n" +#: ipaserver/plugins/sudo.py:7 +msgid "commands for controlling sudo configuration" msgstr "" -#: ipaserver/plugins/passwd.py:114 -msgid "The OTP if the user has a token configured" -msgstr "" - -#: ipaserver/plugins/passwd.py:120 -#, python-format -msgid "Changed password for \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/permission.py:40 -msgid "" -"\n" -"Permissions\n" -msgstr "" - -#: ipaserver/plugins/permission.py:42 -msgid "" -"\n" -"A permission enables fine-grained delegation of rights. A permission is\n" -"a human-readable wrapper around a 389-ds Access Control Rule,\n" -"or instruction (ACI).\n" -"A permission grants the right to perform a specific task such as adding a\n" -"user, modifying a group, etc.\n" -msgstr "" - -#: ipaserver/plugins/permission.py:48 -msgid "" -"\n" -"A permission may not contain other permissions.\n" -msgstr "" - -#: ipaserver/plugins/permission.py:50 -msgid "" -"\n" -"* A permission grants access to read, write, add, delete, read, search,\n" -" or compare.\n" -"* A privilege combines similar permissions (for example all the permissions\n" -" needed to add a user).\n" -"* A role grants a set of privileges to users, groups, hosts or hostgroups.\n" -msgstr "" - -#: ipaserver/plugins/permission.py:56 -msgid "" -"\n" -"A permission is made up of a number of different parts:\n" -"\n" -"1. The name of the permission.\n" -"2. The target of the permission.\n" -"3. The rights granted by the permission.\n" -msgstr "" - -#: ipaserver/plugins/permission.py:62 -msgid "" -"\n" -"Rights define what operations are allowed, and may be one or more\n" -"of the following:\n" -"1. write - write one or more attributes\n" -"2. read - read one or more attributes\n" -"3. search - search on one or more attributes\n" -"4. compare - compare one or more attributes\n" -"5. add - add a new entry to the tree\n" -"6. delete - delete an existing entry\n" -"7. all - all permissions are granted\n" -msgstr "" - -#: ipaserver/plugins/permission.py:72 -msgid "" -"\n" -"Note the distinction between attributes and entries. The permissions are\n" -"independent, so being able to add a user does not mean that the user will\n" -"be editable.\n" -msgstr "" - -#: ipaserver/plugins/permission.py:76 -msgid "" -"\n" -"There are a number of allowed targets:\n" -"1. subtree: a DN; the permission applies to the subtree under this DN\n" -"2. target filter: an LDAP filter\n" -"3. target: DN with possible wildcards, specifies entries permission applies " -"to\n" -msgstr "" - -#: ipaserver/plugins/permission.py:81 -msgid "" -"\n" -"Additionally, there are the following convenience options.\n" -"Setting one of these options will set the corresponding attribute(s).\n" -"1. type: a type of object (user, group, etc); sets subtree and target " -"filter.\n" -"2. memberof: apply to members of a group; sets target filter\n" -"3. targetgroup: grant access to modify a specific group (such as granting\n" -" the rights to manage group membership); sets target.\n" -msgstr "" - -#: ipaserver/plugins/permission.py:88 -msgid "" -"\n" -"Managed permissions\n" -msgstr "" - -#: ipaserver/plugins/permission.py:90 -msgid "" -"\n" -"Permissions that come with IPA by default can be so-called \"managed\"\n" -"permissions. These have a default set of attributes they apply to,\n" -"but the administrator can add/remove individual attributes to/from the set.\n" -msgstr "" - -#: ipaserver/plugins/permission.py:94 -msgid "" -"\n" -"Deleting or renaming a managed permission, as well as changing its target,\n" -"is not allowed.\n" -msgstr "" - -#: ipaserver/plugins/permission.py:99 -msgid "" -"\n" -" Add a permission that grants the creation of users:\n" -" ipa permission-add --type=user --permissions=add \"Add Users\"\n" -msgstr "" - -#: ipaserver/plugins/permission.py:102 -msgid "" -"\n" -" Add a permission that grants the ability to manage group membership:\n" -" ipa permission-add --attrs=member --permissions=write --type=group " -"\"Manage Group Members\"\n" -msgstr "" - -#: ipaserver/plugins/permission.py:129 -msgid "must be enclosed in parentheses" -msgstr "" - -#: ipaserver/plugins/permission.py:149 -#, python-format -msgid "\"%s\" is not an object type" -msgstr "" - -#: ipaserver/plugins/permission.py:151 ipaserver/plugins/permission.py:897 -#, python-format -msgid "\"%s\" is not a valid permission type" -msgstr "" - -#: ipaserver/plugins/permission.py:353 -#, python-format -msgid "Deprecated; use %s" -msgstr "" - -#: ipaserver/plugins/permission.py:370 -#, python-format -msgid "Permission with unknown flag %s may not be modified or removed" -msgstr "" - -#: ipaserver/plugins/permission.py:374 -msgid "A SYSTEM permission may not be modified or removed" -msgstr "" - -#: ipaserver/plugins/permission.py:624 -#, python-format -msgid "Entry %s not found" -msgstr "" - -#: ipaserver/plugins/permission.py:716 -#, python-format -msgid "The ACI for permission %(name)s was not found in %(dn)s " -msgstr "" - -#: ipaserver/plugins/permission.py:820 -msgid "" -"cannot specify full target filter and extra target filter simultaneously" -msgstr "" - -#: ipaserver/plugins/permission.py:843 -#, python-format -msgid "option was renamed; use %s" -msgstr "" - -#: ipaserver/plugins/permission.py:847 -#, python-format -msgid "Cannot use %(old_name)s with %(new_name)s" -msgstr "" - -#: ipaserver/plugins/permission.py:861 ipaserver/plugins/permission.py:876 -#, python-format -msgid "%s: group not found" -msgstr "" - -#: ipaserver/plugins/permission.py:871 -msgid "target and targetgroup are mutually exclusive" -msgstr "" - -#: ipaserver/plugins/permission.py:892 -msgid "subtree and type are mutually exclusive" -msgstr "" - -#: ipaserver/plugins/permission.py:930 -msgid "Bad search filter" -msgstr "" - -#: ipaserver/plugins/permission.py:940 -#, python-format -msgid "Entry %s does not exist" -msgstr "" - -#: ipaserver/plugins/permission.py:949 -msgid "" -"there must be at least one target entry specifier (e.g. target, " -"targetfilter, attrs)" -msgstr "" - -#: ipaserver/plugins/permission.py:961 ipaserver/plugins/permission.py:989 -#, python-format -msgid "Added permission \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/permission.py:1014 -msgid "attrs and included attributes are mutually exclusive" -msgstr "" - -#: ipaserver/plugins/permission.py:1046 -#, python-format -msgid "Cannot store permission ACI to %s" -msgstr "" - -#: ipaserver/plugins/permission.py:1057 -#, python-format -msgid "Deleted permission \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/permission.py:1077 -msgid "cannot delete managed permissions" -msgstr "" - -#: ipaserver/plugins/permission.py:1083 -#, python-format -msgid "ACI of permission %s was not found" -msgstr "" - -#: ipaserver/plugins/permission.py:1092 -#, python-format -msgid "Modified permission \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/permission.py:1125 -msgid "cannot rename managed permissions" -msgstr "" - -#: ipaserver/plugins/permission.py:1132 ipaserver/plugins/permission.py:1136 -msgid "not modifiable on managed permissions" -msgstr "" - -#: ipaserver/plugins/permission.py:1143 -msgid "only available on managed permissions" -msgstr "" - -#: ipaserver/plugins/permission.py:1150 ipaserver/plugins/permission.py:1276 -msgid "attrs and included/excluded attributes are mutually exclusive" -msgstr "" - -#: ipaserver/plugins/permission.py:1161 -msgid "cannot set bindtype for a permission that is assigned to a privilege" -msgstr "" - -#: ipaserver/plugins/permission.py:1265 -#, python-format -msgid "%(count)d permission matched" -msgid_plural "%(count)d permissions matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/pkinit.py:13 -msgid "" -"\n" -"Kerberos PKINIT feature status reporting tools.\n" -"\n" -"Report IPA masters on which Kerberos PKINIT is enabled or disabled\n" -"\n" -"EXAMPLES:\n" -" List PKINIT status on all masters:\n" -" ipa pkinit-status\n" -"\n" -" Check PKINIT status on `ipa.example.com`:\n" -" ipa pkinit-status --server ipa.example.com\n" -"\n" -" List all IPA masters with disabled PKINIT:\n" -" ipa pkinit-status --status='disabled'\n" -"\n" -"For more info about PKINIT support see:\n" -"\n" -"https://www.freeipa.org/page/V4/Kerberos_PKINIT\n" -msgstr "" - -#: ipaserver/plugins/pkinit.py:39 -msgid "pkinit" -msgstr "" - -#: ipaserver/plugins/pkinit.py:53 -msgid "PKINIT status" -msgstr "" - -#: ipaserver/plugins/pkinit.py:54 -msgid "Whether PKINIT is enabled or disabled" -msgstr "" - -#: ipaserver/plugins/pkinit.py:63 -msgid "Report PKINIT status on the IPA masters" -msgstr "" - -#: ipaserver/plugins/pkinit.py:65 -#, python-format -msgid "%(count)s server matched" -msgid_plural "%(count)s servers matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/privilege.py:76 -#, python-format -msgid "" -"cannot add permission \"%(perm)s\" with bindtype \"%(bindtype)s\" to a " -"privilege" -msgstr "" - -#: ipaserver/plugins/privilege.py:149 -msgid "Privilege" -msgstr "" - -#: ipaserver/plugins/privilege.py:169 -#, python-format -msgid "Added privilege \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/privilege.py:176 -#, python-format -msgid "Deleted privilege \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/privilege.py:183 -#, python-format -msgid "Modified privilege \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/privilege.py:191 -#, python-format -msgid "%(count)d privilege matched" -msgid_plural "%(count)d privileges matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/radiusproxy.py:35 -msgid "" -"\n" -"RADIUS Proxy Servers\n" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:37 -msgid "" -"\n" -"Manage RADIUS Proxy Servers.\n" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:39 -msgid "" -"\n" -"IPA supports the use of an external RADIUS proxy server for krb5 OTP\n" -"authentications. This permits a great deal of flexibility when\n" -"integrating with third-party authentication services.\n" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:45 -msgid "" -"\n" -" Add a new server:\n" -" ipa radiusproxy-add MyRADIUS --server=radius.example.com:1812\n" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:48 -msgid "" -"\n" -" Find all servers whose entries include the string \"example.com\":\n" -" ipa radiusproxy-find example.com\n" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:51 -msgid "" -"\n" -" Examine the configuration:\n" -" ipa radiusproxy-show MyRADIUS\n" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:54 -msgid "" -"\n" -" Change the secret:\n" -" ipa radiusproxy-mod MyRADIUS --secret\n" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:57 -msgid "" -"\n" -" Delete a configuration:\n" -" ipa radiusproxy-del MyRADIUS\n" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:68 -msgid "invalid attribute name" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:80 -msgid "invalid port number" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:98 -msgid "RADIUS proxy server" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:99 -msgid "RADIUS proxy servers" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:106 -msgid "RADIUS Servers" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:107 -msgid "RADIUS Server" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:172 -#, python-format -msgid "Added RADIUS proxy server \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:177 -#, python-format -msgid "Deleted RADIUS proxy server \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:182 -#, python-format -msgid "Modified RADIUS proxy server \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/radiusproxy.py:188 -#, python-format -msgid "%(count)d RADIUS proxy server matched" -msgid_plural "%(count)d RADIUS proxy servers matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/realmdomains.py:34 -msgid "" -"\n" -"Realm domains\n" -"\n" -"Manage the list of domains associated with IPA realm.\n" -"\n" -"This list is useful for Domain Controllers from other realms which have\n" -"established trust with this IPA realm. They need the information to know\n" -"which request should be forwarded to KDC of this IPA realm.\n" -"\n" -"Automatic management: a domain is automatically added to the realm domains\n" -"list when a new DNS Zone managed by IPA is created. Same applies for " -"deletion.\n" -"\n" -"Externally managed DNS: domains which are not managed in IPA server DNS\n" -"need to be manually added to the list using ipa realmdomains-mod command.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Display the current list of realm domains:\n" -" ipa realmdomains-show\n" -"\n" -" Replace the list of realm domains:\n" -" ipa realmdomains-mod --domain=example.com\n" -" ipa realmdomains-mod --domain={example1.com,example2.com,example3.com}\n" -"\n" -" Add a domain to the list of realm domains:\n" -" ipa realmdomains-mod --add-domain=newdomain.com\n" -"\n" -" Delete a domain from the list of realm domains:\n" -" ipa realmdomains-mod --del-domain=olddomain.com\n" -msgstr "" - -#: ipaserver/plugins/realmdomains.py:85 -msgid "Realm domains" -msgstr "" - -#: ipaserver/plugins/realmdomains.py:134 -msgid "" -"\n" -" Modify realm domains\n" -"\n" -" DNS check: When manually adding a domain to the list, a DNS check is\n" -" performed by default. It ensures that the domain is associated with\n" -" the IPA realm, by checking whether the domain has a _kerberos TXT " -"record\n" -" containing the IPA realm name. This check can be skipped by specifying\n" -" --force option.\n" -"\n" -" Removal: when a realm domain which has a matching DNS zone managed by\n" -" IPA is being removed, a corresponding _kerberos TXT record in the zone " -"is\n" -" removed automatically as well. Other records in the zone or the zone\n" -" itself are not affected.\n" -" " -msgstr "" - -#: ipaserver/plugins/realmdomains.py:177 -#, python-format -msgid "" -"DNS zone for each realmdomain must contain SOA or NS records. No records " -"found for: %s" -msgstr "" - -#: ipaserver/plugins/realmdomains.py:203 -#, python-format -msgid "The following domains do not belong to this realm: %(domains)s" -msgstr "" - -#: ipaserver/plugins/realmdomains.py:218 -#, python-format -msgid "" -"The realm of the following domains could not be detected: %(domains)s. If " -"these are domains that belong to the this realm, please create a _kerberos " -"TXT record containing \"%(realm)s\" in each of them." -msgstr "" - -#: ipaserver/plugins/realmdomains.py:241 -msgid "" -"The --domain option cannot be used together with --add-domain or --del-" -"domain. Use --domain to specify the whole realm domain list explicitly, to " -"add/remove individual domains, use --add-domain/del-domain." -msgstr "" - -#: ipaserver/plugins/realmdomains.py:252 -msgid "IPA server domain cannot be omitted" -msgstr "" - -#: ipaserver/plugins/realmdomains.py:274 -msgid "IPA server domain cannot be deleted" -msgstr "" - -#: ipaserver/plugins/role.py:82 ipaserver/plugins/serverrole.py:186 -msgid "roles" -msgstr "" - -#: ipaserver/plugins/role.py:143 -msgid "Role" -msgstr "" - -#: ipaserver/plugins/role.py:164 -#, python-format -msgid "Added role \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/role.py:172 -#, python-format -msgid "Deleted role \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/role.py:180 -#, python-format -msgid "Modified role \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/role.py:189 -#, python-format -msgid "%(count)d role matched" -msgid_plural "%(count)d roles matched" -msgstr[0] "" -msgstr[1] "" - #: ipaserver/plugins/schema.py:24 msgid "" "\n" @@ -24063,6 +24547,11 @@ msgstr "" msgid "Include in" msgstr "" +#: ipaserver/plugins/schema.py:122 ipaserver/plugins/baseldap.py:1957 +#, python-format +msgid "Results should contain primary key attribute only (\"%s\")" +msgstr "" + #: ipaserver/plugins/schema.py:135 msgid "Help topic" msgstr "" @@ -24079,6 +24568,13 @@ msgstr "" msgid "Method name" msgstr "" +#: ipaserver/plugins/schema.py:257 ipaserver/plugins/schema.py:333 +#: ipaserver/plugins/schema.py:424 ipaserver/plugins/schema.py:661 +#: ipaserver/plugins/schema.py:754 ipaserver/plugins/baseldap.py:660 +#, python-format +msgid "%(pkey)s: %(oname)s not found" +msgstr "" + #: ipaserver/plugins/schema.py:270 msgid "Display information about a command." msgstr "" @@ -24198,432 +24694,6 @@ msgstr "" msgid "Fingerprint of schema cached by client" msgstr "" -#: ipaserver/plugins/selfservice.py:68 -msgid "self service permission" -msgstr "" - -#: ipaserver/plugins/selfservice.py:69 -msgid "self service permissions" -msgstr "" - -#: ipaserver/plugins/selfservice.py:70 -msgid "Self Service Permissions" -msgstr "" - -#: ipaserver/plugins/selfservice.py:71 -msgid "Self Service Permission" -msgstr "" - -#: ipaserver/plugins/selfservice.py:124 -#, python-format -msgid "Added selfservice \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/selfservice.py:146 -#, python-format -msgid "Deleted selfservice \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/selfservice.py:163 -#, python-format -msgid "Modified selfservice \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/selfservice.py:185 -#, python-format -msgid "%(count)d selfservice matched" -msgid_plural "%(count)d selfservices matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/selinuxusermap.py:89 -msgid "HBAC rule and local members cannot both be set" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:128 -msgid "Invalid SELinux user name, must match {}" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:142 -#, python-brace-format -msgid "Invalid MLS value, must match {mls}, where max level {mls_max}" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:147 -#, python-brace-format -msgid "Invalid MCS value, must match {mcs}, where max category {mcs_max}" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:161 -msgid "SELinux user map list not found in configuration" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:166 -#, python-format -msgid "SELinux user %(user)s not found in ordering list (in config)" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:176 -msgid "SELinux User Map rule" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:177 -msgid "SELinux User Map rules" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:233 -msgid "SELinux User Maps" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:234 -msgid "SELinux User Map" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:309 -#, python-format -msgid "HBAC rule %(rule)s not found" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:330 -#, python-format -msgid "Added SELinux User Map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:368 -#, python-format -msgid "Deleted SELinux User Map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:376 -#, python-format -msgid "Modified SELinux User Map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:449 -#, python-format -msgid "%(count)d SELinux User Map matched" -msgid_plural "%(count)d SELinux User Maps matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/selinuxusermap.py:499 -#, python-format -msgid "Enabled SELinux User Map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/selinuxusermap.py:529 -#, python-format -msgid "Disabled SELinux User Map \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/serverrole.py:13 -msgid "" -"\n" -"IPA server roles\n" -msgstr "" - -#: ipaserver/plugins/serverrole.py:15 -msgid "" -"\n" -"Get status of roles (DNS server, CA, etc.) provided by IPA masters.\n" -msgstr "" - -#: ipaserver/plugins/serverrole.py:17 -msgid "" -"\n" -"The status of a role is either enabled, configured, or absent.\n" -msgstr "" - -#: ipaserver/plugins/serverrole.py:21 -msgid "" -"\n" -" Show status of 'DNS server' role on a server:\n" -" ipa server-role-show ipa.example.com \"DNS server\"\n" -msgstr "" - -#: ipaserver/plugins/serverrole.py:24 -msgid "" -"\n" -" Show status of all roles containing 'AD' on a server:\n" -" ipa server-role-find --server ipa.example.com --role=\"AD trust " -"controller\"\n" -msgstr "" - -#: ipaserver/plugins/serverrole.py:27 -msgid "" -"\n" -" Show status of all configured roles on a server:\n" -" ipa server-role-find ipa.example.com\n" -msgstr "" - -#: ipaserver/plugins/serverrole.py:30 -msgid "" -"\n" -" Show implicit IPA master role:\n" -" ipa server-role-find --include-master\n" -msgstr "" - -#: ipaserver/plugins/serverrole.py:46 -msgid "server role" -msgstr "" - -#: ipaserver/plugins/serverrole.py:47 -msgid "server roles" -msgstr "" - -#: ipaserver/plugins/serverrole.py:51 -msgid "IPA Server Roles" -msgstr "" - -#: ipaserver/plugins/serverrole.py:52 -msgid "IPA Server Role" -msgstr "" - -#: ipaserver/plugins/serverrole.py:65 -msgid "IPA server role name" -msgstr "" - -#: ipaserver/plugins/serverrole.py:71 -msgid "Role status" -msgstr "" - -#: ipaserver/plugins/serverrole.py:72 -msgid "Status of the role" -msgstr "" - -#: ipaserver/plugins/serverrole.py:89 -msgid "Show role status on a server" -msgstr "" - -#: ipaserver/plugins/serverrole.py:113 -msgid "Find a server role on a server(s)" -msgstr "" - -#: ipaserver/plugins/serverrole.py:118 -#, python-format -msgid "%(count)s server role matched" -msgid_plural "%(count)s server roles matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/serverrole.py:139 -msgid "Include IPA master entries" -msgstr "" - -#: ipaserver/plugins/serverrole.py:192 -msgid "IPA role name" -msgstr "" - -#: ipaserver/plugins/serverroles.py:84 -#, python-brace-format -msgid "{role}: role not found" -msgstr "" - -#: ipaserver/plugins/serverroles.py:178 -#, python-brace-format -msgid "{attr}: no such attribute" -msgstr "" - -#: ipaserver/plugins/service.py:60 -msgid "" -"\n" -"Services\n" -"\n" -"A IPA service represents a service that runs on a host. The IPA service\n" -"record can store a Kerberos principal, an SSL certificate, or both.\n" -"\n" -"An IPA service can be managed directly from a machine, provided that\n" -"machine has been given the correct permission. This is true even for\n" -"machines other than the one the service is associated with. For example,\n" -"requesting an SSL certificate using the host service principal credentials\n" -"of the host. To manage a service using host credentials you need to\n" -"kinit as the host:\n" -"\n" -" # kinit -kt /etc/krb5.keytab host/ipa.example.com@EXAMPLE.COM\n" -"\n" -"Adding an IPA service allows the associated service to request an SSL\n" -"certificate or keytab, but this is performed as a separate step; they\n" -"are not produced as a result of adding the service.\n" -"\n" -"Only the public aspect of a certificate is stored in a service record;\n" -"the private key is not stored.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a new IPA service:\n" -" ipa service-add HTTP/web.example.com\n" -"\n" -" Allow a host to manage an IPA service certificate:\n" -" ipa service-add-host --hosts=web.example.com HTTP/web.example.com\n" -" ipa role-add-member --hosts=web.example.com certadmin\n" -"\n" -" Override a default list of supported PAC types for the service:\n" -" ipa service-mod HTTP/web.example.com --pac-type=MS-PAC\n" -"\n" -" A typical use case where overriding the PAC type is needed is NFS.\n" -" Currently the related code in the Linux kernel can only handle Kerberos\n" -" tickets up to a maximal size. Since the PAC data can become quite large " -"it\n" -" is recommended to set --pac-type=NONE for NFS services.\n" -"\n" -" Delete an IPA service:\n" -" ipa service-del HTTP/web.example.com\n" -"\n" -" Find all IPA services associated with a host:\n" -" ipa service-find web.example.com\n" -"\n" -" Find all HTTP services:\n" -" ipa service-find HTTP\n" -"\n" -" Disable the service Kerberos key and SSL certificate:\n" -" ipa service-disable HTTP/web.example.com\n" -"\n" -" Request a certificate for an IPA service:\n" -" ipa cert-request --principal=HTTP/web.example.com example.csr\n" -msgstr "" - -#: ipaserver/plugins/service.py:113 -msgid "" -"\n" -" Allow user to create a keytab:\n" -" ipa service-allow-create-keytab HTTP/web.example.com --users=tuser1\n" -msgstr "" - -#: ipaserver/plugins/service.py:116 -msgid "" -"\n" -" Generate and retrieve a keytab for an IPA service:\n" -" ipa-getkeytab -s ipa.example.com -p HTTP/web.example.com -k /etc/httpd/" -"httpd.keytab\n" -"\n" -msgstr "" - -#: ipaserver/plugins/service.py:180 -msgid "Trusted to authenticate as user" -msgstr "" - -#: ipaserver/plugins/service.py:181 -msgid "The service is allowed to authenticate on behalf of a client" -msgstr "" - -#: ipaserver/plugins/service.py:226 -#, python-format -msgid "authentication indicators not allowed in service \"%s\"" -msgstr "" - -#: ipaserver/plugins/service.py:242 -msgid "Malformed principal" -msgstr "" - -#: ipaserver/plugins/service.py:321 -msgid "{} is required by the IPA master" -msgstr "" - -#: ipaserver/plugins/service.py:395 -msgid "service" -msgstr "" - -#: ipaserver/plugins/service.py:396 -msgid "services" -msgstr "" - -#: ipaserver/plugins/service.py:512 -msgid "Service principal alias" -msgstr "" - -#: ipaserver/plugins/service.py:520 -msgid "Base-64 encoded service certificate" -msgstr "" - -#: ipaserver/plugins/service.py:596 -msgid "NONE value cannot be combined with other PAC types" -msgstr "" - -#: ipaserver/plugins/service.py:648 -msgid "Add a new IPA service." -msgstr "" - -#: ipaserver/plugins/service.py:650 ipaserver/plugins/service.py:719 -#, python-format -msgid "Added service \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/service.py:656 -msgid "force principal name even if host not in DNS" -msgstr "" - -#: ipaserver/plugins/service.py:659 -msgid "Skip host check" -msgstr "" - -#: ipaserver/plugins/service.py:660 -msgid "" -"force service to be created even when host object does not exist to manage it" -msgstr "" - -#: ipaserver/plugins/service.py:678 ipaserver/plugins/service.py:787 -#, python-format -msgid "The host '%s' does not exist to add a service to." -msgstr "" - -#: ipaserver/plugins/service.py:717 -msgid "Add a new SMB service." -msgstr "" - -#: ipaserver/plugins/service.py:733 -msgid "SMB service NetBIOS name" -msgstr "" - -#: ipaserver/plugins/service.py:847 -#, python-format -msgid "Deleted service \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/service.py:867 -#, python-format -msgid "Modified service \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/service.py:918 -#, python-format -msgid "%(count)d service matched" -msgid_plural "%(count)d services matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/service.py:1117 -#, python-format -msgid "Disabled service \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/service.py:1158 -#, python-format -msgid "Added certificates to service principal \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/service.py:1165 -#, python-format -msgid "Removed certificates from service principal \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/service.py:1181 -msgid "Add new principal alias to a service" -msgstr "" - -#: ipaserver/plugins/service.py:1182 -#, python-format -msgid "Added new aliases to the service principal \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/service.py:1193 -msgid "Remove principal alias from a service" -msgstr "" - -#: ipaserver/plugins/service.py:1194 -#, python-format -msgid "Removed aliases to the service principal \"%(value)s\"" -msgstr "" - #: ipaserver/plugins/servicedelegation.py:26 msgid "" "\n" @@ -24714,6 +24784,13 @@ msgstr "" msgid "Add target to a named service delegation." msgstr "" +#: ipaserver/plugins/servicedelegation.py:213 +#: ipaserver/plugins/servicedelegation.py:303 +#: ipaserver/plugins/baseldap.py:1716 +#, python-format +msgid "member %s" +msgstr "" + #: ipaserver/plugins/servicedelegation.py:287 msgid "Remove member from a named service delegation." msgstr "" @@ -24889,13 +24966,6 @@ msgstr "" msgid "Modified stage user \"%(value)s\"" msgstr "" -#: ipaserver/plugins/stageuser.py:471 ipaserver/plugins/user.py:871 -#, python-format -msgid "%(count)d user matched" -msgid_plural "%(count)d users matched" -msgstr[0] "" -msgstr[1] "" - #: ipaserver/plugins/stageuser.py:495 #, python-format msgid "Activate a stage user \"%(value)s\"" @@ -24964,146 +25034,6 @@ msgstr "" msgid "Remove one or more certificate mappings from the stage user entry." msgstr "" -#: ipaserver/plugins/subid.py:29 -msgid "" -"\n" -"Subordinate ids\n" -"\n" -"Manage subordinate user and group ids for users\n" -"\n" -"EXAMPLES:\n" -"\n" -" Auto-assign a subordinate id range to current user\n" -" ipa subid-generate\n" -"\n" -" Auto-assign a subordinate id range to user alice:\n" -" ipa subid-generate --owner=alice\n" -"\n" -" Find subordinate ids for user alice:\n" -" ipa subid-find --owner=alice\n" -"\n" -" Match entry by any subordinate uid in range:\n" -" ipa subid-match --subuid=2147483649\n" -msgstr "" - -#: ipaserver/plugins/subid.py:59 ipaserver/plugins/subid.py:62 -msgid "Subordinate id" -msgstr "" - -#: ipaserver/plugins/subid.py:60 ipaserver/plugins/subid.py:61 -msgid "Subordinate ids" -msgstr "" - -#: ipaserver/plugins/subid.py:144 -msgid "Subordinate id description" -msgstr "" - -#: ipaserver/plugins/subid.py:150 ipaserver/plugins/subid.py:468 -msgid "Owning user of subordinate id entry" -msgstr "" - -#: ipaserver/plugins/subid.py:157 -msgid "Start value for subordinate user ID (subuid) range" -msgstr "" - -#: ipaserver/plugins/subid.py:166 -msgid "Subordinate user ID count" -msgstr "" - -#: ipaserver/plugins/subid.py:175 -msgid "Start value for subordinate group ID (subgid) range" -msgstr "" - -#: ipaserver/plugins/subid.py:184 -msgid "Subordinate group ID count" -msgstr "" - -#: ipaserver/plugins/subid.py:213 -#, python-format -msgid "" -"%(oname)s with with name \"%(pkey)s\" or for user \"%(uid)s\" already exists." -msgstr "" - -#: ipaserver/plugins/subid.py:246 -#, python-format -msgid "'%(dn)s is not a valid user" -msgstr "" - -#: ipaserver/plugins/subid.py:278 -msgid "subgidnumber must be equal to subuidnumber" -msgstr "" - -#: ipaserver/plugins/subid.py:351 -msgid "Add a new subordinate id." -msgstr "" - -#: ipaserver/plugins/subid.py:352 -#, python-format -msgid "Added subordinate id \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/subid.py:384 -msgid "Delete a subordinate id." -msgstr "" - -#: ipaserver/plugins/subid.py:385 -#, python-format -msgid "Deleted subordinate id \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/subid.py:393 -msgid "Modify a subordinate id." -msgstr "" - -#: ipaserver/plugins/subid.py:394 -#, python-format -msgid "Modified subordinate id \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/subid.py:405 -msgid "Search for subordinate id." -msgstr "" - -#: ipaserver/plugins/subid.py:407 -#, python-format -msgid "%(count)d subordinate id matched" -msgid_plural "%(count)d subordinate ids matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/subid.py:440 -msgid "Display information about a subordinate id." -msgstr "" - -#: ipaserver/plugins/subid.py:458 -msgid "Generate and auto-assign subuid and subgid range to user entry" -msgstr "" - -#: ipaserver/plugins/subid.py:493 -msgid "Match users by any subordinate uid in their range" -msgstr "" - -#: ipaserver/plugins/subid.py:500 -msgid "SubUID match" -msgstr "" - -#: ipaserver/plugins/subid.py:501 -msgid "Match value for subordinate user ID" -msgstr "" - -#: ipaserver/plugins/subid.py:542 -msgid "Subordinate id statistics" -msgstr "" - -#: ipaserver/plugins/subid.py:586 -#, python-format -msgid "%(remaining)i remaining subordinate id ranges" -msgstr "" - -#: ipaserver/plugins/sudo.py:7 -msgid "commands for controlling sudo configuration" -msgstr "" - #: ipaserver/plugins/sudocmd.py:33 msgid "" "\n" @@ -25160,320 +25090,6 @@ msgid_plural "%(count)d Sudo Commands matched" msgstr[0] "" msgstr[1] "" -#: ipaserver/plugins/sudocmdgroup.py:34 -msgid "" -"\n" -"Groups of Sudo Commands\n" -"\n" -"Manage groups of Sudo Commands.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Add a new Sudo Command Group:\n" -" ipa sudocmdgroup-add --desc='administrators commands' admincmds\n" -"\n" -" Remove a Sudo Command Group:\n" -" ipa sudocmdgroup-del admincmds\n" -"\n" -" Manage Sudo Command Group membership, commands:\n" -" ipa sudocmdgroup-add-member --sudocmds=/usr/bin/less --sudocmds=/usr/bin/" -"vim admincmds\n" -"\n" -" Manage Sudo Command Group membership, commands:\n" -" ipa sudocmdgroup-remove-member --sudocmds=/usr/bin/less admincmds\n" -"\n" -" Show a Sudo Command Group:\n" -" ipa sudocmdgroup-show admincmds\n" -msgstr "" - -#: ipaserver/plugins/sudocmdgroup.py:67 -msgid "sudo command group" -msgstr "" - -#: ipaserver/plugins/sudocmdgroup.py:68 -msgid "sudo command groups" -msgstr "" - -#: ipaserver/plugins/sudocmdgroup.py:149 -#, python-format -msgid "Added Sudo Command Group \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/sudocmdgroup.py:157 -#, python-format -msgid "Deleted Sudo Command Group \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/sudocmdgroup.py:165 -#, python-format -msgid "Modified Sudo Command Group \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/sudocmdgroup.py:174 -#, python-format -msgid "%(count)d Sudo Command Group matched" -msgid_plural "%(count)d Sudo Command Groups matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/topology.py:24 -msgid "" -"\n" -"Topology\n" -"\n" -"Management of a replication topology at domain level 1.\n" -msgstr "" - -#: ipaserver/plugins/topology.py:28 -msgid "" -"\n" -"IPA server's data is stored in LDAP server in two suffixes:\n" -"* domain suffix, e.g., 'dc=example,dc=com', contains all domain related " -"data\n" -"* ca suffix, 'o=ipaca', is present only on server with CA installed. It\n" -" contains data for Certificate Server component\n" -msgstr "" - -#: ipaserver/plugins/topology.py:33 -msgid "" -"\n" -"Data stored on IPA servers is replicated to other IPA servers. The way it " -"is\n" -"replicated is defined by replication agreements. Replication agreements " -"needs\n" -"to be set for both suffixes separately. On domain level 0 they are managed\n" -"using ipa-replica-manage and ipa-csreplica-manage tools. With domain level " -"1\n" -"they are managed centrally using `ipa topology*` commands.\n" -msgstr "" - -#: ipaserver/plugins/topology.py:39 -msgid "" -"\n" -"Agreements are represented by topology segments. By default topology " -"segment\n" -"represents 2 replication agreements - one for each direction, e.g., A to B " -"and\n" -"B to A. Creation of unidirectional segments is not allowed.\n" -msgstr "" - -#: ipaserver/plugins/topology.py:43 -msgid "" -"\n" -"To verify that no server is disconnected in the topology of the given " -"suffix,\n" -"use:\n" -" ipa topologysuffix-verify $suffix\n" -msgstr "" - -#: ipaserver/plugins/topology.py:47 -msgid "" -"\n" -"\n" -"Examples:\n" -" Find all IPA servers:\n" -" ipa server-find\n" -msgstr "" - -#: ipaserver/plugins/topology.py:52 -msgid "" -"\n" -" Find all suffixes:\n" -" ipa topologysuffix-find\n" -msgstr "" - -#: ipaserver/plugins/topology.py:55 -msgid "" -"\n" -" Add topology segment to 'domain' suffix:\n" -" ipa topologysegment-add domain --left IPA_SERVER_A --right IPA_SERVER_B\n" -msgstr "" - -#: ipaserver/plugins/topology.py:58 -msgid "" -"\n" -" Add topology segment to 'ca' suffix:\n" -" ipa topologysegment-add ca --left IPA_SERVER_A --right IPA_SERVER_B\n" -msgstr "" - -#: ipaserver/plugins/topology.py:61 -msgid "" -"\n" -" List all topology segments in 'domain' suffix:\n" -" ipa topologysegment-find domain\n" -msgstr "" - -#: ipaserver/plugins/topology.py:64 -msgid "" -"\n" -" List all topology segments in 'ca' suffix:\n" -" ipa topologysegment-find ca\n" -msgstr "" - -#: ipaserver/plugins/topology.py:67 -msgid "" -"\n" -" Delete topology segment in 'domain' suffix:\n" -" ipa topologysegment-del domain segment_name\n" -msgstr "" - -#: ipaserver/plugins/topology.py:70 -msgid "" -"\n" -" Delete topology segment in 'ca' suffix:\n" -" ipa topologysegment-del ca segment_name\n" -msgstr "" - -#: ipaserver/plugins/topology.py:73 -msgid "" -"\n" -" Verify topology of 'domain' suffix:\n" -" ipa topologysuffix-verify domain\n" -msgstr "" - -#: ipaserver/plugins/topology.py:76 -msgid "" -"\n" -" Verify topology of 'ca' suffix:\n" -" ipa topologysuffix-verify ca\n" -msgstr "" - -#: ipaserver/plugins/topology.py:92 -#, python-brace-format -msgid "Topology management requires minimum domain level {0} " -msgstr "" - -#: ipaserver/plugins/topology.py:104 -msgid "segment" -msgstr "" - -#: ipaserver/plugins/topology.py:105 -msgid "segments" -msgstr "" - -#: ipaserver/plugins/topology.py:119 -msgid "Topology Segments" -msgstr "" - -#: ipaserver/plugins/topology.py:120 -msgid "Topology Segment" -msgstr "" - -#: ipaserver/plugins/topology.py:226 -#, python-format -msgid "left node is not a topology node: %(leftnode)s" -msgstr "" - -#: ipaserver/plugins/topology.py:233 -#, python-format -msgid "right node is not a topology node: %(rightnode)s" -msgstr "" - -#: ipaserver/plugins/topology.py:250 -msgid "left node and right node must not be the same" -msgstr "" - -#: ipaserver/plugins/topology.py:261 -#, python-brace-format -msgid "left node ({host}) does not support suffix '{suff}'" -msgstr "" - -#: ipaserver/plugins/topology.py:269 -#, python-brace-format -msgid "right node ({host}) does not support suffix '{suff}'" -msgstr "" - -#: ipaserver/plugins/topology.py:280 -#, python-format -msgid "%(count)d segment matched" -msgid_plural "%(count)d segments matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/topology.py:289 -#, python-format -msgid "Added segment \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/topology.py:302 -#, python-format -msgid "Deleted segment \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/topology.py:314 -#, python-format -msgid "Modified segment \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/topology.py:329 -#, python-format -msgid "%(value)s" -msgstr "" - -#: ipaserver/plugins/topology.py:365 -msgid "left or right node has to be specified" -msgstr "" - -#: ipaserver/plugins/topology.py:370 -msgid "only one node can be specified" -msgstr "" - -#: ipaserver/plugins/topology.py:374 -#, python-format -msgid "Replication refresh for segment: \"%(pkey)s\" requested." -msgstr "" - -#: ipaserver/plugins/topology.py:377 -#, python-format -msgid "Stopping of replication refresh for segment: \"%(pkey)s\" requested." -msgstr "" - -#: ipaserver/plugins/topology.py:408 -msgid "suffixes" -msgstr "" - -#: ipaserver/plugins/topology.py:412 -msgid "Topology suffixes" -msgstr "" - -#: ipaserver/plugins/topology.py:413 -msgid "Topology suffix" -msgstr "" - -#: ipaserver/plugins/topology.py:435 -#, python-format -msgid "%(count)d topology suffix matched" -msgid_plural "%(count)d topology suffixes matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/topology.py:446 -#, python-format -msgid "Deleted topology suffix \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/topology.py:460 -#, python-format -msgid "Added topology suffix \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/topology.py:474 -#, python-format -msgid "Modified topology suffix \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/topology.py:489 -msgid "" -"\n" -"Verify replication topology for suffix.\n" -"\n" -"Checks done:\n" -" 1. check if a topology is not disconnected. In other words if there are\n" -" replication paths between all servers.\n" -" 2. check if servers don't have more than the recommended number of\n" -" replication agreements\n" -msgstr "" - #: ipaserver/plugins/trust.py:83 msgid "" "\n" @@ -25696,6 +25312,11 @@ msgstr "" msgid "only \"ad\" is supported" msgstr "" +#: ipaserver/plugins/trust.py:848 ipaserver/plugins/certmap.py:141 +#: ipaserver/plugins/certmap.py:148 ipaserver/plugins/certmap.py:175 +msgid "domain" +msgstr "" + #: ipaserver/plugins/trust.py:849 msgid "" "Cannot establish a trust to AD deployed in the same domain as IPA. Such " @@ -25923,11 +25544,6 @@ msgstr "" msgid "Enable support for trusted domains for old clients" msgstr "" -#: ipaserver/plugins/trust.py:1865 ipaserver/plugins/server.py:927 -#, python-format -msgid "must be \"%s\"" -msgstr "" - #: ipaserver/plugins/trust.py:1871 msgid "not allowed to remotely add agent" msgstr "" @@ -25952,162 +25568,1038 @@ msgid "" "itself" msgstr "" -#: ipaserver/plugins/user.py:164 ipaserver/plugins/sudorule.py:442 -msgid "users" -msgstr "" - -#: ipaserver/plugins/user.py:496 -#, python-format -msgid "Added user \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/user.py:595 -msgid "Default group for new users is not POSIX" -msgstr "" - -#: ipaserver/plugins/user.py:695 -#, python-format -msgid "Deleted user \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/user.py:713 -#, python-format -msgid "%s: user is already preserved" -msgstr "" - -#: ipaserver/plugins/user.py:835 -#, python-format -msgid "Modified user \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/user.py:949 -#, python-format -msgid "Undeleted user account \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/user.py:963 -#, python-format -msgid "user \"%s\" is already active" -msgstr "" - -#: ipaserver/plugins/user.py:994 -#, python-format -msgid "Staged user account \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/user.py:1089 -#, python-format -msgid "Disabled user account \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/user.py:1111 -#, python-format -msgid "Enabled user account \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/user.py:1128 +#: ipaserver/plugins/realmdomains.py:34 msgid "" "\n" -" Unlock a user account\n" +"Realm domains\n" "\n" -" An account may become locked if the password is entered incorrectly too\n" -" many times within a specific time period as controlled by password\n" -" policy. A locked account is a temporary condition and may be unlocked " -"by\n" -" an administrator." +"Manage the list of domains associated with IPA realm.\n" +"\n" +"This list is useful for Domain Controllers from other realms which have\n" +"established trust with this IPA realm. They need the information to know\n" +"which request should be forwarded to KDC of this IPA realm.\n" +"\n" +"Automatic management: a domain is automatically added to the realm domains\n" +"list when a new DNS Zone managed by IPA is created. Same applies for " +"deletion.\n" +"\n" +"Externally managed DNS: domains which are not managed in IPA server DNS\n" +"need to be manually added to the list using ipa realmdomains-mod command.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Display the current list of realm domains:\n" +" ipa realmdomains-show\n" +"\n" +" Replace the list of realm domains:\n" +" ipa realmdomains-mod --domain=example.com\n" +" ipa realmdomains-mod --domain={example1.com,example2.com,example3.com}\n" +"\n" +" Add a domain to the list of realm domains:\n" +" ipa realmdomains-mod --add-domain=newdomain.com\n" +"\n" +" Delete a domain from the list of realm domains:\n" +" ipa realmdomains-mod --del-domain=olddomain.com\n" msgstr "" -#: ipaserver/plugins/user.py:1137 -#, python-format -msgid "Unlocked account \"%(value)s\"" +#: ipaserver/plugins/realmdomains.py:85 +msgid "Realm domains" msgstr "" -#: ipaserver/plugins/user.py:1169 -msgid "Failed logins" -msgstr "" - -#: ipaserver/plugins/user.py:1173 -msgid "Last successful authentication" -msgstr "" - -#: ipaserver/plugins/user.py:1177 -msgid "Last failed authentication" -msgstr "" - -#: ipaserver/plugins/user.py:1181 -msgid "Time now" -msgstr "" - -#: ipaserver/plugins/user.py:1189 +#: ipaserver/plugins/realmdomains.py:134 msgid "" "\n" -" Lockout status of a user account\n" +" Modify realm domains\n" "\n" -" An account may become locked if the password is entered incorrectly too\n" -" many times within a specific time period as controlled by password\n" -" policy. A locked account is a temporary condition and may be unlocked " -"by\n" -" an administrator.\n" +" DNS check: When manually adding a domain to the list, a DNS check is\n" +" performed by default. It ensures that the domain is associated with\n" +" the IPA realm, by checking whether the domain has a _kerberos TXT " +"record\n" +" containing the IPA realm name. This check can be skipped by specifying\n" +" --force option.\n" "\n" -" This connects to each IPA master and displays the lockout status on\n" -" each one.\n" +" Removal: when a realm domain which has a matching DNS zone managed by\n" +" IPA is being removed, a corresponding _kerberos TXT record in the zone " +"is\n" +" removed automatically as well. Other records in the zone or the zone\n" +" itself are not affected.\n" +" " +msgstr "" + +#: ipaserver/plugins/realmdomains.py:177 +#, python-format +msgid "" +"DNS zone for each realmdomain must contain SOA or NS records. No records " +"found for: %s" +msgstr "" + +#: ipaserver/plugins/realmdomains.py:203 +#, python-format +msgid "The following domains do not belong to this realm: %(domains)s" +msgstr "" + +#: ipaserver/plugins/realmdomains.py:218 +#, python-format +msgid "" +"The realm of the following domains could not be detected: %(domains)s. If " +"these are domains that belong to the this realm, please create a _kerberos " +"TXT record containing \"%(realm)s\" in each of them." +msgstr "" + +#: ipaserver/plugins/realmdomains.py:241 +msgid "" +"The --domain option cannot be used together with --add-domain or --del-" +"domain. Use --domain to specify the whole realm domain list explicitly, to " +"add/remove individual domains, use --add-domain/del-domain." +msgstr "" + +#: ipaserver/plugins/realmdomains.py:252 +msgid "IPA server domain cannot be omitted" +msgstr "" + +#: ipaserver/plugins/realmdomains.py:274 +msgid "IPA server domain cannot be deleted" +msgstr "" + +#: ipaserver/plugins/sudorule.py:43 +msgid "" "\n" -" To determine whether an account is locked on a given server you need\n" -" to compare the number of failed logins and the time of the last " -"failure.\n" -" For an account to be locked it must exceed the maxfail failures within\n" -" the failinterval duration as specified in the password policy " -"associated\n" -" with the user.\n" +"Sudo Rules\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:45 +msgid "" "\n" -" The failed login counter is modified only when a user attempts a log in\n" -" so it is possible that an account may appear locked but the last failed\n" -" login attempt is older than the lockouttime of the password policy. " -"This\n" -" means that the user may attempt a login again. " +"Sudo (su \"do\") allows a system administrator to delegate authority to\n" +"give certain users (or groups of users) the ability to run some (or all)\n" +"commands as root or another user while providing an audit trail of the\n" +"commands and their arguments.\n" msgstr "" -#: ipaserver/plugins/user.py:1243 +#: ipaserver/plugins/sudorule.py:50 +msgid "" +"\n" +"IPA provides a means to configure the various aspects of Sudo:\n" +" Users: The user(s)/group(s) allowed to invoke Sudo.\n" +" Hosts: The host(s)/hostgroup(s) which the user is allowed to to invoke " +"Sudo.\n" +" Allow Command: The specific command(s) permitted to be run via Sudo.\n" +" Deny Command: The specific command(s) prohibited to be run via Sudo.\n" +" RunAsUser: The user(s) or group(s) of users whose rights Sudo will be " +"invoked with.\n" +" RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" +" Options: The various Sudoers Options that can modify Sudo's behavior.\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:59 +msgid "" +"\n" +"Each option needs to be added separately and no validation is done whether\n" +"the option is known by sudo or is in a valid format. Environment variables\n" +"also need to be set individually. For example env_keep=\"FOO BAR\" in " +"sudoers\n" +"needs be represented as --sudooption env_keep=FOO --sudooption env_keep" +"+=BAR.\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:64 +msgid "" +"\n" +"An order can be added to a sudorule to control the order in which they\n" +"are evaluated (if the client supports it). This order is an integer and\n" +"must be unique.\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:68 +msgid "" +"\n" +"IPA provides a designated binddn to use with Sudo located at:\n" +"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:71 +msgid "" +"\n" +"To enable the binddn run the following command to set the password:\n" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +"example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc," +"dc=example,dc=com\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:78 +msgid "" +"\n" +" Create a new rule:\n" +" ipa sudorule-add readfiles\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:81 +msgid "" +"\n" +" Add sudo command object and add it as allowed command in the rule:\n" +" ipa sudocmd-add /usr/bin/less\n" +" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:85 +msgid "" +"\n" +" Add a host to the rule:\n" +" ipa sudorule-add-host readfiles --hosts server.example.com\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:88 +msgid "" +"\n" +" Add a user to the rule:\n" +" ipa sudorule-add-user readfiles --users jsmith\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:91 +msgid "" +"\n" +" Add a special Sudo rule for default Sudo server configuration:\n" +" ipa sudorule-add defaults\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:94 +msgid "" +"\n" +" Set a default Sudo option:\n" +" ipa sudorule-add-option defaults --sudooption '!authenticate'\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:97 +msgid "" +"\n" +" Set multiple default Sudo options:\n" +" ipa sudorule-add-option defaults --sudooption '!authenticate' --" +"sudooption mail_badpass\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:101 +msgid "" +"\n" +" Set SELinux type and role transitions on a rule:\n" +" ipa sudorule-add-option sysadmin_sudo --sudooption type=unconfined_t\n" +" ipa sudorule-add-option sysadmin_sudo --sudooption role=unconfined_r\n" +msgstr "" + +#: ipaserver/plugins/sudorule.py:120 +msgid "this option has been deprecated." +msgstr "" + +#: ipaserver/plugins/sudorule.py:148 +msgid "sudo rules" +msgstr "" + +#: ipaserver/plugins/sudorule.py:236 +msgid "Sudo Rules" +msgstr "" + +#: ipaserver/plugins/sudorule.py:237 +msgid "Sudo Rule" +msgstr "" + +#: ipaserver/plugins/sudorule.py:372 #, python-format -msgid "%(host)s failed: %(error)s" +msgid "order must be a unique value (%(order)d already used by %(rule)s)" msgstr "" -#: ipaserver/plugins/user.py:1281 +#: ipaserver/plugins/sudorule.py:403 #, python-format -msgid "%(host)s failed" +msgid "Added Sudo Rule \"%(value)s\"" msgstr "" -#: ipaserver/plugins/user.py:1291 +#: ipaserver/plugins/sudorule.py:410 #, python-format -msgid "Account disabled: %(disabled)s" +msgid "Deleted Sudo Rule \"%(value)s\"" msgstr "" -#: ipaserver/plugins/user.py:1299 +#: ipaserver/plugins/sudorule.py:417 #, python-format -msgid "Added certificates to user \"%(value)s\"" +msgid "Modified Sudo Rule \"%(value)s\"" msgstr "" -#: ipaserver/plugins/user.py:1305 +#: ipaserver/plugins/sudorule.py:436 #, python-format -msgid "Removed certificates from user \"%(value)s\"" +msgid "" +"%(type)s category cannot be set to 'all' while there are allowed %(objects)s" msgstr "" -#: ipaserver/plugins/user.py:1330 -msgid "Add new principal alias to the user entry" +#: ipaserver/plugins/sudorule.py:452 +msgid "command" msgstr "" -#: ipaserver/plugins/user.py:1331 +#: ipaserver/plugins/sudorule.py:452 +msgid "commands" +msgstr "" + +#: ipaserver/plugins/sudorule.py:458 +msgid "runAs user" +msgstr "" + +#: ipaserver/plugins/sudorule.py:458 +msgid "runAs users" +msgstr "" + +#: ipaserver/plugins/sudorule.py:463 +msgid "group runAs" +msgstr "" + +#: ipaserver/plugins/sudorule.py:463 +msgid "runAs groups" +msgstr "" + +#: ipaserver/plugins/sudorule.py:484 #, python-format -msgid "Added new aliases to user \"%(value)s\"" +msgid "%(count)d Sudo Rule matched" +msgid_plural "%(count)d Sudo Rules matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/sudorule.py:556 +msgid "commands cannot be added when command category='all'" msgstr "" -#: ipaserver/plugins/user.py:1336 -msgid "Remove principal alias from the user entry" +#: ipaserver/plugins/sudorule.py:818 ipaserver/plugins/sudorule.py:940 +msgid "users cannot be added when runAs user or runAs group category='all'" msgstr "" -#: ipaserver/plugins/user.py:1337 +#: ipaserver/plugins/sudorule.py:825 #, python-format -msgid "Removed aliases from user \"%(value)s\"" +msgid "RunAsUser does not accept '%(name)s' as a user name" +msgstr "" + +#: ipaserver/plugins/sudorule.py:833 +#, python-format +msgid "RunAsUser does not accept '%(name)s' as a group name" +msgstr "" + +#: ipaserver/plugins/sudorule.py:947 +#, python-format +msgid "RunAsGroup does not accept '%(name)s' as a group name" +msgstr "" + +#: ipaserver/plugins/baseldap.py:101 +msgid "Member service groups" +msgstr "" + +#: ipaserver/plugins/baseldap.py:110 +msgid "Member HBAC service groups" +msgstr "" + +#: ipaserver/plugins/baseldap.py:127 +msgid "Member ID user overrides" +msgstr "" + +#: ipaserver/plugins/baseldap.py:129 +msgid "Indirect Member ID user overrides" +msgstr "" + +#: ipaserver/plugins/baseldap.py:146 +msgid "Indirect Member permissions" +msgstr "" + +#: ipaserver/plugins/baseldap.py:149 +msgid "Indirect Member HBAC service" +msgstr "" + +#: ipaserver/plugins/baseldap.py:152 +msgid "Indirect Member HBAC service group" +msgstr "" + +#: ipaserver/plugins/baseldap.py:213 +msgid "Invalid format. Should be name=value" +msgstr "" + +#: ipaserver/plugins/baseldap.py:584 +msgid "An IPA master host cannot be deleted or disabled" +msgstr "" + +#: ipaserver/plugins/baseldap.py:615 +msgid "entry" +msgstr "" + +#: ipaserver/plugins/baseldap.py:616 +msgid "entries" +msgstr "" + +#: ipaserver/plugins/baseldap.py:654 ipaserver/plugins/baseldap.py:655 +msgid "Entry" +msgstr "" + +#: ipaserver/plugins/baseldap.py:658 +#, python-format +msgid "container entry (%(container)s) not found" +msgstr "" + +#: ipaserver/plugins/baseldap.py:659 +#, python-format +msgid "%(parent)s: %(oname)s not found" +msgstr "" + +#: ipaserver/plugins/baseldap.py:661 +#, python-format +msgid "%(oname)s with name \"%(pkey)s\" already exists" +msgstr "" + +#: ipaserver/plugins/baseldap.py:954 ipaserver/plugins/baseldap.py:962 +#, python-format +msgid "attribute \"%(attribute)s\" not allowed" +msgstr "" + +#: ipaserver/plugins/baseldap.py:967 +#, python-format +msgid "these attributes are not allowed: %(attrs)s" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1025 +msgid "attribute is not configurable" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1128 +msgid "No such attribute on this entry" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1484 +#, python-format +msgid "Rename the %(ldap_obj_name)s object" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1582 ipaserver/plugins/baseldap.py:2490 +msgid "the entry was deleted while being modified" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1715 ipaserver/plugins/baseldap.py:2217 +#, python-format +msgid "%s" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1758 ipaserver/plugins/baseldap.py:2241 +#, python-format +msgid "%s to add" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1857 ipaserver/plugins/baseldap.py:2340 +#, python-format +msgid "%s to remove" +msgstr "" + +#: ipaserver/plugins/baseldap.py:1965 +#, python-format +msgid "" +"Search for %(searched_object)s with these %(relationship)s %(ldap_object)s." +msgstr "" + +#: ipaserver/plugins/baseldap.py:1966 +#, python-format +msgid "" +"Search for %(searched_object)s without these %(relationship)s " +"%(ldap_object)s." +msgstr "" + +#: ipaserver/plugins/baseldap.py:2521 +#, python-format +msgid "added attribute value to entry %(value)s" +msgstr "" + +#: ipaserver/plugins/baseldap.py:2535 +#, python-format +msgid "removed attribute values from entry %(value)s" +msgstr "" + +#: ipaserver/plugins/baseldap.py:2544 +msgid "one or more values to remove" +msgstr "" + +#: ipaserver/plugins/baseuser.py:57 +msgid "" +"\n" +"Baseuser\n" +"\n" +"This contains common definitions for user/stageuser\n" +msgstr "" + +#: ipaserver/plugins/baseuser.py:88 +msgid "must be TRUE or FALSE" +msgstr "" + +#: ipaserver/plugins/baseuser.py:145 +msgid "" +"Object class ipaNTUserAttrs is missing, user entry cannot have SMB " +"attributes." +msgstr "" + +#: ipaserver/plugins/baseuser.py:271 +msgid "User password expiration" +msgstr "" + +#: ipaserver/plugins/baseuser.py:412 +msgid "SMB logon script path" +msgstr "" + +#: ipaserver/plugins/baseuser.py:417 +msgid "SMB profile path" +msgstr "" + +#: ipaserver/plugins/baseuser.py:422 +msgid "SMB Home Directory" +msgstr "" + +#: ipaserver/plugins/baseuser.py:427 +msgid "SMB Home Directory Drive" +msgstr "" + +#: ipaserver/plugins/baseuser.py:451 ipaserver/plugins/baseuser.py:455 +#, python-format +msgid "invalid e-mail format: %(email)s" +msgstr "" + +#: ipaserver/plugins/baseuser.py:482 +#, python-format +msgid "manager %(manager)s not found" +msgstr "" + +#: ipaserver/plugins/baseuser.py:832 +msgid "Issuer of the certificate" +msgstr "" + +#: ipaserver/plugins/baseuser.py:839 +msgid "Subject of the certificate" +msgstr "" + +#: ipaserver/plugins/baseuser.py:884 +msgid "cannot have an empty subject" +msgstr "" + +#: ipaserver/plugins/baseuser.py:924 +msgid "cannot specify both subject/issuer and certificate" +msgstr "" + +#: ipaserver/plugins/baseuser.py:928 +msgid "cannot specify both subject/issuer and ipacertmapdata" +msgstr "" + +#: ipaserver/plugins/baseuser.py:953 +#, python-format +msgid "Added certificate mappings to user \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/baseuser.py:972 +#, python-format +msgid "Removed certificate mappings from user \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certmap.py:50 +msgid "" +"\n" +"Certificate Identity Mapping\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:52 +msgid "" +"\n" +"Manage Certificate Identity Mapping configuration and rules.\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:54 +msgid "" +"\n" +"IPA supports the use of certificates for authentication. Certificates can\n" +"either be stored in the user entry (full certificate in the usercertificate\n" +"attribute), or simply linked to the user entry through a mapping.\n" +"This code enables the management of the rules allowing to link a\n" +"certificate to a user entry.\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:62 +msgid "" +"\n" +" Display the Certificate Identity Mapping global configuration:\n" +" ipa certmapconfig-show\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:65 +msgid "" +"\n" +" Modify Certificate Identity Mapping global configuration:\n" +" ipa certmapconfig-mod --promptusername=TRUE\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:68 +msgid "" +"\n" +" Create a new Certificate Identity Mapping Rule:\n" +" ipa certmaprule-add rule1 --desc=\"Link certificate with subject and " +"issuer\"\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:71 +msgid "" +"\n" +" Modify a Certificate Identity Mapping Rule:\n" +" ipa certmaprule-mod rule1 --maprule=\"\"\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:74 +msgid "" +"\n" +" Disable a Certificate Identity Mapping Rule:\n" +" ipa certmaprule-disable rule1\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:77 +msgid "" +"\n" +" Enable a Certificate Identity Mapping Rule:\n" +" ipa certmaprule-enable rule1\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:80 +msgid "" +"\n" +" Display information about a Certificate Identity Mapping Rule:\n" +" ipa certmaprule-show rule1\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:83 +msgid "" +"\n" +" Find all Certificate Identity Mapping Rules with the specified domain:\n" +" ipa certmaprule-find --domain example.com\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:86 +msgid "" +"\n" +" Delete a Certificate Identity Mapping Rule:\n" +" ipa certmaprule-del rule1\n" +msgstr "" + +#: ipaserver/plugins/certmap.py:142 +#, python-format +msgid "" +"The domain(s) \"%s\" cannot be used to apply altSecurityIdentities check." +msgstr "" + +#: ipaserver/plugins/certmap.py:149 +msgid "" +"The mapping rule with altSecurityIdentities should be applied to a trusted " +"Active Directory domain but no domain was associated with the rule." +msgstr "" + +#: ipaserver/plugins/certmap.py:176 +#, python-format +msgid "The domain %s is neither IPA domain nor a trusteddomain." +msgstr "" + +#: ipaserver/plugins/certmap.py:186 +msgid "Certificate Identity Mapping configuration options" +msgstr "" + +#: ipaserver/plugins/certmap.py:191 ipaserver/plugins/certmap.py:192 +msgid "Certificate Identity Mapping Global Configuration" +msgstr "" + +#: ipaserver/plugins/certmap.py:198 +msgid "Prompt for the username" +msgstr "" + +#: ipaserver/plugins/certmap.py:199 +msgid "" +"Prompt for the username when multiple identities are mapped to a certificate" +msgstr "" + +#: ipaserver/plugins/certmap.py:229 +msgid "Modify Certificate Identity Mapping configuration." +msgstr "" + +#: ipaserver/plugins/certmap.py:234 +msgid "Show the current Certificate Identity Mapping configuration." +msgstr "" + +#: ipaserver/plugins/certmap.py:243 ipaserver/plugins/certmap.py:247 +msgid "Certificate Identity Mapping Rules" +msgstr "" + +#: ipaserver/plugins/certmap.py:244 ipaserver/plugins/certmap.py:246 +msgid "Certificate Identity Mapping Rule" +msgstr "" + +#: ipaserver/plugins/certmap.py:274 +msgid "Certificate Identity Mapping Rule name" +msgstr "" + +#: ipaserver/plugins/certmap.py:280 +msgid "Certificate Identity Mapping Rule description" +msgstr "" + +#: ipaserver/plugins/certmap.py:285 +msgid "Mapping rule" +msgstr "" + +#: ipaserver/plugins/certmap.py:286 +msgid "Rule used to map the certificate with a user entry" +msgstr "" + +#: ipaserver/plugins/certmap.py:291 +msgid "Matching rule" +msgstr "" + +#: ipaserver/plugins/certmap.py:292 +msgid "Rule used to check if a certificate can be used for authentication" +msgstr "" + +#: ipaserver/plugins/certmap.py:299 +msgid "Domain where the user entry will be searched" +msgstr "" + +#: ipaserver/plugins/certmap.py:305 +msgid "Priority of the rule (higher number means lower priority" +msgstr "" + +#: ipaserver/plugins/certmap.py:356 +msgid "Create a new Certificate Identity Mapping Rule." +msgstr "" + +#: ipaserver/plugins/certmap.py:358 +#, python-format +msgid "Added Certificate Identity Mapping Rule \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certmap.py:369 +msgid "Modify a Certificate Identity Mapping Rule." +msgstr "" + +#: ipaserver/plugins/certmap.py:371 +#, python-format +msgid "Modified Certificate Identity Mapping Rule \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certmap.py:392 +msgid "Search for Certificate Identity Mapping Rules." +msgstr "" + +#: ipaserver/plugins/certmap.py:395 +#, python-format +msgid "%(count)d Certificate Identity Mapping Rule matched" +msgid_plural "%(count)d Certificate Identity Mapping Rules matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/certmap.py:402 +msgid "Display information about a Certificate Identity Mapping Rule." +msgstr "" + +#: ipaserver/plugins/certmap.py:408 +msgid "Delete a Certificate Identity Mapping Rule." +msgstr "" + +#: ipaserver/plugins/certmap.py:410 +#, python-format +msgid "Deleted Certificate Identity Mapping Rule \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certmap.py:415 +msgid "Enable a Certificate Identity Mapping Rule." +msgstr "" + +#: ipaserver/plugins/certmap.py:417 +#, python-format +msgid "Enabled Certificate Identity Mapping Rule \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certmap.py:444 +msgid "Disable a Certificate Identity Mapping Rule." +msgstr "" + +#: ipaserver/plugins/certmap.py:446 +#, python-format +msgid "Disabled Certificate Identity Mapping Rule \"%(value)s\"" +msgstr "" + +#: ipaserver/plugins/certmap.py:500 +msgid "Failed to connect to sssd over SystemBus. See details in the error_log" +msgstr "" + +#: ipaserver/plugins/certmap.py:554 +msgid "Failed to find users over SystemBus. See details in the error_log" +msgstr "" + +#: ipaserver/plugins/certmap.py:571 +msgid "User logins" +msgstr "" + +#: ipaserver/plugins/certmap.py:579 +msgid "" +"\n" +" Search for users matching the provided certificate.\n" +"\n" +" This command relies on SSSD to retrieve the list of matching users and\n" +" may return cached data. For more information on purging SSSD cache,\n" +" please refer to sss_cache documentation.\n" +" " +msgstr "" + +#: ipaserver/plugins/certmap.py:587 +#, python-format +msgid "%(count)s user matched" +msgid_plural "%(count)s users matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/config.py:50 +msgid "" +"\n" +"Server configuration\n" +"\n" +"Manage the default values that IPA uses and some of its tuning parameters.\n" +"\n" +"NOTES:\n" +"\n" +"The password notification value (--pwdexpnotify) is stored here so it will\n" +"be replicated. It is not currently used to notify users in advance of an\n" +"expiring password.\n" +"\n" +"Some attributes are read-only, provided only for information purposes. " +"These\n" +"include:\n" +"\n" +"Certificate Subject base: the configured certificate subject base,\n" +" e.g. O=EXAMPLE.COM. This is configurable only at install time.\n" +"Password plug-in features: currently defines additional hashes that the\n" +" password will generate (there may be other conditions).\n" +"\n" +"When setting the order list for mapping SELinux users you may need to\n" +"quote the value so it isn't interpreted by the shell.\n" +"\n" +"The maximum length of a hostname in Linux is controlled by\n" +"MAXHOSTNAMELEN in the kernel and defaults to 64. Some other operating\n" +"systems, Solaris for example, allows hostnames up to 255 characters.\n" +"This option will allow flexibility in length but by default limiting\n" +"to the Linux maximum length.\n" +"\n" +"EXAMPLES:\n" +"\n" +" Show basic server configuration:\n" +" ipa config-show\n" +"\n" +" Show all configuration options:\n" +" ipa config-show --all\n" +"\n" +" Change maximum username length to 99 characters:\n" +" ipa config-mod --maxusername=99\n" +"\n" +" Change maximum host name length to 255 characters:\n" +" ipa config-mod --maxhostname=255\n" +"\n" +" Increase default time and size limits for maximum IPA server search:\n" +" ipa config-mod --searchtimelimit=10 --searchrecordslimit=2000\n" +"\n" +" Set default user e-mail domain:\n" +" ipa config-mod --emaildomain=example.com\n" +"\n" +" Enable migration mode to make \"ipa migrate-ds\" command operational:\n" +" ipa config-mod --enable-migration=TRUE\n" +"\n" +" Define SELinux user map order:\n" +" ipa config-mod --ipaselinuxusermaporder='guest_u:s0$xguest_u:s0$user_u:s0-" +"s0:c0.c1023$staff_u:s0-s0:c0.c1023$unconfined_u:s0-s0:c0.c1023'\n" +msgstr "" + +#: ipaserver/plugins/config.py:116 +msgid "must be at least 10" +msgstr "" + +#: ipaserver/plugins/config.py:124 +msgid "configuration options" +msgstr "" + +#: ipaserver/plugins/config.py:160 ipaserver/plugins/config.py:161 +msgid "Configuration" +msgstr "" + +#: ipaserver/plugins/config.py:172 +msgid "Maximum hostname length" +msgstr "" + +#: ipaserver/plugins/config.py:276 ipaserver/plugins/config.py:277 +msgid "Enable adding subids to new users" +msgstr "" + +#: ipaserver/plugins/config.py:281 +msgid "IPA masters" +msgstr "" + +#: ipaserver/plugins/config.py:282 +msgid "List of all IPA masters" +msgstr "" + +#: ipaserver/plugins/config.py:287 +msgid "Hidden IPA masters" +msgstr "" + +#: ipaserver/plugins/config.py:288 +msgid "List of all hidden IPA masters" +msgstr "" + +#: ipaserver/plugins/config.py:293 +msgid "IPA master capable of PKINIT" +msgstr "" + +#: ipaserver/plugins/config.py:294 +msgid "IPA master which can process PKINIT requests" +msgstr "" + +#: ipaserver/plugins/config.py:299 +msgid "IPA CA servers" +msgstr "" + +#: ipaserver/plugins/config.py:300 +msgid "IPA servers configured as certificate authority" +msgstr "" + +#: ipaserver/plugins/config.py:305 +msgid "Hidden IPA CA servers" +msgstr "" + +#: ipaserver/plugins/config.py:306 +msgid "Hidden IPA servers configured as certificate authority" +msgstr "" + +#: ipaserver/plugins/config.py:311 +msgid "IPA CA renewal master" +msgstr "" + +#: ipaserver/plugins/config.py:312 +msgid "Renewal master for IPA certificate authority" +msgstr "" + +#: ipaserver/plugins/config.py:317 ipaserver/plugins/vault.py:978 +msgid "IPA KRA servers" +msgstr "" + +#: ipaserver/plugins/config.py:318 +msgid "IPA servers configured as key recovery agent" +msgstr "" + +#: ipaserver/plugins/config.py:323 +msgid "Hidden IPA KRA servers" +msgstr "" + +#: ipaserver/plugins/config.py:324 +msgid "Hidden IPA servers configured as key recovery agent" +msgstr "" + +#: ipaserver/plugins/config.py:337 +msgid "IPA servers configured as domain name server" +msgstr "" + +#: ipaserver/plugins/config.py:342 +msgid "Hidden IPA DNS servers" +msgstr "" + +#: ipaserver/plugins/config.py:343 +msgid "Hidden IPA servers configured as domain name server" +msgstr "" + +#: ipaserver/plugins/config.py:349 +msgid "DNSec key master" +msgstr "" + +#: ipaserver/plugins/config.py:354 +msgid "Setup SID configuration" +msgstr "" + +#: ipaserver/plugins/config.py:355 +msgid "New users and groups automatically get a SID assigned" +msgstr "" + +#: ipaserver/plugins/config.py:360 +msgid "Add SIDs" +msgstr "" + +#: ipaserver/plugins/config.py:361 +msgid "Add SIDs for existing users and groups" +msgstr "" + +#: ipaserver/plugins/config.py:366 ipaserver/plugins/config.py:367 +msgid "NetBIOS name of the IPA domain" +msgstr "" + +#: ipaserver/plugins/config.py:444 +msgid "Empty domain is not allowed" +msgstr "" + +#: ipaserver/plugins/config.py:452 +#, python-format +msgid "Invalid domain name '%(domain)s': %(e)s" +msgstr "" + +#: ipaserver/plugins/config.py:457 +#, python-format +msgid "Server has no information about domain '%(domain)s'" +msgstr "" + +#: ipaserver/plugins/config.py:464 +#, python-format +msgid "Disabled domain '%(domain)s' is not allowed" +msgstr "" + +#: ipaserver/plugins/config.py:514 +msgid "not allowed to enable SID generation" +msgstr "" + +#: ipaserver/plugins/config.py:522 +msgid "" +"Up to 15 characters and only uppercase ASCII letters, digits and dashes are " +"allowed. Empty string is not allowed." +msgstr "" + +#: ipaserver/plugins/config.py:550 +msgid "Failed to call DBus" +msgstr "" + +#: ipaserver/plugins/config.py:560 +msgid "Configuration of SID failed. See details in the error log" +msgstr "" + +#: ipaserver/plugins/config.py:570 +msgid "The group doesn't exist" +msgstr "" + +#: ipaserver/plugins/config.py:588 +#, python-format +msgid "attribute \"%s\" not allowed" +msgstr "" + +#: ipaserver/plugins/config.py:608 +msgid "May not be empty" +msgstr "" + +#: ipaserver/plugins/config.py:627 +#, python-format +msgid "%(obj)s default attribute %(attr)s would not be allowed!" +msgstr "" + +#: ipaserver/plugins/config.py:659 +msgid "A list of SELinux users delimited by $ expected" +msgstr "" + +#: ipaserver/plugins/config.py:663 +#, python-format +msgid "SELinux user '%(user)s' is not valid: %(error)s" +msgstr "" + +#: ipaserver/plugins/config.py:675 +msgid "SELinux user map default user not in order list" +msgstr "" + +#: ipaserver/plugins/config.py:694 +#, python-format +msgid "You cannot specify %s without the --enable-sid option" msgstr "" #: ipaserver/plugins/vault.py:54 @@ -26516,6 +27008,104 @@ msgstr "" msgid "Checks if any of the servers has the KRA service enabled" msgstr "" +#: ipaserver/plugins/serverrole.py:13 +msgid "" +"\n" +"IPA server roles\n" +msgstr "" + +#: ipaserver/plugins/serverrole.py:15 +msgid "" +"\n" +"Get status of roles (DNS server, CA, etc.) provided by IPA masters.\n" +msgstr "" + +#: ipaserver/plugins/serverrole.py:17 +msgid "" +"\n" +"The status of a role is either enabled, configured, or absent.\n" +msgstr "" + +#: ipaserver/plugins/serverrole.py:21 +msgid "" +"\n" +" Show status of 'DNS server' role on a server:\n" +" ipa server-role-show ipa.example.com \"DNS server\"\n" +msgstr "" + +#: ipaserver/plugins/serverrole.py:24 +msgid "" +"\n" +" Show status of all roles containing 'AD' on a server:\n" +" ipa server-role-find --server ipa.example.com --role=\"AD trust " +"controller\"\n" +msgstr "" + +#: ipaserver/plugins/serverrole.py:27 +msgid "" +"\n" +" Show status of all configured roles on a server:\n" +" ipa server-role-find ipa.example.com\n" +msgstr "" + +#: ipaserver/plugins/serverrole.py:30 +msgid "" +"\n" +" Show implicit IPA master role:\n" +" ipa server-role-find --include-master\n" +msgstr "" + +#: ipaserver/plugins/serverrole.py:46 +msgid "server role" +msgstr "" + +#: ipaserver/plugins/serverrole.py:47 +msgid "server roles" +msgstr "" + +#: ipaserver/plugins/serverrole.py:51 +msgid "IPA Server Roles" +msgstr "" + +#: ipaserver/plugins/serverrole.py:52 +msgid "IPA Server Role" +msgstr "" + +#: ipaserver/plugins/serverrole.py:65 +msgid "IPA server role name" +msgstr "" + +#: ipaserver/plugins/serverrole.py:71 +msgid "Role status" +msgstr "" + +#: ipaserver/plugins/serverrole.py:72 +msgid "Status of the role" +msgstr "" + +#: ipaserver/plugins/serverrole.py:89 +msgid "Show role status on a server" +msgstr "" + +#: ipaserver/plugins/serverrole.py:113 +msgid "Find a server role on a server(s)" +msgstr "" + +#: ipaserver/plugins/serverrole.py:118 +#, python-format +msgid "%(count)s server role matched" +msgid_plural "%(count)s server roles matched" +msgstr[0] "" +msgstr[1] "" + +#: ipaserver/plugins/serverrole.py:139 +msgid "Include IPA master entries" +msgstr "" + +#: ipaserver/plugins/serverrole.py:192 +msgid "IPA role name" +msgstr "" + #: ipaserver/plugins/virtual.py:57 msgid "operation not defined" msgstr "" @@ -26529,627 +27119,26 @@ msgstr "" msgid "No such virtual command" msgstr "" -#: ipaserver/plugins/whoami.py:15 -msgid "" -"\n" -"Return information about currently authenticated identity\n" -"\n" -"Who am I command returns information on how to get\n" -"more details about the identity authenticated for this\n" -"request. The information includes:\n" -"\n" -" * type of object\n" -" * command to retrieve details of the object\n" -" * arguments and options to pass to the command\n" -"\n" -"The information is returned as a dictionary. Examples below use\n" -"'key: value' output for illustrative purposes.\n" -"\n" -"EXAMPLES:\n" -"\n" -" Look up as IPA user:\n" -" kinit admin\n" -" ipa console\n" -" >> api.Command.whoami()\n" -" ------------------------------------------\n" -" object: user\n" -" command: user_show/1\n" -" arguments: admin\n" -" ------------------------------------------\n" -"\n" -" Look up as a user from a trusted domain:\n" -" kinit user@AD.DOMAIN\n" -" ipa console\n" -" >> api.Command.whoami()\n" -" ------------------------------------------\n" -" object: idoverrideuser\n" -" command: idoverrideuser_show/1\n" -" arguments: ('default trust view', 'user@ad.domain')\n" -" ------------------------------------------\n" -"\n" -" Look up as a host:\n" -" kinit -k\n" -" ipa console\n" -" >> api.Command.whoami()\n" -" ------------------------------------------\n" -" object: host\n" -" command: host_show/1\n" -" arguments: ipa.example.com\n" -" ------------------------------------------\n" -"\n" -" Look up as a Kerberos service:\n" -" kinit -k -t /path/to/keytab HTTP/ipa.example.com\n" -" ipa console\n" -" >> api.Command.whoami()\n" -" ------------------------------------------\n" -" object: service\n" -" command: service_show/1\n" -" arguments: HTTP/ipa.example.com\n" -" ------------------------------------------\n" -msgstr "" - -#: ipaserver/plugins/whoami.py:77 -msgid "Describe currently authenticated identity." -msgstr "" - -#: ipaserver/plugins/whoami.py:82 ipaserver/plugins/whoami.py:88 -msgid "Object class name" -msgstr "" - -#: ipaserver/plugins/whoami.py:83 ipaserver/plugins/whoami.py:89 -msgid "Function to get details" -msgstr "" - -#: ipaserver/plugins/whoami.py:84 ipaserver/plugins/whoami.py:91 -msgid "Arguments to details function" -msgstr "" - -#: ipaserver/plugins/whoami.py:111 -msgid "Cannot query Directory Manager with API" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:92 -msgid "Class of Service object used for linking policies with groups" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:143 -#, python-format -msgid "priority must be a unique value (%(prio)d already used by %(gname)s)" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:171 -msgid "Add Class of Service entry" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:194 -msgid "Delete Class of Service entry" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:200 -msgid "Modify Class of Service entry" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:218 -msgid "Display Class of Service entry" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:224 -msgid "Search for Class of Service entry" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:237 -msgid "password policy" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:238 -msgid "password policies" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:297 -msgid "Password Policies" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:370 -msgid "Max repeat" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:371 -msgid "Maximum number of same consecutive characters" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:379 -msgid "Max sequence" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:380 -msgid "The max. length of monotonic character sequences (abcd)" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:388 -msgid "Dictionary check" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:389 -msgid "Check if the password is a dictionary word" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:395 -msgid "User check" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:396 -msgid "Check if the password contains the username" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:469 -msgid "" -"Minimum length must be >= 6 if maxrepeat, maxsequence, dictcheck or " -"usercheck are defined" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:495 -msgid "Maximum password life must be equal to or greater than the minimum." -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:554 -msgid "cannot delete global password policy" -msgstr "" - -#: ipaserver/plugins/pwpolicy.py:588 -msgid "priority cannot be set on global policy" -msgstr "" - -#: ipaserver/plugins/server.py:36 -msgid "" -"\n" -"IPA servers\n" -msgstr "" - -#: ipaserver/plugins/server.py:38 -msgid "" -"\n" -"Get information about installed IPA servers.\n" -msgstr "" - -#: ipaserver/plugins/server.py:42 -msgid "" -"\n" -" Find all servers:\n" -" ipa server-find\n" -msgstr "" - -#: ipaserver/plugins/server.py:45 -msgid "" -"\n" -" Show specific server:\n" -" ipa server-show ipa.example.com\n" -msgstr "" - -#: ipaserver/plugins/server.py:61 -msgid "server" -msgstr "" - -#: ipaserver/plugins/server.py:62 -msgid "servers" -msgstr "" - -#: ipaserver/plugins/server.py:70 -msgid "IPA Servers" -msgstr "" - -#: ipaserver/plugins/server.py:133 -msgid "Server location" -msgstr "" - -#: ipaserver/plugins/server.py:140 -msgid "Service weight" -msgstr "" - -#: ipaserver/plugins/server.py:141 -msgid "Weight for server services" -msgstr "" - -#: ipaserver/plugins/server.py:148 -msgid "Service relative weight" -msgstr "" - -#: ipaserver/plugins/server.py:149 -msgid "Relative weight for server services (counts per location)" -msgstr "" - -#: ipaserver/plugins/server.py:154 -msgid "Enabled server roles" -msgstr "" - -#: ipaserver/plugins/server.py:155 -msgid "List of enabled roles" -msgstr "" - -#: ipaserver/plugins/server.py:222 -msgid "Modify information about an IPA server." -msgstr "" - -#: ipaserver/plugins/server.py:224 -#, python-format -msgid "Modified IPA server \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/server.py:306 -#, python-format -msgid "%(count)d IPA server matched" -msgid_plural "%(count)d IPA servers matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/server.py:444 -#, python-format -msgid "Deleted IPA server \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/server.py:449 -msgid "Ignore topology errors" -msgstr "" - -#: ipaserver/plugins/server.py:450 -msgid "Ignore topology connectivity problems after removal" -msgstr "" - -#: ipaserver/plugins/server.py:455 -msgid "Ignore check for last remaining CA or DNS server" -msgstr "" - -#: ipaserver/plugins/server.py:456 -msgid "Skip a check whether the last CA master or DNS server is removed" -msgstr "" - -#: ipaserver/plugins/server.py:462 -msgid "Force server removal" -msgstr "" - -#: ipaserver/plugins/server.py:463 -msgid "Force server removal even if it does not exist" -msgstr "" - -#: ipaserver/plugins/server.py:500 -msgid "" -"Replica is active DNSSEC key master. Uninstall could break your DNS system. " -"Please disable or replace DNSSEC key master first." -msgstr "" - -#: ipaserver/plugins/server.py:506 -msgid "Deleting this server will leave your installation without a DNS." -msgstr "" - -#: ipaserver/plugins/server.py:520 -msgid "" -"Deleting this server is not allowed as it would leave your installation " -"without a KRA." -msgstr "" - -#: ipaserver/plugins/server.py:530 -msgid "" -"Deleting this server is not allowed as it would leave your installation " -"without a CA." -msgstr "" - -#: ipaserver/plugins/server.py:545 -msgid "Ignoring these warnings and proceeding with removal" -msgstr "" - -#: ipaserver/plugins/server.py:595 +#: ipaserver/topology.py:14 #, python-format msgid "" -"Failed to clean memberPrincipal %(principal)s from s4u2proxy entry %(dn)s: " -"%(err)s" +"\n" +"Replication topology in suffix '%(suffix)s' is disconnected:\n" +"%(errors)s" msgstr "" -#: ipaserver/plugins/server.py:616 +#: ipaserver/topology.py:18 #, python-format -msgid "Failed to clean up DNA hostname entries for %(master)s: %(err)s" -msgstr "" - -#: ipaserver/plugins/server.py:637 -#, python-format -msgid "Failed to remove server %(master)s from server list: %(err)s" -msgstr "" - -#: ipaserver/plugins/server.py:663 -#, python-format -msgid "Failed to clean up Custodia keys for %(master)s: %(err)s" -msgstr "" - -#: ipaserver/plugins/server.py:701 -#, python-format -msgid "Failed to cleanup server principals/keys: %(err)s" -msgstr "" - -#: ipaserver/plugins/server.py:717 -#, python-format -msgid "Failed to cleanup %(hostname)s DNS entries: %(err)s" -msgstr "" - -#: ipaserver/plugins/server.py:722 -msgid "You may need to manually remove them from the tree" -msgstr "" - -#: ipaserver/plugins/server.py:737 -#, python-format -msgid "Forcing removal of %(hostname)s" -msgstr "" - -#: ipaserver/plugins/server.py:747 -msgid "Ignoring topology connectivity errors." -msgstr "" - -#: ipaserver/plugins/server.py:766 -#, python-format -msgid "Failed to remove server from security domain: %s" -msgstr "" - -#: ipaserver/plugins/server.py:793 -msgid "Server has already been deleted" -msgstr "" - -#: ipaserver/plugins/server.py:843 -msgid "Agreements deleted" -msgstr "" - -#: ipaserver/plugins/server.py:854 -msgid "Following segments were not deleted:" -msgstr "" - -#: ipaserver/plugins/server.py:939 -msgid "not allowed to perform server connection check" -msgstr "" - -#: ipaserver/plugins/server.py:965 -msgid "Set enabled/hidden state of a server." -msgstr "" - -#: ipaserver/plugins/server.py:971 -msgid "State" -msgstr "" - -#: ipaserver/plugins/server.py:972 -msgid "Server state" -msgstr "" - -#: ipaserver/plugins/server.py:977 -#, python-format -msgid "Changed server state of \"%(value)s\"." -msgstr "" - -#: ipaserver/plugins/server.py:986 -msgid "Cannot hide CA renewal master." -msgstr "" - -#: ipaserver/plugins/server.py:988 -msgid "Cannot hide DNSSec key master." -msgstr "" - -#: ipaserver/plugins/server.py:1000 -#, python-format -msgid "Cannot hide last enabled %(name)s server." -msgstr "" - -#: ipaserver/plugins/sudorule.py:43 msgid "" "\n" -"Sudo Rules\n" +"Removal of '%(hostname)s' leads to disconnected topology in suffix " +"'%(suffix)s':\n" +"%(errors)s" msgstr "" -#: ipaserver/plugins/sudorule.py:45 -msgid "" -"\n" -"Sudo (su \"do\") allows a system administrator to delegate authority to\n" -"give certain users (or groups of users) the ability to run some (or all)\n" -"commands as root or another user while providing an audit trail of the\n" -"commands and their arguments.\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:50 -msgid "" -"\n" -"IPA provides a means to configure the various aspects of Sudo:\n" -" Users: The user(s)/group(s) allowed to invoke Sudo.\n" -" Hosts: The host(s)/hostgroup(s) which the user is allowed to to invoke " -"Sudo.\n" -" Allow Command: The specific command(s) permitted to be run via Sudo.\n" -" Deny Command: The specific command(s) prohibited to be run via Sudo.\n" -" RunAsUser: The user(s) or group(s) of users whose rights Sudo will be " -"invoked with.\n" -" RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" -" Options: The various Sudoers Options that can modify Sudo's behavior.\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:59 -msgid "" -"\n" -"Each option needs to be added separately and no validation is done whether\n" -"the option is known by sudo or is in a valid format. Environment variables\n" -"also need to be set individually. For example env_keep=\"FOO BAR\" in " -"sudoers\n" -"needs be represented as --sudooption env_keep=FOO --sudooption env_keep" -"+=BAR.\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:64 -msgid "" -"\n" -"An order can be added to a sudorule to control the order in which they\n" -"are evaluated (if the client supports it). This order is an integer and\n" -"must be unique.\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:68 -msgid "" -"\n" -"IPA provides a designated binddn to use with Sudo located at:\n" -"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:71 -msgid "" -"\n" -"To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:78 -msgid "" -"\n" -" Create a new rule:\n" -" ipa sudorule-add readfiles\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:81 -msgid "" -"\n" -" Add sudo command object and add it as allowed command in the rule:\n" -" ipa sudocmd-add /usr/bin/less\n" -" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:85 -msgid "" -"\n" -" Add a host to the rule:\n" -" ipa sudorule-add-host readfiles --hosts server.example.com\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:88 -msgid "" -"\n" -" Add a user to the rule:\n" -" ipa sudorule-add-user readfiles --users jsmith\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:91 -msgid "" -"\n" -" Add a special Sudo rule for default Sudo server configuration:\n" -" ipa sudorule-add defaults\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:94 -msgid "" -"\n" -" Set a default Sudo option:\n" -" ipa sudorule-add-option defaults --sudooption '!authenticate'\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:97 -msgid "" -"\n" -" Set multiple default Sudo options:\n" -" ipa sudorule-add-option defaults --sudooption '!authenticate' --" -"sudooption mail_badpass\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:101 -msgid "" -"\n" -" Set SELinux type and role transitions on a rule:\n" -" ipa sudorule-add-option sysadmin_sudo --sudooption type=unconfined_t\n" -" ipa sudorule-add-option sysadmin_sudo --sudooption role=unconfined_r\n" -msgstr "" - -#: ipaserver/plugins/sudorule.py:120 -msgid "this option has been deprecated." -msgstr "" - -#: ipaserver/plugins/sudorule.py:148 -msgid "sudo rules" -msgstr "" - -#: ipaserver/plugins/sudorule.py:236 -msgid "Sudo Rules" -msgstr "" - -#: ipaserver/plugins/sudorule.py:237 -msgid "Sudo Rule" -msgstr "" - -#: ipaserver/plugins/sudorule.py:372 +#: ipaserver/topology.py:121 #, python-format -msgid "order must be a unique value (%(order)d already used by %(rule)s)" -msgstr "" - -#: ipaserver/plugins/sudorule.py:403 -#, python-format -msgid "Added Sudo Rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/sudorule.py:410 -#, python-format -msgid "Deleted Sudo Rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/sudorule.py:417 -#, python-format -msgid "Modified Sudo Rule \"%(value)s\"" -msgstr "" - -#: ipaserver/plugins/sudorule.py:436 -#, python-format -msgid "" -"%(type)s category cannot be set to 'all' while there are allowed %(objects)s" -msgstr "" - -#: ipaserver/plugins/sudorule.py:452 -msgid "command" -msgstr "" - -#: ipaserver/plugins/sudorule.py:452 -msgid "commands" -msgstr "" - -#: ipaserver/plugins/sudorule.py:458 -msgid "runAs user" -msgstr "" - -#: ipaserver/plugins/sudorule.py:458 -msgid "runAs users" -msgstr "" - -#: ipaserver/plugins/sudorule.py:463 -msgid "group runAs" -msgstr "" - -#: ipaserver/plugins/sudorule.py:463 -msgid "runAs groups" -msgstr "" - -#: ipaserver/plugins/sudorule.py:484 -#, python-format -msgid "%(count)d Sudo Rule matched" -msgid_plural "%(count)d Sudo Rules matched" -msgstr[0] "" -msgstr[1] "" - -#: ipaserver/plugins/sudorule.py:556 -msgid "commands cannot be added when command category='all'" -msgstr "" - -#: ipaserver/plugins/sudorule.py:818 ipaserver/plugins/sudorule.py:940 -msgid "users cannot be added when runAs user or runAs group category='all'" -msgstr "" - -#: ipaserver/plugins/sudorule.py:825 -#, python-format -msgid "RunAsUser does not accept '%(name)s' as a user name" -msgstr "" - -#: ipaserver/plugins/sudorule.py:833 -#, python-format -msgid "RunAsUser does not accept '%(name)s' as a group name" -msgstr "" - -#: ipaserver/plugins/sudorule.py:947 -#, python-format -msgid "RunAsGroup does not accept '%(name)s' as a group name" +msgid "Topology does not allow server %(server)s to replicate with servers:" msgstr "" #: ipaserver/rpcserver.py:556 @@ -27180,42 +27169,6 @@ msgstr "" msgid "params[1] (aka options) must be a dict" msgstr "" -#: ipaserver/servroles.py:296 -#, python-format -msgid "all masters must have %(role)s role enabled" -msgstr "" - -#: ipaserver/servroles.py:401 -#, python-format -msgid "must have %(role)s role enabled" -msgstr "" - -#: ipaserver/servroles.py:443 -msgid "must be enabled only on a single master" -msgstr "" - -#: ipaserver/topology.py:14 -#, python-format -msgid "" -"\n" -"Replication topology in suffix '%(suffix)s' is disconnected:\n" -"%(errors)s" -msgstr "" - -#: ipaserver/topology.py:18 -#, python-format -msgid "" -"\n" -"Removal of '%(hostname)s' leads to disconnected topology in suffix " -"'%(suffix)s':\n" -"%(errors)s" -msgstr "" - -#: ipaserver/topology.py:121 -#, python-format -msgid "Topology does not allow server %(server)s to replicate with servers:" -msgstr "" - #: ipaserver/dcerpc.py:87 msgid "" "\n" @@ -27396,6 +27349,57 @@ msgid "" "instead" msgstr "" +#: ipaserver/dcerpc_common.py:20 +msgid "Trusting forest" +msgstr "" + +#: ipaserver/dcerpc_common.py:21 +msgid "Trusted forest" +msgstr "" + +#: ipaserver/dcerpc_common.py:26 +msgid "Established and verified" +msgstr "" + +#: ipaserver/dcerpc_common.py:27 +msgid "Waiting for confirmation by remote side" +msgstr "" + +#: ipaserver/dcerpc_common.py:30 +msgid "Unknown" +msgstr "" + +#: ipaserver/dcerpc_common.py:36 +msgid "Non-Active Directory domain" +msgstr "" + +#: ipaserver/dcerpc_common.py:38 +msgid "RFC4120-compliant Kerberos realm" +msgstr "" + +#: ipaserver/dcerpc_common.py:39 +msgid "" +"Non-transitive external trust to a domain in another Active Directory forest" +msgstr "" + +#: ipaserver/dcerpc_common.py:41 +msgid "Non-transitive external trust to an RFC4120-compliant Kerberos realm" +msgstr "" + +#: ipaserver/servroles.py:296 +#, python-format +msgid "all masters must have %(role)s role enabled" +msgstr "" + +#: ipaserver/servroles.py:401 +#, python-format +msgid "must have %(role)s role enabled" +msgstr "" + +#: ipaserver/servroles.py:443 +msgid "must be enabled only on a single master" +msgstr "" + #: ipatests/test_ipalib/test_frontend.py:206 #, python-format msgid "must equal %r" @@ -27420,6 +27424,41 @@ msgstr "" msgid "must be at least 1" msgstr "" +#: util/ipa_ldap.c:79 +#, c-format +msgid "Unable to initialize connection to ldap server %1$s: %2$s\n" +msgstr "" + +#: util/ipa_ldap.c:89 +msgid "Unable to set LDAP_OPT_PROTOCOL_VERSION\n" +msgstr "" + +#: util/ipa_ldap.c:97 +msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n" +msgstr "" + +#: util/ipa_ldap.c:126 +msgid "Unable to set LDAP_OPT_X_TLS_CACERTFILE\n" +msgstr "" + +#: util/ipa_ldap.c:133 +msgid "Unable to set LDAP_OPT_X_TLS_REQUIRE_CERT\n" +msgstr "" + +#: util/ipa_ldap.c:140 +msgid "Unable to set LDAP_OPT_X_TLS_PROTOCOL_MIN\n" +msgstr "" + +#: util/ipa_ldap.c:147 +msgid "" +"Unable to create new TLS context (OpenSSL failed to initialize or to load " +"certificates)\n" +msgstr "" + +#: util/ipa_ldap.c:156 +msgid "Unable to initialize STARTTLS session\n" +msgstr "" + #: util/ipa_krb5.c:813 util/ipa_krb5.c:828 msgid "Out of memory\n" msgstr "" @@ -27456,38 +27495,3 @@ msgstr "" #: util/ipa_krb5.c:1069 msgid "Bad or unsupported salt type.\n" msgstr "" - -#: util/ipa_ldap.c:79 -#, c-format -msgid "Unable to initialize connection to ldap server %1$s: %2$s\n" -msgstr "" - -#: util/ipa_ldap.c:89 -msgid "Unable to set LDAP_OPT_PROTOCOL_VERSION\n" -msgstr "" - -#: util/ipa_ldap.c:97 -msgid "Unable to set LDAP_OPT_X_SASL_NOCANON\n" -msgstr "" - -#: util/ipa_ldap.c:126 -msgid "Unable to set LDAP_OPT_X_TLS_CACERTFILE\n" -msgstr "" - -#: util/ipa_ldap.c:133 -msgid "Unable to set LDAP_OPT_X_TLS_REQUIRE_CERT\n" -msgstr "" - -#: util/ipa_ldap.c:140 -msgid "Unable to set LDAP_OPT_X_TLS_PROTOCOL_MIN\n" -msgstr "" - -#: util/ipa_ldap.c:147 -msgid "" -"Unable to create new TLS context (OpenSSL failed to initialize or to load " -"certificates)\n" -msgstr "" - -#: util/ipa_ldap.c:156 -msgid "Unable to initialize STARTTLS session\n" -msgstr "" diff --git a/po/ru.po b/po/ru.po index be4e57b65..a27b2495a 100644 --- a/po/ru.po +++ b/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: freeipa 4.9.0.dev201908140712+gitc9938e3d8\n" "Report-Msgid-Bugs-To: https://pagure.io/freeipa/new_issue\n" -"POT-Creation-Date: 2021-11-25 18:55+0100\n" +"POT-Creation-Date: 2022-02-07 08:35+0200\n" "PO-Revision-Date: 2019-11-12 12:31+0000\n" "Last-Translator: Olesya Gerasimenko \n" "Language-Team: Russian\n" @@ -13654,196 +13654,6 @@ msgstr "" "\n" "Правила Sudo\n" -msgid "" -"\n" -"Sudo Rules\n" -"\n" -"Sudo (su \"do\") allows a system administrator to delegate authority to\n" -"give certain users (or groups of users) the ability to run some (or all)\n" -"commands as root or another user while providing an audit trail of the\n" -"commands and their arguments.\n" -"\n" -"IPA provides a means to configure the various aspects of Sudo:\n" -" Users: The user(s)/group(s) allowed to invoke Sudo.\n" -" Hosts: The host(s)/hostgroup(s) which the user is allowed to to invoke " -"Sudo.\n" -" Allow Command: The specific command(s) permitted to be run via Sudo.\n" -" Deny Command: The specific command(s) prohibited to be run via Sudo.\n" -" RunAsUser: The user(s) or group(s) of users whose rights Sudo will be " -"invoked with.\n" -" RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" -" Options: The various Sudoers Options that can modify Sudo's behavior.\n" -"\n" -"An order can be added to a sudorule to control the order in which they\n" -"are evaluated (if the client supports it). This order is an integer and\n" -"must be unique.\n" -"\n" -"IPA provides a designated binddn to use with Sudo located at:\n" -"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" -"\n" -"To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" -"\n" -"EXAMPLES:\n" -"\n" -" Create a new rule:\n" -" ipa sudorule-add readfiles\n" -"\n" -" Add sudo command object and add it as allowed command in the rule:\n" -" ipa sudocmd-add /usr/bin/less\n" -" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" -"\n" -" Add a host to the rule:\n" -" ipa sudorule-add-host readfiles --hosts server.example.com\n" -"\n" -" Add a user to the rule:\n" -" ipa sudorule-add-user readfiles --users jsmith\n" -"\n" -" Add a special Sudo rule for default Sudo server configuration:\n" -" ipa sudorule-add defaults\n" -"\n" -" Set a default Sudo option:\n" -" ipa sudorule-add-option defaults --sudooption '!authenticate'\n" -msgstr "" -"\n" -"Правила Sudo\n" -"\n" -"Sudo (su \"do\") позволяет системному администратору делегировать " -"полномочия, чтобы дать определённым пользователям (или группам " -"пользователей) возможность выполнять некоторые (или все) команды от имени " -"пользователя \"root\" или другого пользователя, вместе с тем предоставляя " -"журнал аудита команд и их аргументов.\n" -"\n" -"IPA предоставляет возможности настройки различных аспектов Sudo:\n" -" Users: пользователь (пользователи) или группа (группы), которые могут " -"вызывать Sudo.\n" -" Hosts: узел (узлы) или группа (группы) узлов, пользователи которых могут " -"вызывать Sudo.\n" -" Allow Command: конкретная команда (команды), которые разрешены для " -"выполнения с помощью Sudo. \n" -" Deny Command: конкретная команда (команды), которые запрещены для " -"выполнения с помощью Sudo.\n" -" RunAsUser: пользователь (пользователи) или группа (группы) пользователей, " -"от имени которых Sudo будет выполнять команды.\n" -" RunAsGroup: группа (группы), от имени которых Sudo будет выполнять " -"команды.\n" -" Options: различные параметры sudoers (участники Sudo), которые могут " -"изменить поведение Sudo.\n" -"\n" -"Правилу Sudo можно добавить порядок, который будет руководить порядком " -"обработки записей (если такой порядок предусмотрен на клиентской стороне). " -"Порядок определяется числовым индексом (целое число), который не должен " -"повторяться.\n" -"\n" -"IPA предусматривает специальную привязку DN (binddn) для использования с " -"Sudo:\n" -"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" -"\n" -"Чтобы включить binddn, выполните следующую команду для установки пароля:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" -"\n" -"ПРИМЕРЫ:\n" -"\n" -" Создать новое правило:\n" -" ipa sudorule-add readfiles\n" -"\n" -" Добавить объект команды Sudo и добавить его в правило в качестве " -"разрешённой команды:\n" -" ipa sudocmd-add /usr/bin/less\n" -" ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" -"\n" -" Добавить узел в правило:\n" -" ipa sudorule-add-host readfiles --hosts server.example.com\n" -"\n" -" Добавить пользователя в правило:\n" -" ipa sudorule-add-user readfiles --users jsmith\n" -"\n" -" Добавить специальное правило Sudo для конфигурации сервера Sudo по " -"умолчанию:\n" -" ipa sudorule-add defaults\n" -"\n" -" Указать параметр Sudo по умолчанию:\n" -" ipa sudorule-add-option defaults --sudooption '!authenticate'\n" - -msgid "" -"\n" -"Sudo Rules\n" -"\n" -"Sudo (su \"do\") allows a system administrator to delegate authority to\n" -"give certain users (or groups of users) the ability to run some (or all)\n" -"commands as root or another user while providing an audit trail of the\n" -"commands and their arguments.\n" -"\n" -"IPA provides a means to configure the various aspects of Sudo:\n" -" Users: The user(s)/group(s) allowed to invoke Sudo.\n" -" Hosts: The host(s)/hostgroup(s) which the user is allowed to to invoke " -"Sudo.\n" -" Allow Command: The specific command(s) permitted to be run via Sudo.\n" -" Deny Command: The specific command(s) prohibited to be run via Sudo.\n" -" RunAsUser: The user(s) or group(s) of users whose rights Sudo will be " -"invoked with.\n" -" RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" -" Options: The various Sudoers Options that can modify Sudo's behavior.\n" -"\n" -"An order can be added to a sudorule to control the order in which they\n" -"are evaluated (if the client supports it). This order is an integer and\n" -"must be unique.\n" -"\n" -"IPA provides a designated binddn to use with Sudo located at:\n" -"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" -"\n" -"To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" -"\n" -"For more information, see the IPA Documentation to Sudo.\n" -msgstr "" -"\n" -"Правила Sudo\n" -"\n" -"Sudo (su \"do\") позволяет системному администратору делегировать " -"полномочия, чтобы дать определённым пользователям (или группам " -"пользователей) возможность выполнять некоторые (или все) команды от имени " -"пользователя \"root\" или другого пользователя, вместе с тем предоставляя " -"журнал аудита команд и их аргументов.\n" -"\n" -"IPA предоставляет возможности настройки различных аспектов Sudo:\n" -" Users: пользователь (пользователи) или группа (группы), которые могут " -"вызывать Sudo.\n" -" Hosts: узел (узлы) или группа (группы) узлов, пользователи которых могут " -"вызывать Sudo.\n" -" Allow Command: конкретная команда (команды), которые разрешены для " -"выполнения с помощью Sudo. \n" -" Deny Command: конкретная команда (команды), которые запрещены для " -"выполнения с помощью Sudo.\n" -" RunAsUser: пользователь (пользователи) или группа (группы) пользователей, " -"от имени которых Sudo будет выполнять команды.\n" -" RunAsGroup: группа (группы), от имени которых Sudo будет выполнять " -"команды.\n" -" Options: различные параметры sudoers (участники Sudo), которые могут " -"изменить поведение Sudo.\n" -"\n" -"Правилу Sudo можно добавить порядок, который будет руководить порядком " -"обработки записей (если такой порядок предусмотрен на клиентской стороне). " -"Порядок определяется числовым индексом (целое число), который не должен " -"повторяться.\n" -"\n" -"IPA предусматривает специальную привязку DN (binddn) для использования с " -"Sudo:\n" -"uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" -"\n" -"Чтобы включить binddn, выполните следующую команду для установки пароля:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" -"\n" -"Дополнительные сведения приведены в документации IPA по Sudo.\n" - msgid "" "\n" "Symmetric vault is similar to the standard vault, but it\n" @@ -13942,15 +13752,15 @@ msgstr "" msgid "" "\n" "To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +"example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc," +"dc=example,dc=com\n" msgstr "" "\n" "Чтобы включить binddn, выполните следующую команду для установки пароля:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" -"ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," -"dc=com\n" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +"example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc," +"dc=example,dc=com\n" msgid "" "\n" @@ -29989,6 +29799,196 @@ msgstr "{role}: роль не найдена" #~ "Процедуры по созданию запросов на подпись сертификатов с помощью данных " #~ "IPA и сохранённых шаблонов.\n" +#~ msgid "" +#~ "\n" +#~ "Sudo Rules\n" +#~ "\n" +#~ "Sudo (su \"do\") allows a system administrator to delegate authority to\n" +#~ "give certain users (or groups of users) the ability to run some (or all)\n" +#~ "commands as root or another user while providing an audit trail of the\n" +#~ "commands and their arguments.\n" +#~ "\n" +#~ "IPA provides a means to configure the various aspects of Sudo:\n" +#~ " Users: The user(s)/group(s) allowed to invoke Sudo.\n" +#~ " Hosts: The host(s)/hostgroup(s) which the user is allowed to to invoke " +#~ "Sudo.\n" +#~ " Allow Command: The specific command(s) permitted to be run via Sudo.\n" +#~ " Deny Command: The specific command(s) prohibited to be run via Sudo.\n" +#~ " RunAsUser: The user(s) or group(s) of users whose rights Sudo will be " +#~ "invoked with.\n" +#~ " RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" +#~ " Options: The various Sudoers Options that can modify Sudo's behavior.\n" +#~ "\n" +#~ "An order can be added to a sudorule to control the order in which they\n" +#~ "are evaluated (if the client supports it). This order is an integer and\n" +#~ "must be unique.\n" +#~ "\n" +#~ "IPA provides a designated binddn to use with Sudo located at:\n" +#~ "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" +#~ "\n" +#~ "To enable the binddn run the following command to set the password:\n" +#~ "LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +#~ "example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts," +#~ "cn=etc,dc=example,dc=com\n" +#~ "\n" +#~ "EXAMPLES:\n" +#~ "\n" +#~ " Create a new rule:\n" +#~ " ipa sudorule-add readfiles\n" +#~ "\n" +#~ " Add sudo command object and add it as allowed command in the rule:\n" +#~ " ipa sudocmd-add /usr/bin/less\n" +#~ " ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" +#~ "\n" +#~ " Add a host to the rule:\n" +#~ " ipa sudorule-add-host readfiles --hosts server.example.com\n" +#~ "\n" +#~ " Add a user to the rule:\n" +#~ " ipa sudorule-add-user readfiles --users jsmith\n" +#~ "\n" +#~ " Add a special Sudo rule for default Sudo server configuration:\n" +#~ " ipa sudorule-add defaults\n" +#~ "\n" +#~ " Set a default Sudo option:\n" +#~ " ipa sudorule-add-option defaults --sudooption '!authenticate'\n" +#~ msgstr "" +#~ "\n" +#~ "Правила Sudo\n" +#~ "\n" +#~ "Sudo (su \"do\") позволяет системному администратору делегировать " +#~ "полномочия, чтобы дать определённым пользователям (или группам " +#~ "пользователей) возможность выполнять некоторые (или все) команды от имени " +#~ "пользователя \"root\" или другого пользователя, вместе с тем предоставляя " +#~ "журнал аудита команд и их аргументов.\n" +#~ "\n" +#~ "IPA предоставляет возможности настройки различных аспектов Sudo:\n" +#~ " Users: пользователь (пользователи) или группа (группы), которые могут " +#~ "вызывать Sudo.\n" +#~ " Hosts: узел (узлы) или группа (группы) узлов, пользователи которых " +#~ "могут вызывать Sudo.\n" +#~ " Allow Command: конкретная команда (команды), которые разрешены для " +#~ "выполнения с помощью Sudo. \n" +#~ " Deny Command: конкретная команда (команды), которые запрещены для " +#~ "выполнения с помощью Sudo.\n" +#~ " RunAsUser: пользователь (пользователи) или группа (группы) " +#~ "пользователей, от имени которых Sudo будет выполнять команды.\n" +#~ " RunAsGroup: группа (группы), от имени которых Sudo будет выполнять " +#~ "команды.\n" +#~ " Options: различные параметры sudoers (участники Sudo), которые могут " +#~ "изменить поведение Sudo.\n" +#~ "\n" +#~ "Правилу Sudo можно добавить порядок, который будет руководить порядком " +#~ "обработки записей (если такой порядок предусмотрен на клиентской " +#~ "стороне). Порядок определяется числовым индексом (целое число), который " +#~ "не должен повторяться.\n" +#~ "\n" +#~ "IPA предусматривает специальную привязку DN (binddn) для использования с " +#~ "Sudo:\n" +#~ "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" +#~ "\n" +#~ "Чтобы включить binddn, выполните следующую команду для установки пароля:\n" +#~ "LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +#~ "example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts," +#~ "cn=etc,dc=example,dc=com\n" +#~ "\n" +#~ "ПРИМЕРЫ:\n" +#~ "\n" +#~ " Создать новое правило:\n" +#~ " ipa sudorule-add readfiles\n" +#~ "\n" +#~ " Добавить объект команды Sudo и добавить его в правило в качестве " +#~ "разрешённой команды:\n" +#~ " ipa sudocmd-add /usr/bin/less\n" +#~ " ipa sudorule-add-allow-command readfiles --sudocmds /usr/bin/less\n" +#~ "\n" +#~ " Добавить узел в правило:\n" +#~ " ipa sudorule-add-host readfiles --hosts server.example.com\n" +#~ "\n" +#~ " Добавить пользователя в правило:\n" +#~ " ipa sudorule-add-user readfiles --users jsmith\n" +#~ "\n" +#~ " Добавить специальное правило Sudo для конфигурации сервера Sudo по " +#~ "умолчанию:\n" +#~ " ipa sudorule-add defaults\n" +#~ "\n" +#~ " Указать параметр Sudo по умолчанию:\n" +#~ " ipa sudorule-add-option defaults --sudooption '!authenticate'\n" + +#~ msgid "" +#~ "\n" +#~ "Sudo Rules\n" +#~ "\n" +#~ "Sudo (su \"do\") allows a system administrator to delegate authority to\n" +#~ "give certain users (or groups of users) the ability to run some (or all)\n" +#~ "commands as root or another user while providing an audit trail of the\n" +#~ "commands and their arguments.\n" +#~ "\n" +#~ "IPA provides a means to configure the various aspects of Sudo:\n" +#~ " Users: The user(s)/group(s) allowed to invoke Sudo.\n" +#~ " Hosts: The host(s)/hostgroup(s) which the user is allowed to to invoke " +#~ "Sudo.\n" +#~ " Allow Command: The specific command(s) permitted to be run via Sudo.\n" +#~ " Deny Command: The specific command(s) prohibited to be run via Sudo.\n" +#~ " RunAsUser: The user(s) or group(s) of users whose rights Sudo will be " +#~ "invoked with.\n" +#~ " RunAsGroup: The group(s) whose gid rights Sudo will be invoked with.\n" +#~ " Options: The various Sudoers Options that can modify Sudo's behavior.\n" +#~ "\n" +#~ "An order can be added to a sudorule to control the order in which they\n" +#~ "are evaluated (if the client supports it). This order is an integer and\n" +#~ "must be unique.\n" +#~ "\n" +#~ "IPA provides a designated binddn to use with Sudo located at:\n" +#~ "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" +#~ "\n" +#~ "To enable the binddn run the following command to set the password:\n" +#~ "LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +#~ "example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts," +#~ "cn=etc,dc=example,dc=com\n" +#~ "\n" +#~ "For more information, see the IPA Documentation to Sudo.\n" +#~ msgstr "" +#~ "\n" +#~ "Правила Sudo\n" +#~ "\n" +#~ "Sudo (su \"do\") позволяет системному администратору делегировать " +#~ "полномочия, чтобы дать определённым пользователям (или группам " +#~ "пользователей) возможность выполнять некоторые (или все) команды от имени " +#~ "пользователя \"root\" или другого пользователя, вместе с тем предоставляя " +#~ "журнал аудита команд и их аргументов.\n" +#~ "\n" +#~ "IPA предоставляет возможности настройки различных аспектов Sudo:\n" +#~ " Users: пользователь (пользователи) или группа (группы), которые могут " +#~ "вызывать Sudo.\n" +#~ " Hosts: узел (узлы) или группа (группы) узлов, пользователи которых " +#~ "могут вызывать Sudo.\n" +#~ " Allow Command: конкретная команда (команды), которые разрешены для " +#~ "выполнения с помощью Sudo. \n" +#~ " Deny Command: конкретная команда (команды), которые запрещены для " +#~ "выполнения с помощью Sudo.\n" +#~ " RunAsUser: пользователь (пользователи) или группа (группы) " +#~ "пользователей, от имени которых Sudo будет выполнять команды.\n" +#~ " RunAsGroup: группа (группы), от имени которых Sudo будет выполнять " +#~ "команды.\n" +#~ " Options: различные параметры sudoers (участники Sudo), которые могут " +#~ "изменить поведение Sudo.\n" +#~ "\n" +#~ "Правилу Sudo можно добавить порядок, который будет руководить порядком " +#~ "обработки записей (если такой порядок предусмотрен на клиентской " +#~ "стороне). Порядок определяется числовым индексом (целое число), который " +#~ "не должен повторяться.\n" +#~ "\n" +#~ "IPA предусматривает специальную привязку DN (binddn) для использования с " +#~ "Sudo:\n" +#~ "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" +#~ "\n" +#~ "Чтобы включить binddn, выполните следующую команду для установки пароля:\n" +#~ "LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa." +#~ "example.com -ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts," +#~ "cn=etc,dc=example,dc=com\n" +#~ "\n" +#~ "Дополнительные сведения приведены в документации IPA по Sudo.\n" + #~ msgid "CSR Generation Profile to use" #~ msgstr "Профиль создания CSR, который следует использовать" diff --git a/po/si.po b/po/si.po index 38262cc35..e3edea645 100644 --- a/po/si.po +++ b/po/si.po @@ -7834,7 +7834,7 @@ msgid "" "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" "\n" "To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa.example.com -" "ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," "dc=com\n" "\n" @@ -11438,7 +11438,7 @@ msgid "" "uid=sudo,cn=sysaccounts,cn=etc,dc=example,dc=com\n" "\n" "To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa.example.com -" "ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," "dc=com\n" "\n" @@ -13100,7 +13100,7 @@ msgstr "" msgid "" "\n" "To enable the binddn run the following command to set the password:\n" -"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -h ipa.example.com -" +"LDAPTLS_CACERT=/etc/ipa/ca.crt /usr/bin/ldappasswd -S -W -H ldap://ipa.example.com -" "ZZ -D \"cn=Directory Manager\" uid=sudo,cn=sysaccounts,cn=etc,dc=example," "dc=com\n" msgstr "" diff --git a/po/uk.po b/po/uk.po index 70d0279cd..d00b147ff 100644 --- a/po/uk.po +++ b/po/uk.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: freeipa 4.9.0.dev201908140712+gitc9938e3d8\n" "Report-Msgid-Bugs-To: https://pagure.io/freeipa/new_issue\n" -"POT-Creation-Date: 2021-11-25 18:55+0100\n" +"POT-Creation-Date: 2022-02-07 08:35+0200\n" "PO-Revision-Date: 2021-04-26 19:02+0000\n" "Last-Translator: Yuri Chornoivan \n" "Language-Team: Ukrainian