Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 13 additions & 5 deletions de/15.8/config/sso-entraid.rst
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,10 @@ Die folgenden Einstellungen können bei Bedarf hinzugefügt werden.
- Standardrollen (kommagetrennt). Werden auf jeden Entra ID-Benutzer angewendet.
- (Keine)
* - ``entraid.permission.fields``
- Gruppen-/Rollenfelder (kommagetrennt), die zusätzlich als Berechtigungswerte verwendet werden. Die Gruppen-/Rollen-ID (GUID) wird stets als Berechtigung verwendet; die hier angegebenen Felder (z.B. ``mail``) werden zusätzlich hinzugefügt.
- Gruppen-/Rollenfelder (kommagetrennt), die zusätzlich als Berechtigungswerte verwendet werden. Die Gruppen-/Rollen-ID (GUID) wird stets als Berechtigung verwendet; die hier angegebenen Felder (z.B. ``mail``) werden zusätzlich hinzugefügt. Verwendbar sind nur Felder, deren Wert eine Zeichenkette ist. Microsoft Graph liefert ein Feld wie ``securityEnabled`` als booleschen Wert und ``groupTypes`` als Liste; keines von beiden kann ein Berechtigungswert werden, ein solches Feld wird daher ignoriert und eine Warnung mit seinem Namen ins Protokoll geschrieben.
- ``mail``
* - ``entraid.use.ds``
- Domänendienst-Integration. Bei ``true`` wird für Berechtigungswerte im Format ``name@domain`` auch der lokale Teil (``name``) ohne den Domänenanteil als Berechtigung hinzugefügt.
- Domänendienst-Integration. Bei ``true`` wird für Berechtigungswerte im Format ``name@domain`` auch der lokale Teil (``name``) ohne den Domänenanteil als Berechtigung hinzugefügt. Das gilt nicht nur für Gruppen und Rollen, sondern auch für den angemeldeten Benutzer selbst: Der lokale Teil seines Benutzerprinzipalnamens (UPN) wird als benutzerbezogene Berechtigung hinzugefügt. Mit ``false`` entfällt daher auch diese benutzerbezogene Berechtigung, nicht nur die der Gruppen.
- ``true``

.. note::
Expand Down Expand Up @@ -258,9 +258,9 @@ Die abgerufenen Gruppen-IDs und Gruppennamen können für die rollenbasierte Suc
Verschachtelte Gruppen
----------------------

|Fess| ruft nicht nur Gruppen ab, zu denen Benutzer direkt gehören, sondern auch übergeordnete Gruppen (verschachtelte Gruppen) rekursiv.
|Fess| ruft nicht nur Gruppen ab, zu denen Benutzer direkt gehören, sondern auch die übergeordneten Gruppen, zu denen diese wiederum gehören (verschachtelte Gruppen).
Sowohl die direkte Mitgliedschaftsabfrage als auch die Suche nach übergeordneten Gruppen laufen nach der Anmeldung in derselben Hintergrundaufgabe, sodass die Anmeldung selbst nie durch Microsoft Graph verzögert wird.
Die übergeordneten Gruppen werden bis zu einer bestimmten Hierarchietiefe ermittelt, und die abgerufenen Ergebnisse werden für einen bestimmten Zeitraum zwischengespeichert.
Die Suche nach übergeordneten Gruppen verwendet den Microsoft Graph-Vorgang ``getMemberGroups``, der transitiv auflöst: Ein Aufruf je direkt zugewiesener Gruppe liefert alle darüberliegenden Gruppen, unabhängig davon, wie tief die Verschachtelung reicht. Die abgerufenen Ergebnisse werden für einen bestimmten Zeitraum zwischengespeichert.
Sobald diese Hintergrundaufgabe abgeschlossen ist, werden die Berechtigungen des Benutzers neu berechnet.

