Recherche
Cette page reprend tous les éléments essentiels pour l'administration et l'exploitation de Nuxeo par l'administrateur.
Les chapitres abordés sont:
| Sommaire | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
Le script jbossctl nuxeoctl présent dans <nuxeo.dir.parent>/nuxeo-dm-5.2.0/racine>/bin permet d'interagir avec le service. Ll ll suffit de lancer jbossctl sans arguments nuxeoctl help pour avoir la liste des possibilités.
...
Ils se trouvent par défaut sous <nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/racine>/log
Leur emplacement peut être redéfini par la valeur des paramètres du paramètre : jbossnuxeo.server.log et jboss.console.log de build.properties.dir
La commande jbossctl permet de lire les logs du serveur jboss:
| Volet |
|---|
jbossctl tail |
ou
...
.
La version 5.2.0 stocke "en dur" les documents ici : <nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/data/NXRuntime/binaries
Ce répertoire doit donc être sauvegardé .
La version 5.2.0 stocke "en dur" les documents de type "sites web" ici : <nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/data/NXRuntime/web
Ce répertoire doit donc être sauvegardé .
Les remarques ci-dessus s'appliquent aussi pour les index. Ils sont stockés sous : <nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/data/NXRuntime
Pour reconstruire les index:
| Bloc de code |
|---|
export dataRep=<nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/data/NXRuntime
rm -r $dataRep/nxsearch-compass
rm -r $dataRep/repos/default/repository/index
rm -r $dataRep/repos/default/workspaces/default/index
|
| Remarque |
|---|
Les index liés au JCR seront reconstruits lors de la première connexion à ESUP-ECM. |
| Bloc de code |
|---|
cd <nuxeo.dir.parent>/nuxeo-dm-5.2.0/nuxeo-shell/
export JAVA_HOME=<repInstallationJava>
export PATH=$JAVA_HOME/bin:$PATH
./nxshell.sh
|> index
|> quit
|
| Remarque |
|---|
Le wiki Nuxeo à ce sujet : http://doc.nuxeo.com/display/ADMINDOC/Backup+and+restore |
Les documents sont stockés dans le répertoire data/binaries (dont l'emplacement est paramétrable via nuxeo.conf en utilisant le paramètre nuxeo.data.dir).
Il convient également de sauvegarder la base de données utilisées (dump de la base,qui doit intervenir avant la sauvegarde des document en cas de sauvegarde à chaud pour maintenir la consistance des données).
| Avertissement | ||
|---|---|---|
| ||
Nuxeo dispose d'un bouton permettant de gérer les utilisateurs. Nous nous ne recommandons pas son utilisation pour ajouter des groupes et/ou des utilisateurs dans le LDAP. Nous partons du principe que le LDAP est alimenté par le SI de l'établissement. Le but n'est pas que Nuxeo soit un outil de manipulation des données du LDAP. |
...
Nuxeo reconnait les groupes LDAP (notion de groupOfUniqueNames ou groupOfNames).
Il peut aussi travailler sur des groupes basés sur des filtrages d'attributs LDAP.
...
Ce groupe pourra alors être utilisé dans la gestion des droits d'accès dans les interfaces de Nuxeo.
HENRI :: Parler ici de l''utilisation des script de nuxeo-shell-scripts et notamment modifyPermissions.jsAttention, cependant, l'utilisation de ce type de groupe avec de larges populations impactées peut avoir des répercussions sensibles sur les performances (requêtes très nombreuses à l'annuaire).
...
Par défaut, Nuxeo utilise un groupe "members" qui correspond à tous les utilisateurs authentifiés de la plate-forme.
Dans un fonctionnement de Nuxeo indépendant du système d'information, les utilisateurs sont créés et gérés directement dans la plate-forme. Chaque utilisateur est donc associé au groupe "members" de manière automatique.
...
Cas 1: ldap.group.defaultGroup=members et le groupe "members" existe dans le LDAP
Dans ce cas, à chaque fois qu'un nouvel utilisateur se connectera à Nuxeo, il sera affecté y aura une vérification de l'appartenance au groupe "members" au sein de Nuxeo (et ce même si l'utilisateur n'est pas membre de ce groupe défini dans le LDAP).
Comme un droit de lecture est donné par défaut à "members" dans Nuxeo, tous les utilisateurs du grouper LDAP auront le droit de lire les espaces l'espace racine par défaut.
Cas 2: ldap.group.defaultGroup=members et le groupe "members" N'existe PAS dans le LDAP
Dans ce cas, à chaque fois qu'un utilisateur se connectera à Nuxeo, il sera automatiquement rattaché au pseudo groupe "members" par nuxeo.
Comme un droit de lecture est bien donné par défaut à "members" dans Nuxeo.
En revanche, comme le groupe n'existe pas dans le LDAP, Nuxeo ne pourra pas associé l'utilisateur connecté à ce groupe. Le groupe "members" ne contient donc aucun membre et le droit de lecture positionné n'est pas valide. Aucun droit n'est donc positionné par défaut.
Le groupe "members" n'est pas utilisable dans les interfaces de gestion des droits et n'a donc aucune utilité., tous les utilisateurs authentifiés auront le droit de lire l'espace racine par défaut.
Cas 3: ldap.group.defaultGroup=mon_groupe et le groupe "mon_groupe" existe dans le LDAP
C'est comme le cas 1 mais le groupe members est vide et seulement les utilisateurs de mom_groupe dans LDAP sont membre de mom_groupe dans nuxeo.
Comme un droit de lecture est donné par défaut à "members" dans Nuxeo, aucun utilisateur n'aura le droit de lire l'espace racine par défaut. Pour donner accès il faut donner un droit de lecture à mom_groupe
Cas 3: ldap.group.defaultGroup=mon_groupe et le groupe "mon_groupe" N'existe PAS dans le LDAP A chaque fois qu'un nouvel utilisateur se connectera à Nuxeo, il sera affecté au groupe "mon_groupe" au sein de Nuxeo (et ce même si l'utilisateur n'est pas membre de ce groupe dans le LDAP).
Mais dans ce cas, aucun droit par défaut n'est mis sur les espaces racine pour le groupe "mon_groupe". Ces droits seront donc à positionner par l'administrateur après installation de ESUP-ECM. Le groupe "mon_groupe" peut être utilisé dans les interfaces de gestion des droits de Nuxeo.
C'est comme le cas 2 mais le groupe members est vide et les utilisateurs authentifiés sont automatiquement rattachés à mom_groupe
Comme un droit de lecture est donné par défaut à "members" dans Nuxeo, aucun utilisateur n'aura le droit de lire l'espace racine par défaut. Pour donner accès il faut donner un droit de lecture à mom_groupe
En résumé
Le stockage des documents dans Nuxeo se fait de manière arborescente. Les espaces par défaut sont:
– ---- root (Domaines du serveur default)
-------- Default domain
------------ Sections
------------ Templates
------------ Workspaces
Dans certains cas, un droit de lecture totale sur l'espace "root" est donné à tous les utilisateurs. Ce droit est hérité par défaut dans les sous-espaces (Default domain, Sections, Templates, etc.)
Les seuls cas où ces droits de lecture à tous les membres sont définis par défaut sont lorsque :
Dans les autres cas, aucun droit n'est défini sur ces espaces sauf pour l'administrateur (ou le groupe des administrateurs, cf. paragraphe suivant).
...
Dans l'interface de gestion des droits, il est possible de "Bloquer l'héritage des droits" sur un espace. Dans ce cas, on voit apparaître une "Permission interdite" au groupe "Everyone" dans tous les sous-espaces.
Il est important de comprendre que ce groupe "Everyone" est une notion abstraite dans Nuxeo. En effet, le groupe "Everyone" n'existe pas en tant que tel et n'est donc pas utilisable dans les interfaces de sélection des groupes.
Cette notion permet simplement de signaler à l'utilisateur que tous les droits hérités sont coupés à partir de cet espace.
Il est possible de définir des accès anonymes à des espaces donnés. Pour cela, il suffit de "bloquer
...
rechercher un utilisateur sur la chaîne "invite". Nuxeo vous propose alors l'utilisateur "invite Anonyme" qu'il faut sélectionner et à qui il faut donner un droit de lecture.
A partir de cette étape, tous les documents déposés ou publiés dans l'espace seront accessibles publiquement sur internet.
Comme vu précédemment, des droits par défaut peuvent être positionnés sur l'espace 'root' de Nuxeo si ldap.group.defaultGroup=members et "members" existe dans le LDAP.
Dans ce cas, tous les utilisateurs authentifiés auront par défaut une visibilité totale sur tous les espaces de Nuxeo.
Il est donc recommandé de bloquer l'héritage des droits sur l'espace 'Templates' à tous les utilisateurs. Il faudra laisser le droit de Lire au groupe "members" sur les racines 'Sections' et 'Workspaces'.
En revanche, il faudra "Bloquer l'héritage des droits" sur les sous-espaces de 'Sections' et 'Workspaces' en fonction des besoins exprimés par votre établissement.
Les utilisateurs devront dans la majorité des cas avoir accès en lecture sur 'Sections' et 'Workspaces' et le filtrage plus fin devra se faire sur les sous-espaces.
Dans les cas où aucun droit n'est défini par défaut à la racine, il sera nécessaire de les définir manuellement.
Pour cela, un droit de lecture devra être positionné au groupe correspondant à tous les utilisateurs depuis les espaces :
---- root (Domaines du serveur default)
-------- Default domain
------------ Sections
------------ Workspaces
Ce droit de lecture est nécessaire pour que l'utilisateur puisse se déplacer dans l'arborescence des espaces.
Ensuite, comme vu dans le paragraphe précédent, il sera nécessaire d'affiner les droits dans les sous-espaces de 'Sections' et 'Workspaces'
...
.
La version 1.0 de ESUP-ECM ne permet pas réellement le dépôt de fichiers multiples. Pour déposer un ensemble de fichiers (exemple: mini site web composé de pages web, images, etc.), ceux-ci devront être déposés sous la forme d'un fichier ZIP.
...
Dans le cas contraire, on proposera à l'utilisateur de télécharger le fichier ZIP.
Voir le "Nuxeo book" (en anglais) pour plus de détails : la liste complète des commandes, le mode batch et interactif, etc ...
Il faut indiquer la machine virtuelle Java:
| Volet |
|---|
cd <nuxeo.dir.parent>/nuxeo-dm-5.2.0/nuxeo-shell/ |
Les index applicatifs nuxeo sont reconstruits en utilisant la commande index . La recherche plein texte s'appuiera sur les index créés ici.
| Volet |
|---|
./nxshell.sh -h 127.0.0.1 |
Il peut être nécessaire de forcer les droits sur des répertoires ou des documents , dans le cas où ces droits ont été enlevés par erreur ou mauvaise manipulation.
Le script modifyPermissions.js a été étendu pour répondre à ce besoin. En voici un exemple d'utilisation.
| Volet |
|---|
./nxshell.sh -h 127.0.0.1 > cd default-domain/workspaces/myworkspace 127.0.0.1> script --file <rep_src_esup_ecm>/nuxeo-shell-scripts/modifyPermissions.js <UID> [ ajoute le droit ReadWrite sur le document pour tous ("members") ] 127.0.0.1> script --file <rep_src_esup_ecm>/nuxeo-shell-scripts/modifyPermissions.js <UID> admin Everything [ajoute les droits Everything (gérer) sur le document pour l' administrateur ] |
| Volet |
|---|
./nxshell.sh -h 127.0.0.1 127.0.0.1>cd default-domain/workspaces/tmp [On se place sur le chemin Nuxeo où l'on veut importer] 127.0.0.1>fsimport </path_to_docs> . [On importe à partir du sytème de fichiers] 127.0.0.1>index default /default-domain/workspaces/tmp [On indexe les dossiers importés] |
| Volet |
|---|
./nxshell.sh -h 127.0.0.1 > log debug |