Celles-ci sont hiérarchiques dans la mesure où le genre, l'espèce et l'individu sont hiérarchiques.
- Sujet - Dans un contexte de sécurité, un sujet est toute entité qui demande l'accès à un objet . Ce sont des termes génériques utilisés pour désigner la chose qui demande l'accès et la chose contre laquelle la demande est faite. Lorsque vous vous connectez à une application, vous êtes le sujet et l'application est l'objet. Quand quelqu'un frappe à votre porte, le visiteur est le sujet qui demande l'accès et votre maison est l'objet dont l'accès est demandé.
- Principal - Un sous-ensemble de sujet qui est représenté par un compte, un rôle ou un autre identifiant unique. Lorsque nous arrivons au niveau des détails d'implémentation, les principaux sont les clés uniques que nous utilisons dans les listes de contrôle d'accès. Ils peuvent représenter des utilisateurs humains, des automatismes, des applications, des connexions, etc.
- Utilisateur - Un sous-ensemble de principal faisant généralement référence à un opérateur humain. La distinction s'estompe avec le temps car les mots «utilisateur» ou «ID utilisateur» sont généralement remplacés par «compte». Cependant, lorsque vous avez besoin de faire la distinction entre la grande classe de choses qui sont des mandants et le sous-ensemble de ceux-ci qui sont des opérateurs interactifs conduisant des transactions de manière non déterministe, "utilisateur" est le mot juste.
Le sujet / objet hérite des mêmes termes que ceux utilisés dans la grammaire. Dans une phrase, le sujet est l'acteur et l'objet est la chose sur laquelle on agit. En ce sens, l'utilisation existe depuis avant l'invention des ordinateurs. Dans un contexte de sécurité, un sujet est tout ce qui peut faire une demande. Comme indiqué ci-dessus, cela ne doit pas être limité à la sécurité informatique et est donc une classification très large. Ce qui est intéressant, c'est que le sujet implique un objet. Sans objet, il n'y a pas de sujet.
Les directeurs sont ce à quoi les sujets se résolvent. Lorsque vous présentez votre carte de crédit, vous êtes le sujet et le numéro de compte est le principal. Dans d'autres contextes, votre identifiant d'utilisateur ou votre identification émise par l'État est votre principal. Mais les directeurs peuvent être associés à de nombreux types de sujets qui ne sont pas des personnes. Lorsque des applications font des demandes pour des fonctions au niveau du système, le mandant peut être le signataire d'un module de code exécutable signé mais même dans ce cas, l'utilisateur qui dirige la demande est toujours le sujet.
L'utilisateur est plus spécifique que le sujet ou le principal en ce qu'il fait généralement référence à un opérateur interactif. C'est pourquoi nous avons une interface utilisateur graphique et non une interface graphique principale. Un utilisateur est une instance de sujet qui se résout en un principal . Un seul utilisateur peut se résoudre à n'importe quel nombre de principaux, mais on s'attend à ce que tout principal soit résolu en un seul utilisateur (en supposant que les gens respectent l'exigence de ne pas partager d'ID). Dans l'exemple ci - dessus, le signataire d'un module de code exécutable est certainement pas l'utilisateur, mais il est un principe valide. L'opérateur interactif essayant de charger le module est l'utilisateur.
Comme indiqué dans les commentaires, même les sources faisant autorité ne sont pas d'accord sur ces termes. J'ai recherché le NIST, le SANS, l'IEEE, le MITRE et plusieurs sources «quasi-faisant autorité» telles que les guides d'examen de sécurité lors de la préparation de cette réponse. Aucune source unique que j'ai trouvée qui était au moins quasi-faisant autorité ne couvrait les trois termes et tous différaient considérablement dans leur utilisation. C'est mon point de vue sur la façon dont les termes doivent être utilisés, mais d'un point de vue pratique, lorsque vous vous penchez sur un manuel au milieu de la nuit, les définitions ont tendance à être ce que le vendeur ou l'auteur dit qu'elles sont. Espérons que les réponses fournies ici fourniront suffisamment d'informations pour naviguer dans les eaux et analyser tout document de sécurité utilisant ces termes.
John (human) SUBJECT > username_1 PRINCIPAL > password_1 USER
John (human) SUBJECT > username_1 PRINCIPAL > password_2 USER
John (human) SUBJECT > username_1 PRINCIPAL > smartcard_1 USER
John (human) SUBJECT > username_1 PRINCIPAL > cellphone_1 USER
Jetez un œil à ma carte conceptuelle d'authentification :
la source
Je pense que la terminologie est tirée de JAAS .
la source
Le sujet est l'entité qui demande un service. Cela peut être un utilisateur ou un processus. C'est probablement pour cette raison que le nom Sujet a été choisi à la place de l'utilisateur.
Lorsqu'un sujet tente d'accéder à un service, il doit d'abord être authentifié. L'authentification réussie se termine par le chargement des principaux de sécurité pour ce sujet. Par exemple, dans un système de contrôle d'accès basé sur les rôles, un utilisateur authentifié (connecté) aura généralement deux principaux - userId et roleId. Dans de tels systèmes, les privilèges (c'est-à-dire qui peut accéder à quoi) sont spécifiés à la fois pour les rôles et pour les utilisateurs. Pendant l'autorisation (c.-à-d. Vérifier si le service demandé doit être autorisé), le système de sécurité vérifie l'accessibilité par rapport aux deux principaux.
Par conséquent, du point de vue de l'autorisation, les principaux sont les entités réelles pour lesquelles l'accès est autorisé ou interdit. Le sujet est juste un utilisateur / thread / processus qui contient certains principaux.
la source
Comme T.Rob l'a expliqué, Subject est toute entité qui demande l'accès à un objet. À partir de là, j'ai trouvé un commentaire sur le code javax.security.auth.Subject que j'ai trouvé TRÈS utile et facile à comprendre:
"Les sujets peuvent potentiellement avoir plusieurs identités. Chaque identité est représentée comme un principal dans le sujet. Les principaux lient simplement les noms à un sujet. Par exemple, un sujet qui se trouve être une personne, Alice, peut avoir deux principaux: un qui lie" Alice Bar ", le nom sur son permis de conduire, au sujet, et un autre qui lie," 999-99-9999 ", le numéro sur sa carte d'étudiant, au sujet. Les deux directeurs font référence au même sujet même si chacun a un nom différent. "
J'espère que ça aide.
la source
Voici le lien pour l'explication ci-dessous à partir de la documentation Oracle JAVA SE.
la source
selon rahulmohan , je pense, avant que l'authentification ne soit soumise, après que l'authentification soit pricipale, par différence de sens, un sujet peut avoir plusieurs
la source