Standardgruppeneinstellungen
Expand Down Expand Up @@ -388,7 +388,15 @@ Gruppeninformationen können nicht abgerufen werden
„Nicht vollständig“ ist bewusst gewählt: Die Auflösung gilt nur dann als erfolgreich, wenn sowohl
die Abfrage der direkten Mitgliedschaften als auch der Durchlauf der verschachtelten Gruppen
gelungen ist — ein Benutzer, der seine direkten Gruppen, aber nicht seine übergeordneten Gruppen
besitzt, erhält diesen Hinweis also ebenfalls. Häufigste Ursache des Teilfalls ist Drosselung:
besitzt, erhält diesen Hinweis also ebenfalls. Ein Fall ist davon ausgenommen, und zwar genau
der aus dem vorherigen Punkt: Verweigert Microsoft Graph die Abfrage der verschachtelten Gruppen
mit ``Authorization_RequestDenied``, weil ``GroupMember.Read.All`` nie erteilt wurde, wertet
|Fess| das nicht als Fehlschlag, sondern als Antwort, die besagt, dass die Gruppe keine
übergeordneten Gruppen hat. Die Auflösung gilt dann als erfolgreich und **es wird kein Hinweis
angezeigt**, obwohl die Berechtigungen der übergeordneten Gruppen fehlen. Das einzige Anzeichen
ist die Warnung ``Not allowed to read the parent groups of ...`` im Protokoll; prüfen Sie das
Protokoll deshalb darauf, wann immer verschachtelte Gruppen im Einsatz sind. Häufigste Ursache des
Teilfalls ist Drosselung:
Ein einziges HTTP 429 oder 503 von Microsoft Graph lässt |Fess| so lange pausieren, wie es der
Header ``Retry-After`` verlangt (60 Sekunden, wenn er nichts Verwertbares nennt, höchstens 60
Minuten), und in dieser Zeit wird in der gesamten |Fess|-Instanz jede Abfrage verschachtelter
Expand Down
19 changes: 13 additions & 6 deletions en/15.8/config/sso-entraid.rst
Original file line number Diff line number Diff line change
Expand Up @@ -108,10 +108,10 @@ The following settings can be added as needed.
- Default roles (comma-separated). Applied to every Entra ID user.
- (None)
* - ``entraid.permission.fields``
- Group/role fields (comma-separated) to additionally use as permission values. The group/role ID (GUID) is always used as a permission, and the values of the fields specified here (e.g., ``mail``) are added.
- Group/role fields (comma-separated) to additionally use as permission values. The group/role ID (GUID) is always used as a permission, and the values of the fields specified here (e.g., ``mail``) are added. Only a field whose value is a string can be used. Microsoft Graph answers a field such as ``securityEnabled`` with a boolean and ``groupTypes`` with a list, and neither can become a permission value, so such a field is ignored and a warning naming it is written to the log.
- ``mail``
* - ``entraid.use.ds``
- Domain service integration. When ``true``, for permission values in the ``name@domain`` format, the local part (``name``) with the domain part removed is also added as a permission.
- Domain service integration. When ``true``, for permission values in the ``name@domain`` format, the local part (``name``) with the domain part removed is also added as a permission. This applies to the signed-in user as well as to groups and roles: the local part of the user principal name is added as a user-level permission. Setting it to ``false`` therefore removes that user-level permission too, not only the group ones.
- ``true``

.. note::
Expand Down Expand Up @@ -249,9 +249,9 @@ The retrieved group IDs and group names can be used for |Fess| role-based search
Nested Groups
-------------

|Fess| retrieves not only groups that users directly belong to, but also parent groups (nested groups) recursively.
|Fess| retrieves not only groups that users directly belong to, but also the parent groups those belong to (nested groups).
Both the direct membership lookup and the parent group lookup run in the same background task after login, so login itself is never slowed down by Microsoft Graph.
The parent group lookup targets up to a certain number of levels, and the retrieved results are cached for a certain period.
The parent group lookup uses the Microsoft Graph ``getMemberGroups`` operation, which resolves transitively: one call per directly assigned group returns every group above it, however deep the nesting goes. The retrieved results are cached for a certain period.
When that background task completes, the user's permissions are recalculated.

