masks-server 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/controllers/masks/server/enrollments_controller.rb +66 -0
- data/app/controllers/masks/server/introspections_controller.rb +2 -2
- data/app/controllers/masks/server/registrations_controller.rb +31 -1
- data/app/graphql/masks/server/manage/types/client_type.rb +8 -0
- data/app/graphql/masks/server/manage/types/query_type.rb +6 -1
- data/app/helpers/masks/server/application_helper.rb +0 -1
- data/app/helpers/masks/server/scopes_helper.rb +28 -0
- data/app/jobs/masks/server/cleanup_job.rb +1 -0
- data/app/models/masks/server/client.rb +81 -1
- data/app/models/masks/server/client_keys.rb +6 -1
- data/app/models/masks/server/enrollment_token.rb +54 -0
- data/app/models/masks/server/event.rb +3 -0
- data/app/models/masks/server/issuer.rb +1 -0
- data/app/models/masks/server/namespace.rb +6 -3
- data/app/models/masks/server/replay.rb +22 -4
- data/app/models/masks/server/token.rb +1 -0
- data/app/views/layouts/masks/server/manage.html.erb +2 -2
- data/app/views/masks/server/application/_person.html.erb +1 -1
- data/app/views/masks/server/handshakes/show.html.erb +129 -59
- data/config/locales/de/account.yml +1 -1
- data/config/locales/de/events.yml +5 -2
- data/config/locales/de/flashes.yml +2 -2
- data/config/locales/de/handshakes.yml +33 -14
- data/config/locales/de/mailers.yml +1 -1
- data/config/locales/de/manage/activity.yml +2 -2
- data/config/locales/de/manage/actor.yml +41 -23
- data/config/locales/de/manage/actors.yml +16 -15
- data/config/locales/de/manage/api.yml +1 -1
- data/config/locales/de/manage/app.yml +6 -6
- data/config/locales/de/manage/client.yml +45 -45
- data/config/locales/de/manage/clients.yml +28 -32
- data/config/locales/de/manage/connections.yml +2 -2
- data/config/locales/de/manage/consents.yml +2 -2
- data/config/locales/de/manage/device.yml +7 -7
- data/config/locales/de/manage/devices.yml +18 -18
- data/config/locales/de/manage/directory.yml +1 -1
- data/config/locales/de/manage/domains.yml +6 -6
- data/config/locales/de/manage/emails.yml +4 -4
- data/config/locales/de/manage/events.yml +3 -0
- data/config/locales/de/manage/groups.yml +6 -6
- data/config/locales/de/manage/ldap.yml +8 -8
- data/config/locales/de/manage/namespaces.yml +1 -1
- data/config/locales/de/manage/organization.yml +15 -8
- data/config/locales/de/manage/organizations.yml +3 -3
- data/config/locales/de/manage/policies.yml +6 -6
- data/config/locales/de/manage/policy_rules.yml +1 -1
- data/config/locales/de/manage/presence.yml +6 -6
- data/config/locales/de/manage/providers.yml +70 -48
- data/config/locales/de/manage/provisioning.yml +4 -4
- data/config/locales/de/manage/senders.yml +1 -1
- data/config/locales/de/manage/settings.yml +37 -26
- data/config/locales/de/manage/settings_shell.yml +2 -2
- data/config/locales/de/refusals.yml +5 -5
- data/config/locales/en/account.yml +3 -3
- data/config/locales/en/events.yml +4 -1
- data/config/locales/en/flashes.yml +3 -3
- data/config/locales/en/handshakes.yml +33 -14
- data/config/locales/en/logins.yml +2 -2
- data/config/locales/en/manage/actor.yml +32 -14
- data/config/locales/en/manage/actors.yml +16 -15
- data/config/locales/en/manage/app.yml +5 -5
- data/config/locales/en/manage/client.yml +9 -9
- data/config/locales/en/manage/clients.yml +8 -12
- data/config/locales/en/manage/connections.yml +1 -1
- data/config/locales/en/manage/consents.yml +1 -1
- data/config/locales/en/manage/device.yml +1 -1
- data/config/locales/en/manage/devices.yml +1 -1
- data/config/locales/en/manage/directory.yml +1 -1
- data/config/locales/en/manage/domains.yml +6 -6
- data/config/locales/en/manage/emails.yml +4 -4
- data/config/locales/en/manage/events.yml +3 -0
- data/config/locales/en/manage/groups.yml +6 -6
- data/config/locales/en/manage/ldap.yml +8 -8
- data/config/locales/en/manage/messages.yml +1 -1
- data/config/locales/en/manage/namespaces.yml +1 -1
- data/config/locales/en/manage/organization.yml +16 -9
- data/config/locales/en/manage/organizations.yml +3 -3
- data/config/locales/en/manage/policies.yml +6 -6
- data/config/locales/en/manage/policy_rules.yml +2 -2
- data/config/locales/en/manage/presence.yml +1 -1
- data/config/locales/en/manage/providers.yml +70 -48
- data/config/locales/en/manage/provisioning.yml +4 -4
- data/config/locales/en/manage/senders.yml +2 -2
- data/config/locales/en/manage/settings.yml +34 -23
- data/config/locales/es/account.yml +1 -1
- data/config/locales/es/application.yml +1 -1
- data/config/locales/es/events.yml +4 -1
- data/config/locales/es/flashes.yml +4 -4
- data/config/locales/es/handshakes.yml +33 -14
- data/config/locales/es/logins.yml +12 -12
- data/config/locales/es/mailers.yml +7 -7
- data/config/locales/es/manage/activity.yml +2 -2
- data/config/locales/es/manage/actor.yml +33 -15
- data/config/locales/es/manage/actors.yml +17 -16
- data/config/locales/es/manage/api.yml +1 -1
- data/config/locales/es/manage/app.yml +6 -6
- data/config/locales/es/manage/client.yml +30 -30
- data/config/locales/es/manage/clients.yml +22 -26
- data/config/locales/es/manage/connections.yml +1 -1
- data/config/locales/es/manage/consents.yml +1 -1
- data/config/locales/es/manage/device.yml +1 -1
- data/config/locales/es/manage/directory.yml +1 -1
- data/config/locales/es/manage/domains.yml +5 -5
- data/config/locales/es/manage/emails.yml +7 -7
- data/config/locales/es/manage/events.yml +3 -0
- data/config/locales/es/manage/groups.yml +6 -6
- data/config/locales/es/manage/ldap.yml +8 -8
- data/config/locales/es/manage/namespaces.yml +1 -1
- data/config/locales/es/manage/organization.yml +16 -9
- data/config/locales/es/manage/organizations.yml +3 -3
- data/config/locales/es/manage/policies.yml +8 -8
- data/config/locales/es/manage/policy_rules.yml +2 -2
- data/config/locales/es/manage/providers.yml +70 -48
- data/config/locales/es/manage/provisioning.yml +4 -4
- data/config/locales/es/manage/senders.yml +1 -1
- data/config/locales/es/manage/settings.yml +38 -27
- data/config/locales/es/manage/settings_shell.yml +2 -2
- data/config/locales/es/refusals.yml +3 -3
- data/config/locales/fr/events.yml +3 -0
- data/config/locales/fr/flashes.yml +1 -1
- data/config/locales/fr/handshakes.yml +33 -14
- data/config/locales/fr/manage/activity.yml +4 -4
- data/config/locales/fr/manage/actor.yml +43 -25
- data/config/locales/fr/manage/actors.yml +22 -21
- data/config/locales/fr/manage/api.yml +1 -1
- data/config/locales/fr/manage/app.yml +7 -7
- data/config/locales/fr/manage/client.yml +50 -50
- data/config/locales/fr/manage/clients.yml +28 -32
- data/config/locales/fr/manage/connections.yml +2 -2
- data/config/locales/fr/manage/consents.yml +1 -1
- data/config/locales/fr/manage/device.yml +1 -1
- data/config/locales/fr/manage/directory.yml +1 -1
- data/config/locales/fr/manage/domains.yml +6 -6
- data/config/locales/fr/manage/emails.yml +5 -5
- data/config/locales/fr/manage/events.yml +3 -0
- data/config/locales/fr/manage/groups.yml +6 -6
- data/config/locales/fr/manage/ldap.yml +8 -8
- data/config/locales/fr/manage/namespaces.yml +1 -1
- data/config/locales/fr/manage/organization.yml +15 -8
- data/config/locales/fr/manage/organizations.yml +3 -3
- data/config/locales/fr/manage/policies.yml +6 -6
- data/config/locales/fr/manage/policy_rules.yml +1 -1
- data/config/locales/fr/manage/providers.yml +70 -48
- data/config/locales/fr/manage/provisioning.yml +4 -4
- data/config/locales/fr/manage/senders.yml +1 -1
- data/config/locales/fr/manage/settings.yml +38 -27
- data/config/locales/fr/manage/settings_shell.yml +2 -2
- data/config/routes.rb +2 -0
- data/config/vite.json +1 -0
- data/db/migrate/20261011190000_add_enrolled_by_to_clients.rb +5 -0
- data/db/migrate/20261012100000_create_replays.rb +23 -0
- data/public/masks-assets/.vite/manifest-assets.json +1 -0
- data/public/masks-assets/.vite/manifest.json +62 -0
- data/public/masks-assets/assets/app-DoQZrM_J.css +2 -0
- data/public/masks-assets/assets/console-DoyNbIw3.css +1 -0
- data/public/masks-assets/assets/handshake-DIFZPSAK.js +2 -0
- data/public/masks-assets/assets/handshake-DIFZPSAK.js.map +1 -0
- data/public/masks-assets/assets/manage-isLCrWiU.js +567 -0
- data/public/masks-assets/assets/manage-isLCrWiU.js.map +1 -0
- data/version.txt +1 -1
- metadata +14 -7
- data/public/masks-assets/assets/app-olx-5PkA.css +0 -2
- data/public/masks-assets/assets/console-CiuQ3qj0.css +0 -1
- data/public/masks-assets/assets/handshake-BYhhQ_X3.js +0 -2
- data/public/masks-assets/assets/handshake-BYhhQ_X3.js.map +0 -1
- data/public/masks-assets/assets/manage-Z3GmPDNQ.js +0 -560
- data/public/masks-assets/assets/manage-Z3GmPDNQ.js.map +0 -1
|
@@ -7,13 +7,13 @@ de:
|
|
|
7
7
|
access: "Zugriff"
|
|
8
8
|
endpoints: "Endpunkte"
|
|
9
9
|
usage: "Nutzung"
|
|
10
|
-
missing: "Es gibt
|
|
11
|
-
back: "
|
|
10
|
+
missing: "Es gibt keinen Client mit dieser ID."
|
|
11
|
+
back: "Clients"
|
|
12
12
|
name_ids:
|
|
13
13
|
persistent: "Eine dauerhafte Kennung"
|
|
14
14
|
email: "Ihre E-Mail-Adresse"
|
|
15
15
|
facts:
|
|
16
|
-
origin: "Wie
|
|
16
|
+
origin: "Wie er hierher kam"
|
|
17
17
|
self_registered: "selbst registriert"
|
|
18
18
|
approved: "genehmigt"
|
|
19
19
|
approved_by: "Genehmigt von"
|
|
@@ -21,8 +21,8 @@ de:
|
|
|
21
21
|
grants: "Grants"
|
|
22
22
|
response_types: "Response-Types"
|
|
23
23
|
subjects:
|
|
24
|
-
public: "Dieselbe Kennung, die
|
|
25
|
-
pairwise: "Eine Kennung, die nur
|
|
24
|
+
public: "Dieselbe Kennung, die jeder Client sieht (public)"
|
|
25
|
+
pairwise: "Eine Kennung, die nur er kennt (pairwise)"
|
|
26
26
|
grants:
|
|
27
27
|
refresh_token: "Hält Akteure angemeldet (Refresh-Tokens)"
|
|
28
28
|
device_code: "Meldet auf Geräten ohne Browser an (Device Code)"
|
|
@@ -51,41 +51,41 @@ de:
|
|
|
51
51
|
restored: "Wiederhergestellt."
|
|
52
52
|
archived: "Archiviert."
|
|
53
53
|
rotated: "Ein neues Secret wurde ausgestellt."
|
|
54
|
-
groups: "Wer sich anmelden darf, ist
|
|
55
|
-
unattended_on: "
|
|
56
|
-
unattended_off: "
|
|
57
|
-
subject: "Gespeichert. Alle haben bei
|
|
58
|
-
keys_signing: "
|
|
54
|
+
groups: "Wer sich anmelden darf, ist geändert."
|
|
55
|
+
unattended_on: "Er kann jetzt mit client_credentials ein eigenes Token anfordern."
|
|
56
|
+
unattended_off: "Er kann kein eigenes Token mehr anfordern."
|
|
57
|
+
subject: "Gespeichert. Alle haben bei diesem Client eine neue Kennung."
|
|
58
|
+
keys_signing: "Seine Schlüssel sind gespeichert, und er signiert seine Assertions jetzt selbst."
|
|
59
59
|
keys: "Schlüssel gespeichert."
|
|
60
60
|
declared: "Deklarierte Typen gespeichert."
|
|
61
61
|
attributes: "Attribute gespeichert."
|
|
62
|
-
attributes_default: "
|
|
63
|
-
signs_assertions: "
|
|
64
|
-
uses_secret: "
|
|
65
|
-
grants: "Grants
|
|
62
|
+
attributes_default: "Er erhält die üblichen Attribute."
|
|
63
|
+
signs_assertions: "Er signiert seine Assertions jetzt selbst. Sein Secret funktioniert nicht mehr."
|
|
64
|
+
uses_secret: "Er verwendet jetzt ein Secret. Rotieren Sie eines, um es ihm zu geben."
|
|
65
|
+
grants: "Grants geändert."
|
|
66
66
|
entity_id: "Entity-ID gespeichert."
|
|
67
67
|
certificate_saved: "Zertifikat gespeichert."
|
|
68
68
|
certificate_removed: "Zertifikat entfernt."
|
|
69
69
|
signed_refused: "Nicht signierte Anfragen werden abgelehnt."
|
|
70
70
|
signed_read: "Nicht signierte Anfragen werden gelesen."
|
|
71
|
-
idp_initiated_on: "Akteure können von masks aus bei
|
|
72
|
-
idp_initiated_off: "Die Anmeldung erfolgt nur, wenn
|
|
73
|
-
policy: "Richtlinie
|
|
71
|
+
idp_initiated_on: "Akteure können von masks aus bei ihm angemeldet werden, ohne dass er fragt."
|
|
72
|
+
idp_initiated_off: "Die Anmeldung erfolgt nur, wenn er fragt."
|
|
73
|
+
policy: "Richtlinie geändert."
|
|
74
74
|
par_on: "PAR erforderlich. Einfache /authorize-Links werden abgelehnt."
|
|
75
75
|
par_off: "PAR optional."
|
|
76
|
-
dpop_on: "
|
|
76
|
+
dpop_on: "Seine Access-Tokens sind an seinen Schlüssel gebunden. Ein Token ohne Nachweis wird abgelehnt."
|
|
77
77
|
dpop_off: "Bearer-Tokens."
|
|
78
|
-
consent_on: "Zustimmung erforderlich. Jeder Akteur genehmigt, was
|
|
79
|
-
consent_off: "Zustimmung übersprungen. Niemand wird gefragt, bevor
|
|
78
|
+
consent_on: "Zustimmung erforderlich. Jeder Akteur genehmigt, was dieser Client anfordert."
|
|
79
|
+
consent_off: "Zustimmung übersprungen. Niemand wird gefragt, bevor diesem Client Zugriff gewährt wird."
|
|
80
80
|
access_minutes: "Access-Tokens gelten %{minutes} Minuten."
|
|
81
81
|
access_default: "Access-Tokens gelten eine Stunde."
|
|
82
82
|
refresh_days: "Refresh-Tokens gelten ungenutzt %{days} Tage."
|
|
83
83
|
refresh_default: "Refresh-Tokens gelten ungenutzt 30 Tage."
|
|
84
|
-
consent_days: "Jede Zustimmung gilt %{days} Tage, dann wird
|
|
84
|
+
consent_days: "Jede Zustimmung gilt %{days} Tage, dann wird der Akteur erneut gefragt."
|
|
85
85
|
consent_default: "Die Zustimmung gilt bis zum Widerruf."
|
|
86
86
|
jar_on: "Signierte Anfragen erforderlich. Eine nicht signierte /authorize- oder Pushed-Anfrage wird abgelehnt."
|
|
87
87
|
jar_off: "Signierte Anfragen optional."
|
|
88
|
-
scopes: "Scopes
|
|
88
|
+
scopes: "Scopes geändert."
|
|
89
89
|
redirects: "Redirect-URIs gespeichert."
|
|
90
90
|
post_logout: "Post-Logout-URIs gespeichert."
|
|
91
91
|
resources: "Ressourcen gespeichert."
|
|
@@ -95,25 +95,25 @@ de:
|
|
|
95
95
|
declared: "Diese Deklarationen sind kein JSON."
|
|
96
96
|
attributes: "Schreiben Sie pro Zeile ein Attribut = Claim."
|
|
97
97
|
confirm:
|
|
98
|
-
subject: "Alle erhalten bei
|
|
99
|
-
restore: "
|
|
98
|
+
subject: "Alle erhalten bei diesem Client eine andere Kennung. Er erkennt niemanden wieder, den er bereits kennt. Ändern?"
|
|
99
|
+
restore: "Diesen Client wiederherstellen? Er kann sofort wieder Akteure anmelden."
|
|
100
100
|
rotate: "Ein neues Secret ausstellen? Das verwendete funktioniert sofort nicht mehr."
|
|
101
|
-
archive: "
|
|
102
|
-
archived_on: "Archiviert am %{day}.
|
|
101
|
+
archive: "Diesen Client archivieren? Damit kann sich dann niemand mehr anmelden."
|
|
102
|
+
archived_on: "Archiviert am %{day}. Er kann niemanden mehr anmelden."
|
|
103
103
|
restore: "Wiederherstellen"
|
|
104
104
|
secret_once: "Dieses Secret wird nur einmal angezeigt. Kopieren Sie es jetzt."
|
|
105
105
|
save: "Speichern"
|
|
106
106
|
registration:
|
|
107
107
|
title: "Registrierung"
|
|
108
108
|
name: "Name"
|
|
109
|
-
saml: "
|
|
110
|
-
public: "
|
|
109
|
+
saml: "Ein SAML-Client. Die Anmeldung erfolgt mit einer Assertion, nicht mit einem Token."
|
|
110
|
+
public: "Ein öffentlicher Client. Er authentifiziert sich mit nichts und weist sich mit PKCE aus."
|
|
111
111
|
authenticates: "Authentifiziert sich mit"
|
|
112
|
-
needs_keys: "Geben Sie
|
|
112
|
+
needs_keys: "Geben Sie ihm unter „Schlüssel“ Schlüssel, dann signiert er seine Assertions selbst."
|
|
113
113
|
knows_as: "Kennt Akteure als"
|
|
114
114
|
sector: "Sector-Identifier-URI"
|
|
115
|
-
sector_placeholder: "nötig, wenn
|
|
116
|
-
unattended: "Meldet sich als
|
|
115
|
+
sector_placeholder: "nötig, wenn seine Redirect-URIs mehrere Hosts umfassen"
|
|
116
|
+
unattended: "Meldet sich als er selbst an (client_credentials)"
|
|
117
117
|
rotate: "Secret rotieren"
|
|
118
118
|
archive: "Archivieren"
|
|
119
119
|
saml:
|
|
@@ -122,42 +122,42 @@ de:
|
|
|
122
122
|
metadata: "masks-Metadaten"
|
|
123
123
|
initiate: "Von masks aus starten"
|
|
124
124
|
names_by: "Benennt Akteure nach"
|
|
125
|
-
certificate: "
|
|
126
|
-
attributes: "Attribute, die
|
|
127
|
-
attributes_hint: "Leer gelassen, erhält
|
|
125
|
+
certificate: "Sein Signaturzertifikat"
|
|
126
|
+
attributes: "Attribute, die er erhält, ein Attribut = Claim pro Zeile"
|
|
127
|
+
attributes_hint: "Leer gelassen, erhält er die angezeigten. Eine E-Mail-Adresse wird erst nach der Bestätigung gesendet."
|
|
128
128
|
requests_signed: "Nicht signierte Anfragen ablehnen"
|
|
129
129
|
idp_initiated: "Akteure von masks aus starten lassen"
|
|
130
130
|
slo_url: "Single-Logout-URL"
|
|
131
|
-
slo_url_hint: "Wenn sich ein Akteur, der bei
|
|
131
|
+
slo_url_hint: "Wenn sich ein Akteur, der bei ihm angemeldet war, von masks abmeldet, sendet masks hierher eine signierte LogoutRequest. Die LogoutRequests des Clients werden ebenfalls hier beantwortet und müssen mit seinem Zertifikat signiert sein."
|
|
132
132
|
shown:
|
|
133
133
|
title: "Für Akteure sichtbar"
|
|
134
|
-
unapproved: "Niemand sieht
|
|
135
|
-
approved: "
|
|
134
|
+
unapproved: "Niemand sieht sein Logo, bis er genehmigt ist: Ein selbst registrierter Client könnte sonst jedes beliebige Logo verwenden."
|
|
135
|
+
approved: "Sein Logo und diese Links werden angezeigt, wenn Akteure gefragt werden, ob sie ihn zulassen."
|
|
136
136
|
sign_in:
|
|
137
137
|
title: "Anmeldung"
|
|
138
138
|
policy: "Richtlinie"
|
|
139
139
|
default: "Standard (%{name})"
|
|
140
140
|
built_in: "eingebaut"
|
|
141
141
|
archived: "%{name} ist archiviert, daher gilt stattdessen %{fallback}."
|
|
142
|
-
differs: "Wo
|
|
142
|
+
differs: "Wo er von %{name} abweicht"
|
|
143
143
|
same: "In jeder Hinsicht wie %{name}."
|
|
144
144
|
par: "Pushed Requests verlangen (PAR)"
|
|
145
|
-
dpop: "
|
|
145
|
+
dpop: "Seine Access-Tokens an einen Schlüssel binden (DPoP)"
|
|
146
146
|
consent: "Akteure um Zustimmung bitten"
|
|
147
147
|
access: "Access-Tokens gelten (Minuten, leer für eine Stunde)"
|
|
148
148
|
refresh: "Refresh-Tokens gelten ungenutzt (Tage, leer für 30)"
|
|
149
149
|
consent_lifetime: "Zustimmung gilt (Tage, leer bis zum Widerruf)"
|
|
150
150
|
logout: "Back-Channel-Logout-URI"
|
|
151
|
-
logout_session: "
|
|
151
|
+
logout_session: "Sein Logout-Token benennt die Sitzung (sid)"
|
|
152
152
|
keys:
|
|
153
153
|
title: "Schlüssel"
|
|
154
|
-
hint: "Wogegen masks
|
|
154
|
+
hint: "Wogegen masks seine signierten Assertions (private_key_jwt) und signierten Anfragen (JAR) prüft. Eine URL oder das Key-Set selbst, nicht beides."
|
|
155
155
|
jwks_uri: "Key-Set-URL (jwks_uri)"
|
|
156
156
|
jwks: "Oder das Key-Set (JWKS)"
|
|
157
157
|
jar: "Signierte Request-Objekte verlangen (JAR)"
|
|
158
158
|
groups:
|
|
159
159
|
title: "Wer sich anmelden darf"
|
|
160
|
-
lede: "Alle oder nur
|
|
160
|
+
lede: "Alle oder nur Akteure in den hier angehakten Gruppen. Eine Organisationsrolle in der Form key:role zählt als Gruppe."
|
|
161
161
|
none: "Noch keine Gruppen."
|
|
162
162
|
add: "Eine hinzufügen"
|
|
163
163
|
limit: "um einzuschränken, wer sich anmelden darf."
|
|
@@ -176,9 +176,9 @@ de:
|
|
|
176
176
|
resources: "Ressourcen"
|
|
177
177
|
details:
|
|
178
178
|
title: "Autorisierungsdetails"
|
|
179
|
-
hint: "Rich Authorization Requests (RFC 9396).
|
|
180
|
-
types: "Typen, die
|
|
181
|
-
accepts: "Typen, die
|
|
179
|
+
hint: "Rich Authorization Requests (RFC 9396). Ein Client fordert die hier aufgeführten Typen an, und ein genehmigter Client deklariert die Typen, die er als Ressource annimmt, jeweils mit einer bei der Zustimmung angezeigten Bezeichnung und einem Schema."
|
|
180
|
+
types: "Typen, die er anfordern darf"
|
|
181
|
+
accepts: "Typen, die er annimmt"
|
|
182
182
|
consents: "Zustimmungen"
|
|
183
183
|
tokens: "Tokens"
|
|
184
184
|
activity:
|
|
@@ -1,62 +1,58 @@
|
|
|
1
1
|
de:
|
|
2
2
|
manage:
|
|
3
3
|
clients:
|
|
4
|
-
|
|
4
|
+
marks:
|
|
5
|
+
archived: "Archiviert"
|
|
6
|
+
dynamic: "Selbst registriert, nicht freigegeben"
|
|
7
|
+
dynamic_approved: "Selbst registriert, dann freigegeben"
|
|
8
|
+
title: "Clients"
|
|
5
9
|
archived: "Archiviert"
|
|
6
|
-
search: "
|
|
10
|
+
search: "Clients durchsuchen"
|
|
7
11
|
search_placeholder: "Name oder client_id"
|
|
8
|
-
add: "
|
|
12
|
+
add: "Client hinzufügen"
|
|
9
13
|
name: "Name"
|
|
10
14
|
name_placeholder: "Nächtlicher Indexer"
|
|
11
|
-
kind: "Art
|
|
15
|
+
kind: "Art des Clients"
|
|
12
16
|
kinds:
|
|
13
|
-
service: "Meldet sich als
|
|
17
|
+
service: "Meldet sich als er selbst an"
|
|
14
18
|
app: "Meldet Akteure an"
|
|
15
|
-
saml: "SAML
|
|
16
|
-
preset: "
|
|
17
|
-
app: "
|
|
19
|
+
saml: "Meldet Akteure über SAML an"
|
|
20
|
+
preset: "Ein bekanntes Produkt"
|
|
21
|
+
app: "Produkt"
|
|
18
22
|
choose: "Eine auswählen"
|
|
19
|
-
address: "
|
|
20
|
-
slug: "Name, den
|
|
23
|
+
address: "Seine Adresse"
|
|
24
|
+
slug: "Name, den er für masks verwendet"
|
|
21
25
|
hints:
|
|
22
|
-
preset: "masks füllt
|
|
23
|
-
service: "
|
|
24
|
-
saml: "
|
|
25
|
-
app: "
|
|
26
|
-
metadata: "
|
|
26
|
+
preset: "masks füllt seine Redirect-URIs und Scopes aus und zeigt, was in seinen Einstellungen einzutragen ist. Der Name ist hier optional."
|
|
27
|
+
service: "Er fordert am Token-Endpunkt mit client_credentials sein eigenes Token an. Hinter ihm steht kein Akteur, daher erhält er nie openid, profile, email oder masks:manage."
|
|
28
|
+
saml: "Er schickt Akteure mit einem SAML-AuthnRequest hierher, und masks sendet eine signierte Assertion zurück. Fügen Sie seine Metadaten ein, um den Rest auszufüllen."
|
|
29
|
+
app: "Er schickt Akteure zur Anmeldung und erhält in deren Namen ein Token."
|
|
30
|
+
metadata: "Seine Metadaten"
|
|
27
31
|
read: "Einlesen"
|
|
28
32
|
entity_id: "Entity-ID"
|
|
29
33
|
acs: "Assertion Consumer Services"
|
|
30
|
-
certificate: "Signaturzertifikat, falls
|
|
34
|
+
certificate: "Signaturzertifikat, falls er seine Anfragen signiert"
|
|
31
35
|
requests_signed: "Nicht signierte Anfragen ablehnen"
|
|
32
|
-
slo_url: "Single-Logout-URL, falls
|
|
36
|
+
slo_url: "Single-Logout-URL, falls er eine hat"
|
|
33
37
|
redirect_uris: "Redirect-URIs"
|
|
34
38
|
resources: "Ressourcen"
|
|
35
39
|
scopes: "Scopes"
|
|
36
40
|
adding: "Wird hinzugefügt..."
|
|
37
|
-
submit: "
|
|
41
|
+
submit: "Client hinzufügen"
|
|
38
42
|
cancel: "Abbrechen"
|
|
39
43
|
created:
|
|
40
44
|
title: "%{name} ist bereit"
|
|
41
|
-
client_id: "
|
|
42
|
-
client_id_and_secret: "
|
|
45
|
+
client_id: "Seine client_id steht unten."
|
|
46
|
+
client_id_and_secret: "Seine client_id steht unten, zusammen mit einem Geheimnis, das nur dieses eine Mal angezeigt wird. Kopieren Sie es jetzt."
|
|
43
47
|
settings: "Tragen Sie dies in %{name} ein. Das Geheimnis steht ebenfalls darin und wird nicht erneut angezeigt."
|
|
44
|
-
guide: "
|
|
48
|
+
guide: "Seine Anleitung"
|
|
45
49
|
open: "Öffnen"
|
|
46
50
|
columns:
|
|
47
51
|
name: "Name"
|
|
48
52
|
resources: "Ressourcen"
|
|
49
|
-
source: "Herkunft"
|
|
50
|
-
namespaces: "Namespaces"
|
|
51
|
-
scopes: "Scopes"
|
|
52
|
-
approved_by: "Genehmigt von"
|
|
53
53
|
registered: "Registriert"
|
|
54
|
-
self_registered: "selbst registriert"
|
|
55
|
-
approved: "genehmigt"
|
|
56
|
-
always: "immer"
|
|
57
|
-
on_request: "auf Anfrage"
|
|
58
54
|
empty:
|
|
59
|
-
matches: "
|
|
60
|
-
archived_matches: "
|
|
55
|
+
matches: "Kein Client passt zu „%{query}“."
|
|
56
|
+
archived_matches: "Kein archivierter Client passt zu „%{query}“."
|
|
61
57
|
archived: "Nichts wurde archiviert."
|
|
62
|
-
none: "Noch keine
|
|
58
|
+
none: "Noch keine Clients registriert."
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
de:
|
|
2
2
|
manage:
|
|
3
3
|
connections:
|
|
4
|
-
stop_confirm: "Soll %{client} dieses %{provider}-Konto nicht mehr nutzen?
|
|
4
|
+
stop_confirm: "Soll %{client} dieses %{provider}-Konto nicht mehr nutzen? Der Client muss erneut fragen."
|
|
5
5
|
stopped: "%{client} kann es nicht mehr nutzen."
|
|
6
|
-
disconnect_confirm: "%{held} trennen? Darüber meldet sich niemand mehr an, bis es wieder
|
|
6
|
+
disconnect_confirm: "%{held} trennen? Darüber meldet sich niemand mehr an, bis es wieder verbunden ist, und jeder Client, der es nutzt, hört auf."
|
|
7
7
|
disconnected: "Getrennt."
|
|
8
8
|
empty: "Nichts verbunden."
|
|
9
9
|
badges:
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
de:
|
|
2
2
|
manage:
|
|
3
3
|
consents:
|
|
4
|
-
revoke_confirm: "%{held} den Zugriff entziehen? Alle Refresh-Tokens
|
|
5
|
-
revoked: "Zugriff widerrufen.
|
|
4
|
+
revoke_confirm: "%{held} den Zugriff entziehen? Alle Refresh-Tokens werden widerrufen, und bei der nächsten Anmeldung wird erneut gefragt."
|
|
5
|
+
revoked: "Zugriff widerrufen. Es wird erneut gefragt."
|
|
6
6
|
empty: "Keine."
|
|
7
7
|
revoke: "Zugriff widerrufen"
|
|
8
8
|
last_asked: "Zuletzt gefragt %{when}"
|
|
@@ -3,13 +3,13 @@ de:
|
|
|
3
3
|
device:
|
|
4
4
|
missing: "Es gibt kein Gerät mit dieser ID."
|
|
5
5
|
back: "Geräte"
|
|
6
|
-
blocked_lede: "
|
|
6
|
+
blocked_lede: "Blockiert am %{day}. Niemand kann sich darauf anmelden."
|
|
7
7
|
seen_lede: "Zuletzt gesehen %{when}."
|
|
8
|
-
blocked: "%{label} ist
|
|
9
|
-
block_question: "%{label}
|
|
10
|
-
unblocked: "%{label} ist
|
|
8
|
+
blocked: "%{label} ist blockiert."
|
|
9
|
+
block_question: "%{label} blockieren? Es wird abgelehnt, bevor ein Passwort geprüft wird."
|
|
10
|
+
unblocked: "%{label} ist freigegeben."
|
|
11
11
|
signed_out: "%{label} überall abgemeldet."
|
|
12
|
-
sign_out_question: "Alle
|
|
12
|
+
sign_out_question: "Alle Akteure von %{label} abmelden?"
|
|
13
13
|
facts:
|
|
14
14
|
kind: "Art"
|
|
15
15
|
ip_address: "IP-Adresse"
|
|
@@ -18,8 +18,8 @@ de:
|
|
|
18
18
|
last_seen: "Zuletzt gesehen"
|
|
19
19
|
what: "Was es ist"
|
|
20
20
|
sign_out_everywhere: "Überall abmelden"
|
|
21
|
-
unblock: "
|
|
22
|
-
block: "
|
|
21
|
+
unblock: "Freigeben"
|
|
22
|
+
block: "Blockieren"
|
|
23
23
|
who: "Wer sich darauf anmeldet"
|
|
24
24
|
nobody: "Niemand hat sich darauf angemeldet."
|
|
25
25
|
live_sessions: "Aktive Sitzungen"
|
|
@@ -4,7 +4,7 @@ de:
|
|
|
4
4
|
title: "Geräte"
|
|
5
5
|
lenses:
|
|
6
6
|
allowed: "Erlaubt"
|
|
7
|
-
blocked: "
|
|
7
|
+
blocked: "Blockiert"
|
|
8
8
|
unattached: "Nie angemeldet"
|
|
9
9
|
columns:
|
|
10
10
|
device: "Gerät"
|
|
@@ -15,45 +15,45 @@ de:
|
|
|
15
15
|
one: "%{count} Gerät"
|
|
16
16
|
other: "%{count} Geräte"
|
|
17
17
|
blocked_count:
|
|
18
|
-
one: "%{count} Gerät
|
|
19
|
-
other: "%{count} Geräte
|
|
18
|
+
one: "%{count} Gerät blockiert."
|
|
19
|
+
other: "%{count} Geräte blockiert."
|
|
20
20
|
unblocked_count:
|
|
21
|
-
one: "%{count} Gerät
|
|
22
|
-
other: "%{count} Geräte
|
|
21
|
+
one: "%{count} Gerät freigegeben."
|
|
22
|
+
other: "%{count} Geräte freigegeben."
|
|
23
23
|
spared: "%{done} Das Gerät, das Sie gerade verwenden, wurde nicht angetastet."
|
|
24
24
|
refused: "%{done} \"%{agent}\" wird ab jetzt abgelehnt."
|
|
25
25
|
block_chosen_question:
|
|
26
|
-
one: "%{count} Gerät
|
|
27
|
-
other: "%{count} Geräte
|
|
26
|
+
one: "%{count} Gerät blockieren? Es wird abgemeldet und abgelehnt, bevor ein Passwort geprüft wird."
|
|
27
|
+
other: "%{count} Geräte blockieren? Jedes wird abgemeldet und abgelehnt, bevor ein Passwort geprüft wird."
|
|
28
28
|
unblock_chosen_question:
|
|
29
|
-
one: "%{count} Gerät
|
|
30
|
-
other: "%{count} Geräte
|
|
31
|
-
block_matching_question: "Jedes Gerät
|
|
29
|
+
one: "%{count} Gerät freigeben?"
|
|
30
|
+
other: "%{count} Geräte freigeben?"
|
|
31
|
+
block_matching_question: "Jedes Gerät blockieren, dessen User-Agent \"%{agent}\" enthält, auch solche, die hier nicht aufgeführt sind?"
|
|
32
32
|
block_matching_refuse: "%{question} Neue Geräte, die ihn senden, werden ebenfalls abgelehnt."
|
|
33
33
|
empty:
|
|
34
|
-
blocked: "Nichts ist
|
|
34
|
+
blocked: "Nichts ist blockiert."
|
|
35
35
|
unattached: "Auf jedem Gerät hier hat sich schon jemand angemeldet."
|
|
36
36
|
allowed: "Noch kein Gerät hat diesen Server erreicht."
|
|
37
37
|
filter_label: "Nach User-Agent filtern"
|
|
38
38
|
which: "Welche Geräte"
|
|
39
39
|
showing: "Angezeigt werden Geräte, deren User-Agent Folgendes enthält:"
|
|
40
|
-
showing_blocked: "Angezeigt werden
|
|
40
|
+
showing_blocked: "Angezeigt werden blockierte Geräte, deren User-Agent Folgendes enthält:"
|
|
41
41
|
clear: "Zurücksetzen"
|
|
42
42
|
refuse_agent: "Diesen User-Agent ab jetzt ebenfalls ablehnen"
|
|
43
|
-
block_matching: "Jedes passende Gerät
|
|
43
|
+
block_matching: "Jedes passende Gerät blockieren"
|
|
44
44
|
chosen: "%{count} ausgewählt"
|
|
45
45
|
choose_all:
|
|
46
46
|
one: "Das angezeigte Gerät auswählen (%{count})"
|
|
47
47
|
other: "Alle %{count} angezeigten Geräte auswählen"
|
|
48
48
|
block_count:
|
|
49
|
-
one: "%{count} Gerät
|
|
50
|
-
other: "%{count} Geräte
|
|
49
|
+
one: "%{count} Gerät blockieren"
|
|
50
|
+
other: "%{count} Geräte blockieren"
|
|
51
51
|
unblock_count:
|
|
52
|
-
one: "%{count} Gerät
|
|
53
|
-
other: "%{count} Geräte
|
|
52
|
+
one: "%{count} Gerät freigeben"
|
|
53
|
+
other: "%{count} Geräte freigeben"
|
|
54
54
|
newest: "Nur die neuesten %{count} werden angezeigt."
|
|
55
55
|
choose: "%{label} auswählen"
|
|
56
|
-
blocked: "
|
|
56
|
+
blocked: "blockiert"
|
|
57
57
|
unrecognised: "unbekannt"
|
|
58
58
|
signed_in: "angemeldet"
|
|
59
59
|
nobody_yet: "noch niemand"
|
|
@@ -2,4 +2,4 @@ de:
|
|
|
2
2
|
manage:
|
|
3
3
|
directory:
|
|
4
4
|
title: "Verzeichnis"
|
|
5
|
-
lede: "Andere Systeme, die die
|
|
5
|
+
lede: "Andere Systeme, die die Akteure dieses Mandanten führen: ein Verzeichnis, das sie über SCIM bereitstellt, und ältere Dienste, die sie über LDAP lesen."
|
|
@@ -2,22 +2,22 @@ de:
|
|
|
2
2
|
manage:
|
|
3
3
|
domains:
|
|
4
4
|
title: "Domains"
|
|
5
|
-
help: "Beanspruchen Sie eine Domain, indem Sie einen TXT-Eintrag veröffentlichen. masks prüft ihn stündlich. Sobald sie nachgewiesen ist, können
|
|
5
|
+
help: "Beanspruchen Sie eine Domain, indem Sie einen TXT-Eintrag veröffentlichen. masks prüft ihn stündlich. Sobald sie nachgewiesen ist, können Akteure, die dort eine Adresse eingeben, ohne Passwort direkt zu einem Anbieter gehen, und die Anmeldung kann unter einem Host darin angeboten werden, etwa login.example.com, sobald dessen DNS hierher zeigt und er ein Zertifikat hat. Jede Adresse ist ein eigener Issuer, und ein Passkey funktioniert nur unter der Adresse, unter der er erstellt wurde."
|
|
6
6
|
claimed: "Veröffentlichen Sie den TXT-Eintrag unten und prüfen Sie dann %{domain}."
|
|
7
7
|
proven: "%{domain} ist nachgewiesen."
|
|
8
8
|
unanswered: "Bei %{name} gibt es noch keinen passenden TXT-Eintrag. Es kann eine Weile dauern, bis sich DNS-Änderungen verbreiten."
|
|
9
|
-
routed_away: "
|
|
10
|
-
routed_here: "
|
|
9
|
+
routed_away: "Akteure bei %{domain} werden jetzt zu ihrem Anbieter geleitet."
|
|
10
|
+
routed_here: "Akteure bei %{domain} melden sich jetzt hier an."
|
|
11
11
|
served: "Die Anmeldung wird jetzt auch unter %{host} angeboten."
|
|
12
12
|
unserved: "Die Anmeldung wird nicht mehr unter einer eigenen Domain angeboten."
|
|
13
|
-
stop_confirm: "%{host} nicht mehr anbieten?
|
|
14
|
-
release_confirm: "%{domain} freigeben?
|
|
13
|
+
stop_confirm: "%{host} nicht mehr anbieten? Clients, die ihn als Issuer verwenden, funktionieren nicht mehr."
|
|
14
|
+
release_confirm: "%{domain} freigeben? Akteure mit einer Adresse dort melden sich wieder auf dem üblichen Weg an."
|
|
15
15
|
released: "%{domain} ist freigegeben."
|
|
16
16
|
here: "Hier anmelden"
|
|
17
17
|
to: "An %{name} senden"
|
|
18
18
|
missing: "Antwortet seit %{since} nicht mehr"
|
|
19
19
|
unproven: "Nicht nachgewiesen"
|
|
20
|
-
send: "Wo sich
|
|
20
|
+
send: "Wo sich Akteure bei %{domain} anmelden"
|
|
21
21
|
check: "Prüfen"
|
|
22
22
|
release: "%{domain} freigeben"
|
|
23
23
|
record: "Veröffentlichen Sie diesen TXT-Eintrag:"
|
|
@@ -2,8 +2,8 @@ de:
|
|
|
2
2
|
manage:
|
|
3
3
|
emails:
|
|
4
4
|
list: "E-Mails"
|
|
5
|
-
app: "
|
|
6
|
-
no_app: "
|
|
5
|
+
app: "Der Client, bei dem die Anmeldung erfolgt"
|
|
6
|
+
no_app: "Kein Client"
|
|
7
7
|
not_approved: "%{name} (nicht genehmigt)"
|
|
8
8
|
headed: "Kopfzeile von %{heading}, von %{from} an %{to}"
|
|
9
9
|
no_sender: "kein Absender konfiguriert"
|
|
@@ -14,7 +14,7 @@ de:
|
|
|
14
14
|
groups:
|
|
15
15
|
sign_in:
|
|
16
16
|
title: "Während der Anmeldung"
|
|
17
|
-
help: "Wird während einer Anmeldung gesendet. Hat
|
|
17
|
+
help: "Wird während einer Anmeldung gesendet. Hat ein Client den Akteur dorthin geschickt, steht ein genehmigter Client mit Logo und Namen im Kopf der E-Mail. Eine Anmeldung direkt zur Kontoseite hat keinen Client, und der Mandant steht im Kopf."
|
|
18
18
|
about: "Über E-Mails, die während der Anmeldung gesendet werden"
|
|
19
19
|
manage:
|
|
20
20
|
title: "Von einem Verwalter"
|
|
@@ -22,7 +22,7 @@ de:
|
|
|
22
22
|
about: "Über E-Mails, die von einem Verwalter ausgelöst werden"
|
|
23
23
|
account:
|
|
24
24
|
title: "Von der Kontoseite"
|
|
25
|
-
help: "Wird gesendet, wenn
|
|
25
|
+
help: "Wird gesendet, wenn ein Akteur auf seiner Kontoseite etwas ändert. Der Mandant steht im Kopf."
|
|
26
26
|
about: "Über E-Mails, die von der Kontoseite ausgelöst werden"
|
|
27
27
|
system:
|
|
28
28
|
title: "Von selbst"
|
|
@@ -2,14 +2,14 @@ de:
|
|
|
2
2
|
manage:
|
|
3
3
|
groups:
|
|
4
4
|
title: "Gruppen"
|
|
5
|
-
lede: "Benannte Gruppen von
|
|
6
|
-
added: "%{name} ist bereit. Fügen Sie
|
|
7
|
-
delete_confirm: "%{name} löschen?
|
|
5
|
+
lede: "Benannte Gruppen von Akteuren, etwa Admins oder Familie. Clients, die den Scope groups anfordern, sehen jede Gruppe, in der ein Akteur ist, und ein Client kann auf bestimmte Gruppen beschränkt werden. Den Schlüssel einer Gruppe sehen Clients, und er lässt sich später nicht ändern. Akteure treten einer Gruppe auf ihrer eigenen Seite bei."
|
|
6
|
+
added: "%{name} ist bereit. Fügen Sie Akteure auf deren eigenen Seiten hinzu."
|
|
7
|
+
delete_confirm: "%{name} löschen? Clients, die darauf beschränkt sind, lehnen ihre Akteure ab."
|
|
8
8
|
deleted: "%{name} ist gelöscht."
|
|
9
9
|
people:
|
|
10
|
-
one: "%{count}
|
|
11
|
-
other: "%{count}
|
|
10
|
+
one: "%{count} Akteur"
|
|
11
|
+
other: "%{count} Akteure"
|
|
12
12
|
delete: "%{name} löschen"
|
|
13
13
|
new: "Name der neuen Gruppe"
|
|
14
14
|
add: "Hinzufügen"
|
|
15
|
-
key: "
|
|
15
|
+
key: "Clients sehen sie als %{key}."
|
|
@@ -2,17 +2,17 @@ de:
|
|
|
2
2
|
manage:
|
|
3
3
|
ldap:
|
|
4
4
|
title: "LDAP"
|
|
5
|
-
lede: "Ältere
|
|
6
|
-
revoke_confirm: "%{label} widerrufen?
|
|
5
|
+
lede: "Ältere Dienste wie NAS-Geräte, Medienserver und Hypervisoren prüfen Passwörter und lesen Gruppen über LDAP. masks stellt ihnen die Akteure und Gruppen dieses Mandanten schreibgeschützt bereit."
|
|
6
|
+
revoke_confirm: "%{label} widerrufen? Alles, was sich damit bindet, wird ab sofort abgelehnt."
|
|
7
7
|
revoked: "%{label} ist widerrufen."
|
|
8
8
|
serve:
|
|
9
9
|
title: "Verzeichnis"
|
|
10
|
-
help: "Solange dies aus ist, kann
|
|
10
|
+
help: "Solange dies aus ist, kann sich nichts an das Verzeichnis dieses Mandanten binden oder darin suchen."
|
|
11
11
|
"on": "Diesen Mandanten über LDAP anbieten"
|
|
12
|
-
updated: "
|
|
12
|
+
updated: "Verzeichnis geändert."
|
|
13
13
|
connect:
|
|
14
|
-
title: "
|
|
15
|
-
help: "Geben Sie
|
|
14
|
+
title: "Einen Dienst verbinden"
|
|
15
|
+
help: "Geben Sie dem Dienst diesen Basis-DN, einen Bind-DN und sein Geheimnis. Der Dienst sucht in ou=people und ou=groups und bindet sich dann als Akteur, um dessen Passwort zu prüfen."
|
|
16
16
|
base_dn: "Basis-DN"
|
|
17
17
|
address: "Adresse"
|
|
18
18
|
port: "Port %{port}"
|
|
@@ -30,6 +30,6 @@ de:
|
|
|
30
30
|
revoke: "Widerrufen"
|
|
31
31
|
binds:
|
|
32
32
|
title: "Bindungen mit Passwort"
|
|
33
|
-
help: "LDAP kann keinen zweiten Faktor abfragen. Ein
|
|
33
|
+
help: "LDAP kann keinen zweiten Faktor abfragen. Ein Akteur, der einen hat oder dessen Anmelderichtlinie einen verlangt, wird abgelehnt, außer hier ist ein Passwort allein erlaubt."
|
|
34
34
|
password_only: "Ein Passwort allein über LDAP erlauben"
|
|
35
|
-
updated: "Bindungen mit Passwort
|
|
35
|
+
updated: "Bindungen mit Passwort geändert."
|
|
@@ -2,7 +2,7 @@ de:
|
|
|
2
2
|
manage:
|
|
3
3
|
namespaces:
|
|
4
4
|
title: "Namespaces"
|
|
5
|
-
release_confirm: "%{name} freigeben?
|
|
5
|
+
release_confirm: "%{name} freigeben? Der nächste Client, der ihn anfordert, erhält ihn, und die Scopes darunter bedeuten nicht mehr, was sie jetzt bedeuten."
|
|
6
6
|
released: "%{name} kann wieder beansprucht werden."
|
|
7
7
|
columns:
|
|
8
8
|
name: "Name"
|