Les serveurs doivent pouvoir agir sur le nom de principal d'un client -- par exemple, pour comparer le nom de principal d'un client à une liste de contrôle d'accès, ou pour consulter un justificatif d'identité UNIX relativement à ce client, si un tel justificatif d'identité existe. Ces noms de principal sont conservés sous la forme d'un pointeur de structure rpc_gss_principal_t. (Consultez la page de manuel rpcsec_gss(3N) pour plus de détails sur rpc_gss_principal_t.) Si un serveur veut comparer un nom de principal reçu au nom d'une entité connue, il doit pouvoir générer un nom de principal dans cette forme.
L'appel rpc_gss_get_principal_name() a comme entrées plusieurs paramètres identifiant de manière unique une personne sur un réseau, et génère un nom de principal comme pointeur de structure rpc_gss_principal_t :
rpc_gss_principal_t *principal; rpc_gss_get_principal_name(principal, mécanisme, nom, noeud, domaine), . . .
Voici les arguments de rpc_gss_get_principal_name() :
principal est un pointeur désignant la structure rpc_gss_principal_t à définir.
mécanisme est le mécanisme de sécurité employé (n'oubliez pas que le nom de principal généré dépend du mécanisme).
nom est un nom de personne ou de service, par exemple jean ou nfs, ou même le nom d'une application définie par l'utilisateur.
noeud peut être, par exemple, un nom d'ordinateur UNIX.
domaine peut être, par exemple, un nom de domaine DNS, NIS, ou NIS+, ou un secteur Kerberos.
Chaque mécanisme de sécurité exige des paramètres d'identification différents. Par exemple, Kerberos V5 exige un nom d'utilisateur et, facultativement, des noms de domaine et de noeud qualifiés (dans la terminologie Kerberos, des noms d'hôte et de secteur).
Pour de plus amples renseignements, consultez la page de manuel rpc_gss_get_principal_name(3N).