Default Group Settings
Expand Down Expand Up @@ -373,8 +373,15 @@ Cannot Retrieve Group Information
permissions could not be fully loaded, asks them to log out and log in again, and to contact an
administrator if it keeps happening. "Not fully" is deliberate: the resolution counts as failed
unless both the direct membership lookup and the nested group walk succeeded, so a user who
holds their direct groups but not their parent groups gets that message too. Throttling is the
usual cause of the partial case — a single HTTP 429 or 503 from Microsoft Graph makes |Fess| back
holds their direct groups but not their parent groups gets that message too. One case is
exempt, and it is the one the previous item describes: when Microsoft Graph refuses the nested
group lookup with ``Authorization_RequestDenied`` because ``GroupMember.Read.All`` was never
granted, |Fess| takes that as an answer meaning the group has no parents rather than as a
failure. Resolution then counts as successful and **no message is shown**, even though the
parent group permissions are missing. The only sign is the
``Not allowed to read the parent groups of ...`` warning in the log, so check for it whenever
nested groups are in use. Throttling is the usual cause of the partial case — a single HTTP 429
or 503 from Microsoft Graph makes |Fess| back
off for as long as the ``Retry-After`` header asks (60 seconds when it says nothing usable, 60
minutes at most), and every nested group lookup in the whole |Fess| instance is skipped for that
time while the direct lookups keep answering. The
Expand Down
17 changes: 12 additions & 5 deletions es/15.8/config/sso-entraid.rst
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,10 @@ Las siguientes configuraciones pueden agregarse según sea necesario.
- Roles por defecto (separados por comas). Se aplican a todos los usuarios de Entra ID.
- (Ninguno)
* - ``entraid.permission.fields``
- Campos de grupo/rol (separados por comas) que se utilizan adicionalmente como valores de permiso. El ID de grupo/rol (GUID) siempre se usa como permiso, y los valores de los campos especificados aquí (ej: ``mail``) se agregan.
- Campos de grupo/rol (separados por comas) que se utilizan adicionalmente como valores de permiso. El ID de grupo/rol (GUID) siempre se usa como permiso, y los valores de los campos especificados aquí (ej: ``mail``) se agregan. Solo pueden utilizarse campos cuyo valor sea una cadena de texto. Microsoft Graph devuelve un campo como ``securityEnabled`` en forma de booleano y ``groupTypes`` en forma de lista, y ninguno de los dos puede convertirse en un valor de permiso, por lo que un campo así se ignora y se escribe en el registro una advertencia que indica su nombre.
- ``mail``
* - ``entraid.use.ds``
- Integración con el servicio de dominio. Cuando es ``true``, para los valores de permiso en formato ``name@domain``, la parte local (``name``) con la parte del dominio eliminada también se agrega como permiso.
- Integración con el servicio de dominio. Cuando es ``true``, para los valores de permiso en formato ``name@domain``, la parte local (``name``) con la parte del dominio eliminada también se agrega como permiso. Esto se aplica no solo a los grupos y roles, sino también al propio usuario que ha iniciado sesión: la parte local de su nombre principal de usuario (UPN) se agrega como permiso a nivel de usuario. Por lo tanto, establecerlo en ``false`` elimina también ese permiso a nivel de usuario, no solo los de los grupos.
- ``true``

.. note::
Expand Down Expand Up @@ -256,9 +256,9 @@ Los IDs de grupo y nombres de grupo recuperados pueden usarse para la búsqueda
Grupos anidados
---------------

|Fess| recupera no solo los grupos a los que los usuarios pertenecen directamente, sino también los grupos padre (grupos anidados) de forma recursiva.
|Fess| recupera no solo los grupos a los que los usuarios pertenecen directamente, sino también los grupos padre a los que estos pertenecen (grupos anidados).
Tanto la búsqueda de la pertenencia directa como la búsqueda de grupos padre se ejecutan en la misma tarea en segundo plano después del inicio de sesión, de modo que el inicio de sesión nunca se ve retrasado por Microsoft Graph.
La búsqueda de grupos padre abarca hasta un número determinado de niveles, y los resultados obtenidos se almacenan en caché durante un período determinado.
La búsqueda de grupos padre utiliza la operación ``getMemberGroups`` de Microsoft Graph, que resuelve de forma transitiva: una sola llamada por cada grupo asignado directamente devuelve todos los grupos que están por encima de él, sea cual sea la profundidad del anidamiento. Los resultados obtenidos se almacenan en caché durante un período determinado.
Cuando esa tarea en segundo plano finaliza, los permisos del usuario se recalculan.

Configuración de grupos por defecto
Expand Down Expand Up @@ -384,7 +384,14 @@ No se puede recuperar la información de grupo
vuelva a iniciarla, y que contacte con el administrador si el problema persiste. Lo de «por
completo» es deliberado: la resolución solo se considera correcta si han tenido éxito tanto la
consulta de pertenencias directas como el recorrido de los grupos anidados, así que un usuario
que tiene sus grupos directos pero no sus grupos padre también recibe ese mensaje. La causa
que tiene sus grupos directos pero no sus grupos padre también recibe ese mensaje. Hay un caso
exento, y es precisamente el que describe el punto anterior: cuando Microsoft Graph rechaza la
consulta de grupos anidados con ``Authorization_RequestDenied`` porque nunca se otorgó
``GroupMember.Read.All``, |Fess| lo interpreta como una respuesta que significa que el grupo no
tiene grupos padre, y no como un fallo. La resolución se considera entonces correcta y **no se
muestra ningún mensaje**, aunque falten los permisos de los grupos padre. La única señal es la
advertencia ``Not allowed to read the parent groups of ...`` en el registro, así que conviene
buscarla siempre que se utilicen grupos anidados. La causa
habitual del caso parcial es la limitación de peticiones: un solo HTTP 429 o 503 de Microsoft
Graph hace que |Fess| espere el tiempo que pida la cabecera ``Retry-After`` (60 segundos si no
indica nada utilizable, 60 minutos como máximo), y durante ese tiempo se omite toda consulta de
Expand Down
18 changes: 13 additions & 5 deletions fr/15.8/config/sso-entraid.rst
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,10 @@ Les paramètres suivants peuvent être ajoutés si nécessaire.
- Rôles par défaut (séparés par des virgules). Appliqués à tous les utilisateurs Entra ID.
- (Aucun)
* - ``entraid.permission.fields``
- Champs de groupe/rôle (séparés par des virgules) à utiliser en plus comme valeurs de permission. L'ID (GUID) du groupe/rôle est toujours utilisé comme permission, et les valeurs des champs indiqués ici (ex : ``mail``) sont ajoutées.
- Champs de groupe/rôle (séparés par des virgules) à utiliser en plus comme valeurs de permission. L'ID (GUID) du groupe/rôle est toujours utilisé comme permission, et les valeurs des champs indiqués ici (ex : ``mail``) sont ajoutées. Seuls les champs dont la valeur est une chaîne de caractères peuvent être utilisés. Microsoft Graph renvoie un champ tel que ``securityEnabled`` sous forme de booléen et ``groupTypes`` sous forme de liste ; ni l'un ni l'autre ne peut devenir une valeur de permission, un tel champ est donc ignoré et un avertissement mentionnant son nom est écrit dans le journal.
- ``mail``
* - ``entraid.use.ds``
- Intégration avec le service de domaine. Quand ``true``, pour les valeurs de permission au format ``name@domain``, la partie locale (``name``) sans la partie domaine est également ajoutée comme permission.
- Intégration avec le service de domaine. Quand ``true``, pour les valeurs de permission au format ``name@domain``, la partie locale (``name``) sans la partie domaine est également ajoutée comme permission. Cela s'applique non seulement aux groupes et aux rôles, mais aussi à l'utilisateur connecté lui-même : la partie locale de son nom principal d'utilisateur (UPN) est ajoutée comme permission au niveau utilisateur. Le passage à ``false`` supprime donc également cette permission au niveau utilisateur, et pas seulement celles des groupes.
- ``true``

