Les groupes et les utilisateurs externes ne sont pas directement liés aux services externes. Il permettent aux webservices de disposer d'un modèle de droits qu'ils utilisent ou non. L'idée de base est que pour des webservices avec authentification, on puisse fournir des utilisateurs dits externes qui ne sont pas ceux de PMB mais qui seront associés à un utilisateur PMB pour appeler l'API.
Vous pouvez définir des utilisateurs externes, qui seront dans un groupe d'utilisateurs externes. A chaque groupe d'utilisateurs externes, est associé un utilisateur de PMB qui sera utilisé pour l'API et un ensemble de webservices autorisés pour ce groupe.
Pour les webservices n'utilisant pas d'authentification, un groupe spécial Anonyme est utilisé par défaut. Ce groupe est bien lui aussi associé à un utilisateur PMB et à des webservices.
Par défaut, le groupe anonyme est associé à l'utilisateur admin de PMB. Pour changer l'utilisateur PMB associé au groupe anonyme, cliquez sur le groupe dont le nom est <anonyme>
en Administration
> Services externes
> Groupes d'utilisateurs externes
et sélectionnez l'utilisateur PMB associé au groupe dans la liste déroulante.
Les webservices SOAP et Json-RPC utilisent dans notre cas le groupe anonyme (ils peuvent aussi utiliser un autre groupe). Il est donc important que l'utilisateur de PMB associé au groupe aie les droits sur les groupes de fonction et toutes les fonctions que les webservices doivent exporter.
Le plus simple est d'autoriser toutes les fonctions externes pour l'utilisateur du groupe anonyme (admin par défaut). La restriction des fonctions proposées par un webservice SOAP ou Json-RPC se fait au moment de la création de la source associée au webservice.
Pour autoriser toutes les fonctions externes à l'utilisateur PMB associé au groupe anonyme, dans les Autorisations générales
, sélectionnez l'utilisateur PMB concerné (admin par défaut), puis pour chaque groupe/fonction externe, cochez la case Autoriser
.
N'oubliez pas de cliquer sur le bouton Enregistrer
à la fin de la page.
La déclaration des webservices autorisés pour le groupe anonyme se fait dans les connecteurs sortants en Administration
> Connecteurs
> Autorisations
.