.. note::
Expand Down Expand Up @@ -258,9 +258,9 @@ Les ID de groupe et noms de groupe récupérés peuvent être utilisés pour la
Groupes imbriqués
-----------------

|Fess| récupère non seulement les groupes auxquels les utilisateurs appartiennent directement, mais aussi les groupes parents (groupes imbriqués) de manière récursive.
|Fess| récupère non seulement les groupes auxquels les utilisateurs appartiennent directement, mais aussi les groupes parents auxquels ceux-ci appartiennent (groupes imbriqués).
La recherche de l'appartenance directe et la recherche des groupes parents s'exécutent toutes deux dans la même tâche en arrière-plan après la connexion, si bien que la connexion elle-même n'est jamais ralentie par Microsoft Graph.
La recherche des groupes parents cible un certain nombre de niveaux hiérarchiques, et les résultats récupérés sont mis en cache pendant une certaine durée. Lorsque cette tâche en arrière-plan est terminée, les permissions de l'utilisateur sont recalculées.
La recherche des groupes parents utilise l'opération ``getMemberGroups`` de Microsoft Graph, qui résout de manière transitive : un seul appel par groupe directement attribué renvoie tous les groupes situés au-dessus de lui, quelle que soit la profondeur de l'imbrication. Les résultats récupérés sont mis en cache pendant une certaine durée. Lorsque cette tâche en arrière-plan est terminée, les permissions de l'utilisateur sont recalculées.

Paramètres de groupe par défaut
-------------------------------
Expand Down Expand Up @@ -387,7 +387,15 @@ Impossible de récupérer les informations de groupe
« Entièrement » est délibéré : la résolution n'est considérée comme réussie que si la requête
des appartenances directes et le parcours des groupes imbriqués ont tous deux abouti ; un
utilisateur qui possède ses groupes directs mais pas ses groupes parents reçoit donc aussi ce
message. La cause habituelle du cas partiel est la limitation de débit : un seul HTTP 429 ou 503
message. Un cas fait exception, et c'est celui que décrit le point précédent : lorsque
Microsoft Graph refuse la recherche des groupes imbriqués avec ``Authorization_RequestDenied``
parce que ``GroupMember.Read.All`` n'a jamais été accordé, |Fess| l'interprète non pas comme un
échec, mais comme une réponse signifiant que le groupe n'a pas de groupe parent. La résolution
est alors considérée comme réussie et **aucun message n'est affiché**, bien que les
autorisations des groupes parents manquent. Le seul indice est l'avertissement
``Not allowed to read the parent groups of ...`` dans le journal ; vérifiez donc sa présence dès
que des groupes imbriqués sont utilisés. La cause habituelle du cas partiel est la limitation de
débit : un seul HTTP 429 ou 503
de Microsoft Graph fait patienter |Fess| aussi longtemps que l'exige l'en-tête ``Retry-After``
(60 secondes s'il n'indique rien d'exploitable, 60 minutes au maximum), et pendant ce temps
toute recherche de groupes imbriqués est ignorée dans l'ensemble de l'instance |Fess| alors que
Expand Down
Loading
Loading