WO2007074284A2 - Method for forming a user profile in an information system and a system for managing digital identities - Google Patents

Method for forming a user profile in an information system and a system for managing digital identities Download PDF

Info

Publication number
WO2007074284A2
WO2007074284A2 PCT/FR2006/051379 FR2006051379W WO2007074284A2 WO 2007074284 A2 WO2007074284 A2 WO 2007074284A2 FR 2006051379 W FR2006051379 W FR 2006051379W WO 2007074284 A2 WO2007074284 A2 WO 2007074284A2
Authority
WO
WIPO (PCT)
Prior art keywords
user
attributes
roles
profile
account
Prior art date
Application number
PCT/FR2006/051379
Other languages
French (fr)
Other versions
WO2007074284A3 (en
Inventor
Yahia Merchaoui
Original Assignee
France Telecom
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom filed Critical France Telecom
Publication of WO2007074284A2 publication Critical patent/WO2007074284A2/en
Publication of WO2007074284A3 publication Critical patent/WO2007074284A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/468Specific access rights for resources, e.g. using capability register
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords

Definitions

  • the present invention relates to a method of creating a user profile in an information system. It also relates to a digital identity management system. It applies in particular for the management of identity and access control in information systems.
  • a digital identity is typically composed of attributes describing an entity in a digital space and allowing it to interact with applications on a network according to its particular needs.
  • the entity can be for example a user, a group of users, an organization, a program or a machine. An entity must be able to be identified and authenticated.
  • the management of an identity is thus a set of business processes and technologies allowing on the one hand the management of the life cycle of a digital identity and on the other hand the fulfillment of relations between this identity and the applications and the services concerned.
  • Identity management is closely related to the information contained in the attributes of the user profile.
  • the user profile is persistent information that is saved in user repositories, directories of the LDAP type or databases for example.
  • a user profile is a set of attributes that characterizes an account and whose values are associated with the user of the account and materialize the user's digital identity.
  • An account is an identifier materializing the digital representation of the user for some or all of the applications of an information system. It is possible to group all the attributes forming the user profile into two subgroups.
  • a first subgroup has common attributes, such as name, first name, or birth date, for example. These common attributes can be used in all applications.
  • a second subgroup contains attributes that only make sense for certain applications and therefore are only used for users who are allowed to access them.
  • the subject of the invention is a method of creating at least one user profile in an information system, the profile comprising a set of attributes characterizing the digital identity of at least one user. Attributes being associated with roles defined in the information system, and at least one of said roles being assigned to said user, the profile is obtained by assembling and storing the attributes associated with the roles assigned to said user.
  • This allows a flexibility of evolution of a user profile.
  • the invention makes it possible to add attributes of the user profile without interruptions in the availability of the database where the profiles are stored.
  • the attributes associated with the roles have default values. The attributes of the user profile then take these default values when they do not have a specified value.
  • the user profile can be completed by a profile of access to at least one resource. At least one role is associated with permission to access the resource. Users authorized to access said resource of the information system are then identified by the roles assigned to them.
  • the invention also relates to a system for managing the digital identity of at least one user in an information system.
  • This system comprises at least:
  • a user profile is then obtained by assembling the attributes associated with the roles assigned to the user.
  • the digital identity management module can further control access to at least one resource.
  • the module describing the user profiles also includes:
  • the main advantages of the invention are that it makes it possible to obtain flexibility in the evolution of a user profile, that it allows the suppression of redundant or superfluous storage of attributes, that it allows a gain in memory space and in memory access time, it allows to change the number of attributes of a profile without changing the structure of the system, particularly involving maintenance savings.
  • FIGS. 2a and 2b repository representations for storing user data, according to the prior art
  • FIG. 3 a model illustrating the creation of a user profile according to the invention, in particular for the management of identities;
  • FIGS. 4a and 4b models illustrating the creation of authorization profiles for the management of an access control;
  • FIG. 5 a model grouping the models of FIGS. 3 and 4b for identity management and access control according to the invention
  • FIG. 6, the system of FIG. 1 showing the user reference systems used
  • FIGS. 7a and 7b exemplary models of an account repository and a user repository
  • FIG. 8 an example of a repository model for access management
  • FIG. 9 an exemplary model for the user profile according to the prior art
  • FIG. 10 an exemplary model for the creation of a user profile according to the invention.
  • FIG. 11 an example of a reference system according to that of FIG. 6, produced according to the invention.
  • FIG. 12 an exemplary application of identity management and access control according to the invention.
  • FIG. 1 presents in a simplified diagram the main blocks of an identity management system and access control.
  • This system has functional blocks that come into play when using a protected resource 1 in an information system.
  • the figure also shows the links that govern the interactions between these blocks.
  • the identity management system and access control includes an authentication module 20 and rights management, called access control module thereafter.
  • the system also includes a user repository module 30, storing user data.
  • a user 2 wants to access the resource 1 via an authentication client station 3.
  • the latter interacts with the access control module 20 according to a known authentication protocol.
  • the control module 20 performs the authentication of the user 2 and authorizes or not its access to the resource 1 according to the data relating to this user which are stored in the user repository 30.
  • An administration module 4 allows a user administrator 5 to update the repository. In particular, it registers new users with their attributes or modifies the attributes of other users throughout the system's operating life.
  • FIG. 2a illustrates a view of a table 29 for storing the user accounts, in particular in a repository 30 of the type of that of the figure 1.
  • This table describes how the system's memory space is used. Other representations are of course possible to describe this memory space.
  • Table 29 has one line per user account.
  • the data in the user account is divided into columns.
  • a first column indicates the identifier 21 of the account, it is an internal identifier to the system coded for example in alphanumeric format.
  • the following columns indicate attributes such as the external identifier subsequently called login, the password, the first name, the name and the date of birth of the user.
  • Applications store this data in the memory space. They are also transmitted between different applications, especially for authentication or control purposes.
  • FIG. 2b illustrates all of these data in the form of an object model.
  • FIG. 2b thus shows a software view of the object conveying the identity corresponding to the user account line of FIG. 2a.
  • the account includes attributes 22 specific to the authentication of the user such as the login and the password, then the attributes of the user profile 23.
  • the user profile comprises typically two types of attributes, common attributes 24 and attributes specific to certain applications.
  • the common attributes usable in all applications, are, for example, the user's last name, first name and date of birth.
  • the other attributes only make sense for certain applications and are therefore only used for users who can access them.
  • Specific attributes are for example a type of credit card and a credit card number.
  • FIG. 3 illustrates a method for creating a user profile according to the invention, in particular for identity management, by an object representation of UML (Unified Modeling Language) type.
  • UML Unified Modeling Language
  • the account and attributes of the user profile are no longer directly associated with a rigid link.
  • This model makes the attributes of a user's profile dependent on that user's roles in an information system.
  • the attributes of the user profile can correspond to the applications accessed by a user through the different roles that he occupies in relation to his organization, these roles giving him access or not to this or that application.
  • Roles are sets of rights assigned to entities. They are typically used in such a way that they model a function or business that an entity, such as a user, would occupy in the organization managed by the information system.
  • This model for creating a user profile implies that it consists of parts of profiles 31 each due to a particular role 32 assigned to the account 33 of the user. All the accounts 33 of the information system can each be assigned one or more roles among all the available roles 32, ie all the accounts 33 can be related to all the roles 32. however, a profile portion 31 is only related to one role.
  • These properties are summarized by the cardinalities of the different objects 31, 32, 33 in the sense of the UML modeling language. Cardinality describes how many different objects can be linked by an association 34, 35 to an object.
  • the cardinality of the accounts and the roles in relation is of the type 0 ... n.
  • the cardinality of a part of profile to a role is equal to 1.
  • a default value is for example assigned to each attribute associated with a role.
  • the system when assigning a role to an account, the system is able to present the default values for each of the attributes used even before the user profile is initialized.
  • a default role can be assigned to a user, the attributes associated with this role being for example those that are common to all applications.
  • the model of Figure 3 for identity management can be advantageously associated with an access management model.
  • Figures 4a and 4b show model representations for access management. These are security models that make the access rights to resources 41 dependent on the roles 32 assigned to the accounts 33. More generally, these models facilitate the administrative management of access management problems in an information system by organizational model of users the model of access to resources. That is, the users authorized to access an application are identified by the roles assigned to them. Access is determined by permissions 42, a permission being a privilege of access to a resource.
  • FIG. 4a shows a model where a permission 42 can only be defined by the definition of the association between the resource 41 and the role 32.
  • Figure 4b shows a model or permission 42 is defined only by the resource 41 that it characterizes by association 43.
  • the cardinalities of roles and permissions in their association 44 are of type 0, ... n. It is the same for the cardinalities of the accounts and the roles in their association.
  • FIGS. 4a and 4b Other models allowing access by access lists directly to the resources are possible.
  • the models of FIGS. 4a and 4b nevertheless provide ease and flexibility of management.
  • Figure 5 illustrates an integrated data model combining the models of Figures 3 and 4a or 4b. More specifically, this model integrates a model 51 for identity management such as that of FIG. 3 and a model 52 for access management of the type for example that of FIG. 4b.
  • a user profile portion 31 is thus associated with a role 32, which is associated with resources 41.
  • the associations between the role and the resources are each characterized by a permission 42.
  • the model of Figure 5 thus allows the management of the identity and management of access control. This integration takes place by matching, in a centralized manner, the accounts 33 and the roles 32 in the sense of the identity management model 51 or in the sense of the access control management model 52. This means an account and the associated role has the same meaning for identity management and access management.
  • the model of Figure 5 can be implemented in a user repository.
  • Figure 6 shows the system of Figure 1 for the management of identities and access controls.
  • the repository 30 is detailed there, it forms a system for storing user repositories including for example four storage systems:
  • an authentication repository 12 where the data relating to the secrets for authenticating the users of an account are stored
  • an access management and authorization repository 13 where data relating to the access rights to the resources for given accounts are stored
  • the set of repositories thus composes the user repository 30, which can be designed with databases or with directories, of the LDAP type, for example. These repositories are described later by data models that describe the functional links, the storage modes and the access modes in the memory spaces.
  • Figures 7a and 7b show examples of data models, respectively for the account repository and for the authentication repository. These models have the structure of a table.
  • Figure 7a shows entities involved for the account repository.
  • the account repository is for example composed of an entity 70, which is declined into a table, listing the identifiers 21 internal to the system for each account as well as a state of activity 71 and a description. This description is a free field that can indicate in particular the order of entry in the account's database.
  • the value of an identifier 21 must uniquely identify the registration of the table forming what is known as a primary key PK.
  • a primary key is a field or set of fields that uniquely identifies a record in a table, in this case an account.
  • Figure 7b shows entities involved for the authentication repository.
  • the authentication repository is for example composed of an entity 80 giving the login 72 for each account and other data 73, including the associated authentication secret consisting for example of a password.
  • the login 72 occupies a PK primary key.
  • the other data is identified by a foreign key FK1 that points to primary keys in the other tables.
  • This foreign key FK1 is a correlation key which contributes, for example, to identifying a line by linking it to a column of another table. It is the link between the authentication repository table and tables of other repositories.
  • the field addressed by the foreign key FK1 points to the address of the identifier 21 of the user account.
  • a foreign key addresses a field or a set of fields in a table representing a relationship between it and the primary key of another table.
  • This table includes the accounts repository and the authentication repository.
  • Figure 8 shows a data model of the Access Management repository. It presents the entities implementing the model of FIG. 4b in particular relation with this reference frame. These entities are for example the following tables:
  • a table 81 describing the roles defined for the system, where the description of each registered role is associated with the identifier of the role, this entity forms the repository of the roles; a table 82 describing the resources defined for the system, where the description of each registered resource is associated with the identifier of the resource;
  • a table 83 listing the set of permissions defined for each role on each resource
  • a table 84 listing all the roles 86 associated with each account 85 of the entity of the account repository.
  • the table 83 thus comprises resource-role pairs each associated with a permission realizing the associations 43, 44 of the model of FIG. 4b.
  • the resource and role identifiers are addressed by foreign keys FK1, FK2 which point to the primary keys of the tables 81, 82 describing roles and resources.
  • the account identifiers and the role identifiers are identified by foreign keys FK1, FK2 which point one in the accounts repository and the other in the system roles repository 81.
  • the couples records account identifiers and role identifiers describe the set of associations 45 of the model 4b for example. Each record is marked with an index.
  • Figure 9 recalls a user profile model according to the prior art.
  • This model is implemented by a table 91 which can be associated with the other tables of the other repositories 1 1, 12, 13.
  • the account identifier in the table 91 points the repository of the user accounts to make the link between this account and attributes.
  • the attributes 92 of the user profile are rigidly related to the user account.
  • a user identified in this table 91 if one wants to centralize the storage of the attributes of the profile, one must model a profile where all the attributes that concern all the applications that use the system manager subsist.
  • we want to change the number of attributes of the user profile that an application would use we must change the data model of the user profile, which implies an interruption of service.
  • FIG. 10 shows the entities involved for the repository of the user profiles created by the method according to the invention. It illustrates, in particular, an example of the implementation of the model illustrated in FIG. components of the user profile repository are, for example, the following tables:
  • a table 81 describing the roles defined for the system, for example of the type of that of FIG. 8 used for the repository of access management;
  • a table 101 describing the attributes of the profiles defined for each role, the attributes having a default value
  • a table 84 listing all the roles associated with each account of the account repository, of the type of that of FIG. 8; a table 102 listing the set of attributes specified, in the defined or initialized direction, for a given user.
  • This last table 102 indicates for each user account the set of attributes specified with their value for this account. These attribute values can be specified when the system is initialized or running. They are defined. The attributes that have no meaning for this account, with regard to the applications envisaged, or whose value can not be defined, are not indicated in this table 102. In terms of its structure, this is reflected in particular for each account, by an association of the identifiers of the account 21 with the values of its specified attributes.
  • Table 101 describing the attributes indicates the list of attributes associated with each role. These associations are modeled in Figure 3 by the relationship between attributes and roles. In this table 101, the attributes of the lists have a default value 103. The choice of a default value can be arbitrary but preferably it is chosen to optimize the storage of the data.
  • the attribute takes the value specified in the table 102 of the second step if this value exists in this table, otherwise the attribute takes the default value indicated in the table 101 describing the attributes associated with roles.
  • the set of attribute values thus defined forms the profile of the user.
  • This profile is obtained from the attribute values specified for this user and common default values that depend on the user's roles. For each user, it is no longer necessary to store all the attributes.
  • the invention makes it possible to set only one default value for all these users and for a given role, at the level of the table 101 associating the attributes with the role.
  • the profiles of all users should store the value of these attributes, resulting in a waste of storage space.
  • Table 81 describing the roles defined for the system, actually forming the role repository, does not intervene directly in the process of recomposition as described above. In fact, reference is made to this table 81 for the definition of roles at initialization and then during system operation to take into account, for example, new users or users who change roles or to add new roles. required for the evolutions of the applications of the information system.
  • FIG. 11 presents a repository structure that integrates the tables of FIGS. 8 and 10 implementing the model of FIG. 5. These tables are supplemented by the account repository 70 and the authentication repository 80 to form a set of repositories as shown in Figure 6 and used in an identity management system and access control.
  • access management repositories and user profiles are nested.
  • the repository of the user profiles is composed of the set 1 10 of the tables of FIG. 10.
  • the repository of the access management is composed of the set 11 of the tables of FIG. 8.
  • the table 81 forming the repository of the Roles and the account role association table 84 are common to both sets 110, 11.
  • the tables 80, 84, 102 that include the account identifiers point to the account repository 70.
  • Figure 6 shows an identity management and access control system. It is nevertheless possible to produce a system according to the invention which comprises only a system for managing the digital identity of the users.
  • the access control module 20 for example simply performs the identity management function.
  • the module 30 of the repositories may not include the profile portion corresponding to the access control to applications or resources.
  • Identity management is performed based on the data available in the repository.
  • the invention advantageously allows to obtain a flexibility of evolution of a user profile. It allows the suppression of redundant or superfluous storage of attributes and thus a gain in memory space and memory access time. It also makes it possible to change the number of attributes of a profile without changing the structure of the system, which implies maintenance savings.
  • Figure 12 illustrates an example of application of the invention.
  • Jérians Dupont is the administrator manager of the Intranet of a given organization. The managers of this organization have the privilege of having a reserved parking space.
  • Jérians Dupont accesses the Internet portal of his company, he uses an account 33 whose login is "jdupont". This account is associated with three roles 32 that are:
  • the user profile 31 contains the attributes common to all the collaborators of the organization, for example the surname, the first name, the date of birth ..., the "Default" role being associated with these common attributes;
  • the profile defined by the access repository gains permissions to access the Intranet of the organization, under the control of a permission 42 giving access to the resource 41: the Intranet application.
  • the user profile is not enriched with any attribute, the role "Admin Portal. "Not related to any attribute;
  • the access profile gains the permissions enabling access to the administration application 41 to manage in particular the accounts of the other collaborators.
  • the user profile 31 is added an attribute whose name is "ParkingNumber" and whose value is, for example, 32; the access profile gains the permissions to access the electronic document management application which contains, for example, sensitive data.

Abstract

The invention relates to a method for forming a user profile in an information system and to a system for managing digital identities. The inventive method consists in assigning attributes (31) to each role (32) defined in the information system, wherein at least one role is assigned to a user, and in obtaining a profile by assembling (34) the attributes associated to the user's role. The attributes (31) assigned to the roles can have default values. The profile attributes receive the default values when they are devoid of a specific value. The invention is particularly suitable for the identity and access control management used in information systems.

Description

Procédé de création d'un profil utilisateur dans un système d'information et système de gestion d'identités numériques Method for creating a user profile in an information system and digital identity management system
La présente invention concerne un procédé de création d'un profil utilisateur dans un système d'information. Elle concerne également un système de gestion d'identités numériques. Elle s'applique notamment pour la gestion de l'identité et du contrôle d'accès dans les systèmes d'information.The present invention relates to a method of creating a user profile in an information system. It also relates to a digital identity management system. It applies in particular for the management of identity and access control in information systems.
Le besoin d'identification fiable d'entités utilisatrices de systèmes d'information croît considérablement en raison du nombre toujours croissant de transactions électroniques, couvrant par exemple aussi bien les exigences de sécurité d'accès à un service d'entreprise que les exigences de sécurité de transactions à distance, telles que le paiement en ligne par exemple. La gestion d'identité et d'accès aux systèmes d'information est donc un enjeu central dans le développement des transactions électroniques sur les réseaux, tant du point de vue de ses performances que de ses coûts. Une identité numérique est généralement composée d'attributs décrivant une entité dans un espace numérique et lui permettant d'interagir avec des applications sur un réseau en fonction de ses besoins particuliers. L'entité peut être par exemple un utilisateur, un groupe d'utilisateurs, une organisation, un programme ou encore une machine. Une entité doit pouvoir être identifiée et authentifiée. La gestion d'une identité est donc un ensemble de processus métier et de technologies permettant d'une part la gestion du cycle de vie d'une identité numérique et d'autre part l'accomplissement de relations entre cette identité et les applications et les services concernés. La gestion de l'identité est intimement liée aux informations contenues dans les attributs du profil utilisateur. Le profil utilisateur est une information persistante qui est sauvegardée dans des référentiels utilisateurs, des répertoires du type LDAP ou bases de données par exemple. Un profil utilisateur est un ensemble d'attributs caractérisant un compte et dont les valeurs sont associées à l'utilisateur du compte et matérialisent l'identité numérique de l'utilisateur. Un compte est un identifiant matérialisant la représentation numérique de l'utilisateur pour une partie ou l'ensemble des applications d'un système d'information. Il est possible de regrouper l'ensemble des attributs formant le profil utilisateur en deux sous-groupes. Un premier sous-groupe comporte des attributs communs, tels que le nom, le prénom ou la date de naissance par exemple. Ces attributs communs peuvent être utilisés dans toutes les applications. Un deuxième sous-groupe comporte les attributs qui n'ont de sens que pour certaines applications et donc ne sont utilisés que pour les utilisateurs autorisés à y accéder.The need for reliable identification of entities using information systems increases considerably due to the ever-increasing number of electronic transactions, covering for example both the security requirements for access to a business service and the security requirements. remote transactions, such as online payment for example. Identity management and access to information systems is therefore a central issue in the development of electronic transactions on networks, both in terms of performance and costs. A digital identity is typically composed of attributes describing an entity in a digital space and allowing it to interact with applications on a network according to its particular needs. The entity can be for example a user, a group of users, an organization, a program or a machine. An entity must be able to be identified and authenticated. The management of an identity is thus a set of business processes and technologies allowing on the one hand the management of the life cycle of a digital identity and on the other hand the fulfillment of relations between this identity and the applications and the services concerned. Identity management is closely related to the information contained in the attributes of the user profile. The user profile is persistent information that is saved in user repositories, directories of the LDAP type or databases for example. A user profile is a set of attributes that characterizes an account and whose values are associated with the user of the account and materialize the user's digital identity. An account is an identifier materializing the digital representation of the user for some or all of the applications of an information system. It is possible to group all the attributes forming the user profile into two subgroups. A first subgroup has common attributes, such as name, first name, or birth date, for example. These common attributes can be used in all applications. A second subgroup contains attributes that only make sense for certain applications and therefore are only used for users who are allowed to access them.
Les techniques connues relient directement les attributs du profil utilisateur au compte d'une manière plus ou moins rigide. Ces techniques présentent des inconvénients. En particulier si l'on veut que plusieurs applications, dans un système d'information par exemple, utilisent d'une manière centralisée le même référentiel utilisateurs avec un même gestionnaire d'identité, on est obligé de modéliser dès le début un profil utilisateur exhaustif contenant l'ensemble de tous les attributs nécessaires à toutes les applications. Cela implique que tous les utilisateurs aient le même profil utilisateur, c'est-à-dire les mêmes attributs. Un utilisateur a donc la totalité des attributs dans son profil utilisateur même si certains ne concernent que des applications auxquelles cet utilisateur n'a pas forcément le droit d'accéder. Il est donc nécessaire de réserver de l'espace pour tous ces attributs, même si ces attributs ne sont pas spécifiés. Il en résulte un gaspillage de l'espace de stockage du référentiel. Des solutions connues tentent de contourner cet inconvénient en stockant les attributs de l'identité relatifs à une seule application dans des bases situées du côté de l'application. Ces solutions présentent elles-mêmes d'autres inconvénients tels que le morcellement de l'identité numérique sur plusieurs référentiels et la difficulté du partage des attributs qui ne concerne que quelques applications nécessitant néanmoins l'implémentation de protocoles de partage d'attributs.Known techniques directly relate the attributes of the user profile to the account in a more or less rigid manner. These techniques have disadvantages. In particular, if you want multiple applications in an information system, for example, to use the same user repository centrally with the same identity manager, you have to model a comprehensive user profile from the beginning. containing all of the attributes necessary for all applications. This implies that all users have the same user profile, that is, the same attributes. A user therefore has all the attributes in his user profile even if some only relate to applications that this user does not necessarily have the right to access. It is therefore necessary to reserve space for all these attributes, even if these attributes are not specified. This results in a waste of repository storage space. Known solutions attempt to circumvent this disadvantage by storing the identity attributes of a single application in databases located on the application side. These solutions themselves have other disadvantages such as the fragmentation of the digital identity on several repositories and the difficulty of sharing attributes which only concerns a few applications nevertheless requiring the implementation of attribute sharing protocols.
Un autre inconvénient des techniques connues concerne leur rigidité par rapport aux différentes évolutions. En particulier le gestionnaire d'identité doit évoluer pour suivre les besoins de l'ensemble des applications qui l'utilisent ou pour suivre les besoins d'une même application, notamment les attributs de l'identité dont l'application a besoin. Il est aussi nécessaire de suivre le rôle qu'occupe un utilisateur dans l'organisation des applications et qui lui permet d'accéder à des applications différentes au cours du temps. Pour répondre à ces exigences, les techniques connues modifient la structure de la base du référentiel avec de lourdes procédures d'importation des identités entre les différents formats du profil utilisateur, ce qui implique presque systématiquement une rupture de service.Another disadvantage of the known techniques concerns their rigidity with respect to the different evolutions. In particular, the identity manager must evolve to follow the needs of all the applications that use it or to follow the needs of the same application, including the attributes of the identity that the application needs. It is also necessary to follow the role that a user occupies in the organization of applications and that allows him to access different applications over time. To meet these requirements, known techniques modify the structure of the repository database with heavy procedures for importing identities between the different formats of the user profile, which almost always implies a break in service.
Tous ces inconvénients se traduisent par des problèmes techniques au niveau du matériel supportant le système d'information, notamment en ce qui concerne l'espace mémoire et/ou stockage, les temps d'accès mémoire ou encore la difficulté de maintenance par exemple.All these drawbacks result in technical problems in the hardware supporting the information system, particularly with regard to the storage space and / or storage, memory access times or the difficulty of maintenance for example.
L'invention vise à pallier les inconvénients précités. A cet effet, l'invention a pour objet un procédé de création d'au moins un profil utilisateur dans un système d'information, le profil comportant un ensemble d'attributs caractérisant l'identité numérique d'au moins un utilisateur. Des attributs étant associés à des rôles définis dans le système d'information, et au moins un desdits rôles étant attribué audit utilisateur, le profil est obtenu par assemblage et stockage des attributs associés aux rôles attribués audit utilisateur. Ceci permet une souplesse d'évolution d'un profil utilisateur. L'invention permet de rajouter des attributs du profil utilisateur sans interruptions dans la disponibilité de la base de données ou les profils sont stockés. Avantageusement, les attributs associés aux rôles ont des valeurs par défaut. Les attributs du profil utilisateur prennent alors ces valeurs par défaut lorsqu'ils n'ont pas de valeur spécifiée.The invention aims to overcome the aforementioned drawbacks. For this purpose, the subject of the invention is a method of creating at least one user profile in an information system, the profile comprising a set of attributes characterizing the digital identity of at least one user. Attributes being associated with roles defined in the information system, and at least one of said roles being assigned to said user, the profile is obtained by assembling and storing the attributes associated with the roles assigned to said user. This allows a flexibility of evolution of a user profile. The invention makes it possible to add attributes of the user profile without interruptions in the availability of the database where the profiles are stored. Advantageously, the attributes associated with the roles have default values. The attributes of the user profile then take these default values when they do not have a specified value.
Ceci permet d'ajouter des profils utilisateurs rapidement et préfabriqués. Le profil utilisateur peut être complété par un profil d'accès à au moins une ressource. Au moins un rôle est associé à une permission autorisant l'accès à la ressource. Les utilisateurs autorisés à accéder à ladite ressource du système d'information sont alors identifiés par les rôles qui leur sont attribués.This allows you to add user profiles quickly and prefabricated. The user profile can be completed by a profile of access to at least one resource. At least one role is associated with permission to access the resource. Users authorized to access said resource of the information system are then identified by the roles assigned to them.
L'invention a également pour objet un système de gestion de l'identité numérique d'au moins un utilisateur dans un système d'information. Ce système comporte au moins :The invention also relates to a system for managing the digital identity of at least one user in an information system. This system comprises at least:
- un module de gestion d'identité numérique ;- a digital identity management module;
- un module décrivant au moins un profil utilisateur, la gestion d'identité étant réalisée en fonction de données dudit profil, comportant un ensemble d'attributs caractérisant l'identité numérique dudit utilisateur ledit module comportant au moins : - une entité décrivant les attributs associés à des rôles définis dans ledit système d'information ;a module describing at least one user profile, the identity management being performed as a function of data of said profile, comprising a set of attributes characterizing the digital identity of said user, said module comprising at least: an entity describing the attributes associated with roles defined in said information system;
- une entité répertoriant les rôles attribués à l'utilisateur.an entity listing the roles assigned to the user.
Un profil utilisateur est ensuite obtenu par l'assemblage des attributs associés aux rôles attribués à l'utilisateur.A user profile is then obtained by assembling the attributes associated with the roles assigned to the user.
Le module de gestion d'identité numérique peut effectuer en outre un contrôle d'accès à au moins une ressource. Dans ce cas, le module décrivant les profils utilisateur comporte par ailleurs :The digital identity management module can further control access to at least one resource. In this case, the module describing the user profiles also includes:
- une entité décrivant les ressources définies pour le système ; - une table répertoriant l'ensemble des permissions définies pour les rôles sur ladite ressource ; les utilisateurs autorisés à accéder à une ressource du système d'information étant identifiés par les rôles qui leur sont attribués.an entity describing the resources defined for the system; a table listing the set of permissions defined for the roles on said resource; the users authorized to access an information system resource being identified by the roles assigned to them.
L'invention a notamment pour principaux avantages qu'elle permet d'obtenir une souplesse d'évolution d'un profil utilisateur, qu'elle permet la suppression de stockage redondant ou superflu d'attributs, qu'elle permet un gain en espace mémoire et en temps d'accès mémoire, qu'elle permet de faire évoluer le nombre d'attributs d'un profil sans changer la structure du système, impliquant en particulier des économies de maintenance.The main advantages of the invention are that it makes it possible to obtain flexibility in the evolution of a user profile, that it allows the suppression of redundant or superfluous storage of attributes, that it allows a gain in memory space and in memory access time, it allows to change the number of attributes of a profile without changing the structure of the system, particularly involving maintenance savings.
D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description qui suit faite en regard de dessins annexés qui représentent :Other characteristics and advantages of the invention will become apparent with the aid of the following description made with reference to appended drawings which represent:
- la figure 1 , les principaux blocs d'un système de gestion d'identités et de contrôles d'accès ;- Figure 1, the main blocks of an identity management system and access controls;
- les figures 2a et 2b, des représentations de référentiels pour stocker des données utilisateurs, selon l'art antérieur ;FIGS. 2a and 2b, repository representations for storing user data, according to the prior art;
- la figure 3, un modèle illustrant la création d'un profil utilisateur selon l'invention, notamment pour la gestion d'identités ; - les figures 4a et 4b, des modèles illustrant la création de profils d'habilitation pour la gestion d'un contrôle d'accès ;FIG. 3, a model illustrating the creation of a user profile according to the invention, in particular for the management of identities; FIGS. 4a and 4b, models illustrating the creation of authorization profiles for the management of an access control;
- la figure 5, un modèle regroupant les modèles des figures 3 et 4b pour la gestion d'identité et du contrôle d'accès selon l'invention ;FIG. 5, a model grouping the models of FIGS. 3 and 4b for identity management and access control according to the invention;
- la figure 6, le système de la figure 1 montrant les référentiels utilisateurs mis en jeu ; - les figures 7a et 7b, des exemples de modèles d'un référentiel des comptes et d'un référentiel utilisateurs ;FIG. 6, the system of FIG. 1 showing the user reference systems used; FIGS. 7a and 7b, exemplary models of an account repository and a user repository;
- la figure 8, un exemple de modèle de référentiel pour la gestion d'accès ; - la figure 9, un exemple de modèle pour le profil utilisateur selon l'art antérieur ;FIG. 8, an example of a repository model for access management; FIG. 9, an exemplary model for the user profile according to the prior art;
- la figure 10, un exemple de modèle pour la création d'un profil utilisateur selon l'invention ;FIG. 10, an exemplary model for the creation of a user profile according to the invention;
- la figure 1 1 , un exemple de système de référentiel conforme à celui de la figure 6, réalisé selon l'invention ;FIG. 11, an example of a reference system according to that of FIG. 6, produced according to the invention;
- la figure 12, un exemple d'application de gestion d'identité et de contrôle d'accès selon l'invention.FIG. 12, an exemplary application of identity management and access control according to the invention.
La figure 1 présente par un schéma simplifié les principaux blocs d'un système de gestion d'identités et de contrôles d'accès. Ce système présente des blocs fonctionnels qui entrent en jeu lors de l'utilisation d'une ressource 1 protégée dans un système d'information. La figure montre par ailleurs les liens qui régissent les interactions entre ces blocs. Le système de gestion des identités et des contrôles d'accès comporte notamment un module 20 d'authentification et de gestion des droits, appelé module de contrôle d'accès par la suite. Le système comporte aussi un module de référentiels utilisateurs 30, stockant les données relatives aux utilisateurs. Dans l'exemple de la figure 1 , un utilisateur 2 veut accéder à la ressource 1 via un poste client d'authentification 3. Ce dernier interagit avec le module de contrôle d'accès 20 selon un protocole d'authentification connu. Le module de contrôle 20 réalise l'authentification de l'utilisateur 2 et autorise ou non son accès à la ressource 1 en fonction des données relatives à cet utilisateur qui sont stockées dans le référentiel utilisateurs 30. Un module d'administration 4 permet à un administrateur 5 de mettre à jour le référentiel. Il inscrit notamment à ce niveau les nouveaux utilisateurs avec leurs attributs ou modifie les attributs des autres utilisateurs, durant toute la durée d'exploitation du système.Figure 1 presents in a simplified diagram the main blocks of an identity management system and access control. This system has functional blocks that come into play when using a protected resource 1 in an information system. The figure also shows the links that govern the interactions between these blocks. The identity management system and access control includes an authentication module 20 and rights management, called access control module thereafter. The system also includes a user repository module 30, storing user data. In the example of FIG. 1, a user 2 wants to access the resource 1 via an authentication client station 3. The latter interacts with the access control module 20 according to a known authentication protocol. The control module 20 performs the authentication of the user 2 and authorizes or not its access to the resource 1 according to the data relating to this user which are stored in the user repository 30. An administration module 4 allows a user administrator 5 to update the repository. In particular, it registers new users with their attributes or modifies the attributes of other users throughout the system's operating life.
A titre d'exemple, la figure 2a illustre une vue d'une table 29 pour stocker les comptes utilisateurs, notamment dans un référentiel 30 du type de celui de la figure 1. Cette table décrit comment est utilisé l'espace mémoire du système. D'autres représentations sont bien sûr possibles pour décrire cet espace mémoire. La table 29 comporte une ligne par compte utilisateur. Les données composant le compte utilisateur sont réparties en colonnes. Une première colonne indique l'identifiant 21 du compte, il s'agit d'un identifiant interne au système codé par exemple au format alphanumérique. Les colonnes suivantes indiquent des attributs tels que l'identifiant externe appelé par la suite login, le mot de passe, le prénom, le nom et la date de naissance de l'utilisateur. Les applications stockent ces données dans l'espace mémoire. Elles sont par ailleurs transmises entre différentes applications, notamment pour des besoins d'authentification ou de contrôle. Pour faciliter la description, la figure 2b illustre l'ensemble de ces données sous la forme d'un modèle d'objet. La figure 2b montre donc une vue logicielle de l'objet véhiculant l'identité correspondant à la ligne de compte utilisateur de la figure 2a. En plus de son identifiant 21 au format alpha-numérique, le compte comporte des attributs 22 propres à l'authentification de l'utilisateur comme par exemple le login et le mot de passe, puis les attributs du profil utilisateur 23. Le profil utilisateur comporte généralement deux types d'attributs, les attributs communs 24 et les attributs 25 spécifiques à certaines applications. Les attributs communs, utilisables dans toutes les applications, sont par exemple le nom, le prénom et la date de naissance de l'utilisateur. Les autres attributs n'ont de sens que pour certaines applications et ne sont donc utilisés que pour les utilisateurs autorisés à y accéder. Des attributs spécifiques sont par exemple un type de carte de crédit et un numéro de carte de crédit. Comme indiqué précédemment, une solution de l'art antérieur consiste à modéliser dès le début un profil utilisateur contenant l'ensemble de tous les attributs nécessaires à toutes les applications. Dans l'exemple de la figure 2a, le compte d'un utilisateur n'utilisant pas de carte de crédit aurait néanmoins les attributs correspondants, ces derniers occupant une place mémoire inutile sans valeur particulière attribuée.By way of example, FIG. 2a illustrates a view of a table 29 for storing the user accounts, in particular in a repository 30 of the type of that of the figure 1. This table describes how the system's memory space is used. Other representations are of course possible to describe this memory space. Table 29 has one line per user account. The data in the user account is divided into columns. A first column indicates the identifier 21 of the account, it is an internal identifier to the system coded for example in alphanumeric format. The following columns indicate attributes such as the external identifier subsequently called login, the password, the first name, the name and the date of birth of the user. Applications store this data in the memory space. They are also transmitted between different applications, especially for authentication or control purposes. For ease of description, Figure 2b illustrates all of these data in the form of an object model. FIG. 2b thus shows a software view of the object conveying the identity corresponding to the user account line of FIG. 2a. In addition to its identifier 21 in the alpha-numeric format, the account includes attributes 22 specific to the authentication of the user such as the login and the password, then the attributes of the user profile 23. The user profile comprises typically two types of attributes, common attributes 24 and attributes specific to certain applications. The common attributes, usable in all applications, are, for example, the user's last name, first name and date of birth. The other attributes only make sense for certain applications and are therefore only used for users who can access them. Specific attributes are for example a type of credit card and a credit card number. As indicated above, a solution of the prior art is to model from the beginning a user profile containing the set of all the attributes necessary for all applications. In the example of Figure 2a, the account of a user not using a credit card would nevertheless have the corresponding attributes, the latter occupying a useless memory space without any particular value attributed.
Au-delà de cet exemple simple, il apparaît que la gestion de l'identité est liée aux informations contenues dans les attributs du profil utilisateur 23. Le modèle de la figure 2b établi selon l'art antérieur se focalise sur une entité qui caractérise d'une manière rigide les attributs du profil utilisateur, en tant que colonne de la table 29. Or, un grand nombre d'attributs du profil utilisateur n'ont de sens que pour certaines applications et donc n'ont de sens que dans le profil des utilisateurs autorisés à y accéder. De plus, le nombre des attributs du profil utilisateur dont ont besoin les applications évolue au cours du temps. Enfin le modèle du profil utilisateur doit suivre les besoins des applications et pour accompagner leurs évolutions fonctionnelles au fil du temps. Un stockage tel qu'illustré par la figure 2 ne répond pas à ces exigences.Beyond this simple example, it appears that the management of the identity is linked to the information contained in the attributes of the user profile 23. The model of FIG. 2b established according to the prior art focuses on an entity that characterizes the user. a rigid way the attributes of the user profile, as That column of the table 29. However, a large number of attributes of the user profile only make sense for certain applications and therefore only make sense in the profile of the users authorized to access them. In addition, the number of user profile attributes required by applications evolves over time. Finally the model of the user profile must follow the needs of the applications and to accompany their functional evolutions over time. Storage as illustrated in Figure 2 does not meet these requirements.
La figure 3 illustre un procédé de création de profil utilisateur selon l'invention notamment pour la gestion d'identité, par une représentation objet de type UML (Unified Modeling Language). Dans ce modèle le compte et les attributs du profil utilisateur ne sont plus associés directement par un lien rigide. Ce modèle fait dépendre les attributs du profil d'un utilisateur des rôles de cet utilisateur dans un système d'information. En d'autres termes, les attributs du profil utilisateur peuvent correspondre aux applications auxquelles accède un utilisateur au travers des différents rôles qu'il occupe par rapport à son organisation, ces rôles lui donnant l'accès ou non à telle ou telle application. Des rôles sont des ensembles de droits attribués à des entités. Ils sont généralement utilisés de telle sorte qu'ils modélisent une fonction ou un métier qu'occuperait une entité, par exemple un utilisateur, dans l'organisation gérée par le système d'information. Ce modèle de création d'un profil utilisateur implique que celui-ci est composé de parties de profils 31 dues chacune à un rôle particulier 32 attribué au compte 33 de l'utilisateur. Tous les comptes 33 du système d'information peuvent se voir attribués chacun un ou plusieurs rôles parmi tous les rôles 32 disponibles, c'est-à-dire que tous les comptes 33 peuvent être mis en relation 34 avec tous les rôles 32. En revanche, une partie de profil 31 n'est en relation 35 qu'avec un seul rôle. Ces propriétés sont résumées par les cardinalités des différents objets 31 , 32, 33 au sens du langage de modélisation UML. La cardinalité décrit combien d'objets différents peuvent être liés par une association 34, 35 à un objet. Ainsi la cardinalité des comptes et des rôles en relation est du type 0 ...n. La cardinalité d'une partie de profil à un rôle est égale à 1. Avantageusement une valeur par défaut est par exemple attribuée à chaque attribut associé à un rôle. Ainsi, quand on attribue un rôle à un compte, le système est capable de présenter les valeurs par défaut pour chacun des attributs utilisés avant même l'initialisation du profil utilisateur. De même un rôle par défaut peut être affecté à un utilisateur, les attributs associés à ce rôle étant par exemple ceux qui sont communs à toutes les applications. Le modèle de la figure 3 pour la gestion d'identité peut être avantageusement associé à un modèle de gestion d'accès.FIG. 3 illustrates a method for creating a user profile according to the invention, in particular for identity management, by an object representation of UML (Unified Modeling Language) type. In this model the account and attributes of the user profile are no longer directly associated with a rigid link. This model makes the attributes of a user's profile dependent on that user's roles in an information system. In other words, the attributes of the user profile can correspond to the applications accessed by a user through the different roles that he occupies in relation to his organization, these roles giving him access or not to this or that application. Roles are sets of rights assigned to entities. They are typically used in such a way that they model a function or business that an entity, such as a user, would occupy in the organization managed by the information system. This model for creating a user profile implies that it consists of parts of profiles 31 each due to a particular role 32 assigned to the account 33 of the user. All the accounts 33 of the information system can each be assigned one or more roles among all the available roles 32, ie all the accounts 33 can be related to all the roles 32. however, a profile portion 31 is only related to one role. These properties are summarized by the cardinalities of the different objects 31, 32, 33 in the sense of the UML modeling language. Cardinality describes how many different objects can be linked by an association 34, 35 to an object. Thus the cardinality of the accounts and the roles in relation is of the type 0 ... n. The cardinality of a part of profile to a role is equal to 1. Advantageously, a default value is for example assigned to each attribute associated with a role. Thus, when assigning a role to an account, the system is able to present the default values for each of the attributes used even before the user profile is initialized. Similarly, a default role can be assigned to a user, the attributes associated with this role being for example those that are common to all applications. The model of Figure 3 for identity management can be advantageously associated with an access management model.
Les figures 4a et 4b montrent des représentations de modèles pour la gestion d'accès. Ce sont des modèles de sécurité qui font dépendre les droits d'accès aux ressources 41 des rôles 32 attribués aux comptes 33. Plus généralement ces modèles facilitent la gestion administrative des problèmes de gestion d'accès dans un système d'information en faisant coller au modèle organisationnel des utilisateurs le modèle d'accès aux ressources. C'est-à-dire que les utilisateurs autorisés à accéder à une application sont identifiés par les rôles qui leur sont attribués. L'accès est déterminé par des permissions 42, une permission étant un privilège d'accès à une ressource. La figure 4a présente un modèle où une permission 42 ne peut être définie que par la définition de l'association entre la ressource 41 au rôle 32.Figures 4a and 4b show model representations for access management. These are security models that make the access rights to resources 41 dependent on the roles 32 assigned to the accounts 33. More generally, these models facilitate the administrative management of access management problems in an information system by organizational model of users the model of access to resources. That is, the users authorized to access an application are identified by the roles assigned to them. Access is determined by permissions 42, a permission being a privilege of access to a resource. FIG. 4a shows a model where a permission 42 can only be defined by the definition of the association between the resource 41 and the role 32.
La figure 4b présente un modèle ou une permission 42 est définie seulement par la ressource 41 qu'elle caractérise par une association 43. Les cardinalités des rôles et des permissions dans leur association 44 sont du type 0, ...n. Il en est de même pour les cardinalités des comptes et des rôles dans leur association 45.Figure 4b shows a model or permission 42 is defined only by the resource 41 that it characterizes by association 43. The cardinalities of roles and permissions in their association 44 are of type 0, ... n. It is the same for the cardinalities of the accounts and the roles in their association.
D'autres modèles autorisant des accès par des listes d'accès directement sur les ressources sont possibles. Les modèles des figures 4a et 4b apportent néanmoins une facilité et une souplesse de gestion.Other models allowing access by access lists directly to the resources are possible. The models of FIGS. 4a and 4b nevertheless provide ease and flexibility of management.
La figure 5 illustre un modèle de données intégré réunissant les modèles des figures 3 et 4a ou 4b. Plus particulièrement, ce modèle intègre un modèle 51 pour la gestion de l'identité tel que celui de la figure 3 et un modèle 52 pour la gestion des accès du type par exemple de celui de la figure 4b. Une partie de profil utilisateur 31 est ainsi associée à un rôle 32, lequel est associé à des ressources 41. Les associations entre le rôle et les ressources sont caractérisées chacune par une permission 42. Le modèle de la figure 5 permet donc la gestion de l'identité et la gestion du contrôle d'accès. Cette intégration s'opère en faisant correspondre, d'une manière centralisée, les comptes 33 et les rôles 32 dans le sens du modèle de gestion d'identité 51 ou dans le sens du modèle de gestion du contrôle d'accès 52. Cela signifie qu'un compte et le rôle associé a le même sens pour la gestion d'identité et pour la gestion d'accès. Le modèle de la figure 5 peut être mis en œuvre dans un référentiel utilisateurs.Figure 5 illustrates an integrated data model combining the models of Figures 3 and 4a or 4b. More specifically, this model integrates a model 51 for identity management such as that of FIG. 3 and a model 52 for access management of the type for example that of FIG. 4b. A user profile portion 31 is thus associated with a role 32, which is associated with resources 41. The associations between the role and the resources are each characterized by a permission 42. The model of Figure 5 thus allows the management of the identity and management of access control. This integration takes place by matching, in a centralized manner, the accounts 33 and the roles 32 in the sense of the identity management model 51 or in the sense of the access control management model 52. This means an account and the associated role has the same meaning for identity management and access management. The model of Figure 5 can be implemented in a user repository.
La figure 6 reprend le système de la figure 1 pour la gestion des identités et des contrôles d'accès. Le référentiel 30 y est détaillé, il forme un système de stockage des référentiels utilisateurs comportant par exemple quatre systèmes de stockage :Figure 6 shows the system of Figure 1 for the management of identities and access controls. The repository 30 is detailed there, it forms a system for storing user repositories including for example four storage systems:
- un référentiel des comptes 1 1 , où sont répertoriés les comptes des utilisateurs ;- an account repository 1 1, where are listed the accounts of users;
- un référentiel d'authentification 12 où sont stockées les données relatives aux secrets permettant d'authentifier les utilisateurs d'un compte ;an authentication repository 12 where the data relating to the secrets for authenticating the users of an account are stored;
- un référentiel de la gestion d'accès et des habilitations 13, où sont stockées les données relatives aux droits d'accès aux ressources pour des comptes données ;an access management and authorization repository 13, where data relating to the access rights to the resources for given accounts are stored;
- un référentiel des profils utilisateurs 14, où sont stockées les données des profils utilisateurs caractérisant l'identité des utilisateurs.a repository of the user profiles 14, where the data of the user profiles characterizing the identity of the users are stored.
L'ensemble des référentiels compose donc le référentiel utilisateur 30, ce dernier pouvant être conçu avec des bases de données ou avec des annuaires, du type LDAP par exemple. Ces référentiels sont décrits par la suite par des modèles de données qui décrivent les liens fonctionnels, les modes de stockage et les modes d'accès dans les espaces mémoire.The set of repositories thus composes the user repository 30, which can be designed with databases or with directories, of the LDAP type, for example. These repositories are described later by data models that describe the functional links, the storage modes and the access modes in the memory spaces.
Les figures 7a et 7b présentent des exemples de modèles de données, respectivement pour le référentiel des comptes et pour le référentiel d'authentification. Ces modèles ont la structure d'une table. La figure 7a présente des entités mises en jeu pour le référentiel des comptes. Le référentiel des comptes est par exemple composé d'une entité 70, qui se décline en une table, listant les identifiants 21 internes au système pour chaque compte ainsi qu'un état d'activité 71 et une description. Cette description est un champ libre qui peut indiquer notamment l'ordre d'entrée dans la base du compte. La valeur d'un identifiant 21 doit identifier d'une manière unique l'enregistrement de la table formant ce qu'il est convenu d'appeler une clé primaire PK. Une clé primaire est un champ ou un ensemble de champs permettant d'identifier de façon unique un enregistrement dans une table, en l'occurrence ici un compte. La figure 7b présente des entités mises en jeu pour le référentiel d'authentification. Le référentiel d'authentification est par exemple composé d'une entité 80 donnant le ou les login 72 pour chaque compte ainsi que d'autres données 73, notamment le secret d'authentification associé constitué par exemple d'un mot de passe. Le login 72 occupe une clé primaire PK. Les autres données sont identifiées par une clé étrangère FK1 qui pointe des clés primaires dans les autres tables. Cette clé étrangère FK1 est une clé de corrélation qui contribue par exemple à identifier une ligne en la liant à une colonne d'une autre table. Elle fait le lien entre la table du référentiel d'authentification et des tables des autres référentiels. Dans l'exemple de la figure 7b, le champ adressé par la clé étrangère FK1 pointe l'adresse de l'identifiant 21 du compte utilisateur. De façon générale, une clé étrangère adresse un champ ou un ensemble de champs dans une table représentant une relation entre celle-ci et la clé primaire d'une autre table.Figures 7a and 7b show examples of data models, respectively for the account repository and for the authentication repository. These models have the structure of a table. Figure 7a shows entities involved for the account repository. The account repository is for example composed of an entity 70, which is declined into a table, listing the identifiers 21 internal to the system for each account as well as a state of activity 71 and a description. This description is a free field that can indicate in particular the order of entry in the account's database. The value of an identifier 21 must uniquely identify the registration of the table forming what is known as a primary key PK. A primary key is a field or set of fields that uniquely identifies a record in a table, in this case an account. Figure 7b shows entities involved for the authentication repository. The authentication repository is for example composed of an entity 80 giving the login 72 for each account and other data 73, including the associated authentication secret consisting for example of a password. The login 72 occupies a PK primary key. The other data is identified by a foreign key FK1 that points to primary keys in the other tables. This foreign key FK1 is a correlation key which contributes, for example, to identifying a line by linking it to a column of another table. It is the link between the authentication repository table and tables of other repositories. In the example of FIG. 7b, the field addressed by the foreign key FK1 points to the address of the identifier 21 of the user account. In general, a foreign key addresses a field or a set of fields in a table representing a relationship between it and the primary key of another table.
Il est à noter que si le système est prévu pour ne permettre qu'un login par compte, il est naturel de fusionner les deux entités 70, 80 dans une même table à l'implémentation comme c'est le cas dans l'exemple de la table de la figure 2a. Cette table regroupe en effet le référentiel des comptes et le référentiel d'authentification.It should be noted that if the system is intended to allow only one login per account, it is natural to merge the two entities 70, 80 in the same table to the implementation as is the case in the example of the table of Figure 2a. This table includes the accounts repository and the authentication repository.
La figure 8 présente un modèle de données du référentiel de la gestion des accès. Elle présente les entités mettant en oeuvre le modèle de la figure 4b en relation notamment avec ce référentiel. Ces entités sont par exemple les tables suivantes :Figure 8 shows a data model of the Access Management repository. It presents the entities implementing the model of FIG. 4b in particular relation with this reference frame. These entities are for example the following tables:
- une table 81 décrivant les rôles définis pour le système, où la description de chaque rôle enregistré est associée à l'identifiant du rôle, cette entité forme le référentiel des rôles ; - une table 82 décrivant les ressources définies pour le système, où la description de chaque ressource enregistrée est associée à l'identifiant de la ressource ;a table 81 describing the roles defined for the system, where the description of each registered role is associated with the identifier of the role, this entity forms the repository of the roles; a table 82 describing the resources defined for the system, where the description of each registered resource is associated with the identifier of the resource;
- une table 83 répertoriant l'ensemble des permissions définies pour chaque rôle sur chaque ressource ;a table 83 listing the set of permissions defined for each role on each resource;
- une table 84 répertoriant l'ensemble des rôles 86 associés à chaque compte 85 de l'entité du référentiel des comptes.a table 84 listing all the roles 86 associated with each account 85 of the entity of the account repository.
La table 83 comporte donc des couples ressources-rôles associés chacun à une permission réalisant les associations 43, 44 du modèle de la figure 4b. Les identifiants des ressources et des rôles sont adressés par des clés étrangères FK1 , FK2 qui pointent les clés primaires des tables 81 , 82 décrivant les rôles et les ressources.The table 83 thus comprises resource-role pairs each associated with a permission realizing the associations 43, 44 of the model of FIG. 4b. The resource and role identifiers are addressed by foreign keys FK1, FK2 which point to the primary keys of the tables 81, 82 describing roles and resources.
Dans l'entité 84 les identifiants de comptes et les identifiant de rôles sont repérés par des clés étrangères FK1 , FK2 qui pointent l'une dans le référentiel des comptes et l'autre dans le référentiel des rôles du système 81. Les enregistrements de couples d'identifiants de comptes et d'identifiants de rôles décrivent l'ensemble des associations 45 du modèle 4b par exemple. Chaque enregistrement est repéré par un index.In the entity 84 the account identifiers and the role identifiers are identified by foreign keys FK1, FK2 which point one in the accounts repository and the other in the system roles repository 81. The couples records account identifiers and role identifiers describe the set of associations 45 of the model 4b for example. Each record is marked with an index.
La figure 9 rappelle un modèle de profil utilisateur selon l'art antérieur. Ce modèle est mis en œuvre par une table 91 qui peut être associés aux autres tables des autres référentiels 1 1 , 12, 13. L'identifiant du compte dans la table 91 pointe le référentiel des comptes utilisateurs pour faire le lien entre ce compte et les attributs. Il a été indiqué précédemment que les attributs 92 du profil utilisateur sont liés de façon rigide au compte utilisateur. Ainsi, pour un utilisateur identifié dans cette table 91 , si on veut centraliser le stockage des attributs du profil, on doit modéliser un profil où subsistent tous les attributs qui concernent toutes les applications qui utilisent le gestionnaire du système. Par ailleurs, si on veut faire évoluer le nombre d'attributs du profil utilisateur qu'utiliserait une application, on doit changer le modèle de données du profil utilisateur, ce qui implique une interruption de service.Figure 9 recalls a user profile model according to the prior art. This model is implemented by a table 91 which can be associated with the other tables of the other repositories 1 1, 12, 13. The account identifier in the table 91 points the repository of the user accounts to make the link between this account and attributes. It has been indicated previously that the attributes 92 of the user profile are rigidly related to the user account. Thus, for a user identified in this table 91, if one wants to centralize the storage of the attributes of the profile, one must model a profile where all the attributes that concern all the applications that use the system manager subsist. In addition, if we want to change the number of attributes of the user profile that an application would use, we must change the data model of the user profile, which implies an interruption of service.
La figure 10 présente les entités mises en jeu pour le référentiel des profils utilisateurs créés par le procédé selon l'invention. Elle illustre notamment un exemple de mise en œuvre du modèle illustré par la figure 3. Les entités composant le référentiel des profils utilisateur sont par exemple les tables suivantes :FIG. 10 shows the entities involved for the repository of the user profiles created by the method according to the invention. It illustrates, in particular, an example of the implementation of the model illustrated in FIG. components of the user profile repository are, for example, the following tables:
- une table 81 décrivant les rôles définis pour le système, par exemple du type de celle de la figure 8 utilisée pour le référentiel de la gestion des accès ;a table 81 describing the roles defined for the system, for example of the type of that of FIG. 8 used for the repository of access management;
- une table 101 décrivant les attributs des profils définis pour chaque rôle, les attributs ayant une valeur par défaut ;a table 101 describing the attributes of the profiles defined for each role, the attributes having a default value;
- une table 84 répertoriant l'ensemble des rôles associés à chaque compte du référentiel des comptes, du type de celui de la figure 8 ; - une table 102 répertoriant l'ensemble des attributs spécifiés, dans le sens défini ou initialisé, pour un utilisateur donné.a table 84 listing all the roles associated with each account of the account repository, of the type of that of FIG. 8; a table 102 listing the set of attributes specified, in the defined or initialized direction, for a given user.
Cette dernière table 102 indique pour chaque compte utilisateur l'ensemble des attributs spécifiés avec leur valeur pour ce compte. Ces valeurs d'attribut peuvent être spécifiées à l'initialisation ou en cours d'exploitation du système. Elles sont définies. Les attributs qui n'ont pas de sens pour ce compte, en regard des applications envisagées, ou dont on ne peut définir la valeur ne sont pas indiqués dans cette table 102. Au niveau de sa structure cela se traduit notamment pour chaque compte, par une association de l'identifiants du compte 21 avec les valeurs de ses attributs spécifiés. La table 101 décrivant les attributs indique la liste des attributs associés à chaque rôle. Ces associations sont modélisées dans la figure 3 par la relation 35 entre les attributs et les rôles. Dans cette table 101 , les attributs des listes ont une valeur par défaut 103. Le choix d'une valeur par défaut peut être arbitraire mais de préférence elle est choisie pour optimiser le stockage des données. Elle peut être ainsi choisie en fonction d'une pertinence statistique. Pour illustrer un tel choix on peut considérer comme exemple d'attribut une adresse postale d'une entreprise qui aurait un établissement principal et quelques bureaux annexes. Par défaut tous les attributs « adresse » auraient l'adresse de l'établissement principal, attribuant ainsi aux employés cette adresse par défaut dans la table 101.This last table 102 indicates for each user account the set of attributes specified with their value for this account. These attribute values can be specified when the system is initialized or running. They are defined. The attributes that have no meaning for this account, with regard to the applications envisaged, or whose value can not be defined, are not indicated in this table 102. In terms of its structure, this is reflected in particular for each account, by an association of the identifiers of the account 21 with the values of its specified attributes. Table 101 describing the attributes indicates the list of attributes associated with each role. These associations are modeled in Figure 3 by the relationship between attributes and roles. In this table 101, the attributes of the lists have a default value 103. The choice of a default value can be arbitrary but preferably it is chosen to optimize the storage of the data. It can thus be chosen according to a statistical relevance. To illustrate such a choice, we can consider as an example of an attribute a mailing address of a company which has a main establishment and some subsidiary offices. By default, all "address" attributes would have the address of the primary institution, giving employees that default address in table 101.
Dans la table 84, répertoriant l'ensemble des rôles associés à chaque compte du référentiel des comptes, les identifants des comptes et les identifiants des rôles sont repérés par des clés étrangères FK1 , FK2 qui pointent par exemple l'une le référentiel des comptes et l'autre la table 81 décrivant les rôles du système. Les enregistrements de couples d'identifiant de comptes et d'identifiant de rôles décrivent toutes les associations rôle- compte du système d'information, c'est-à-dire tous les rôles occupés par tous les utilisateurs. Elles sont modélisées dans la figure 3 par la relation 34 entre les comptes et les rôles. Chaque enregistrement est repéré par un index. Pour un utilisateur donné, la recomposition de son profil utilisateur peut alors s'effectuer selon les étapes suivantes :In the table 84, listing the set of roles associated with each account of the account repository, the account identifiers and the identifiers of the roles are identified by foreign keys FK1, FK2 which point for example one the repository accounts and the other table 81 describing the roles of the system. ID couples recordings Accounts and Role IDs describe all role-account associations of the information system, that is, all roles occupied by all users. They are modeled in Figure 3 by the relationship 34 between accounts and roles. Each record is marked with an index. For a given user, the recomposition of his user profile can then be carried out according to the following steps:
- récupérer l'identifiant de son compte par les tables des comptes et d'authentification, à partir du login par exemple ;- recover the identifier of his account by the tables of accounts and authentication, from the login for example;
- récupérer les attributs de profils spécifiés pour l'identifiant du compte à l'aide de la table d'association correspondante 102 ;recovering the profile attributes specified for the account identifier using the corresponding association table 102;
- récupérer tous les rôles cumulés par l'utilisateur, c'est-à-dire tous les rôles associés à l'identifiant à l'aide de la table d'association correspondante 84 ;recover all the roles accumulated by the user, that is to say all the roles associated with the identifier using the corresponding association table 84;
- pour chaque rôle, collecter tous les attributs associés avec leurs valeurs par défaut à l'aide de la table 101 décrivant les attributs associés aux rôles ;for each role, collect all attributes associated with their default values using table 101 describing the attributes associated with the roles;
- Pour chaque attribut collecté dans cette étape précédente, l'attribut prend la valeur spécifiée dans la table 102 de la deuxième étape si cette valeur existe dans cette table, sinon l'attribut prend la valeur par défaut indiquée dans la table 101 décrivant les attributs associés aux rôles.- For each attribute collected in this previous step, the attribute takes the value specified in the table 102 of the second step if this value exists in this table, otherwise the attribute takes the default value indicated in the table 101 describing the attributes associated with roles.
L'ensemble des valeurs d'attributs ainsi défini forme le profil de l'utilisateur. Ce profil est obtenu à partir des valeurs d'attributs spécifiés pour cet utilisateur et de valeurs par défaut communes dépendant des rôles de l'utilisateur. Pour chaque utilisateur il n'est donc plus nécessaire de stocker tous les attributs. En particulier on peut considérer à titre d'exemple un cas où certains attributs du profil utilisateur portent la même valeur sur une portion non négligeable de la population des utilisateurs inscrits. Par la souplesse de modélisation qu'elle implique, l'invention permet de ne mettre qu'une valeur par défaut pour tous ces utilisateurs et pour un rôle donné, au niveau de la table 101 associant les attributs au rôle. Dans un modèle selon l'art antérieur, les profils de tous les utilisateurs devraient stocker la valeur de ces attributs, d'où un gaspillage de l'espace de stockage. La table 81 décrivant les rôles définis pour le système, formant en fait le référentiel des rôles, n'intervient pas directement dans le processus de recomposition tel que décrit précédemment. En fait, il est fait référence à cette table 81 pour la définition des rôles à l'initialisation puis en cours d'exploitation du système pour prendre en compte par exemple les nouveaux utilisateurs ou les utilisateurs qui changent de rôles ou pour rajouter des nouveaux rôles requis pour les évolutions des applications du système d'information.The set of attribute values thus defined forms the profile of the user. This profile is obtained from the attribute values specified for this user and common default values that depend on the user's roles. For each user, it is no longer necessary to store all the attributes. In particular, we can consider as an example a case where certain attributes of the user profile carry the same value over a non-negligible portion of the population of registered users. By the modeling flexibility that it implies, the invention makes it possible to set only one default value for all these users and for a given role, at the level of the table 101 associating the attributes with the role. In a model according to the prior art, the profiles of all users should store the value of these attributes, resulting in a waste of storage space. Table 81 describing the roles defined for the system, actually forming the role repository, does not intervene directly in the process of recomposition as described above. In fact, reference is made to this table 81 for the definition of roles at initialization and then during system operation to take into account, for example, new users or users who change roles or to add new roles. required for the evolutions of the applications of the information system.
La figure 1 1 présente une structure de référentiel qui intègre les tables des figures 8 et 10 mettant en œuvre le modèle de la figure 5. Ces tables sont complétées par le référentiel de comptes 70 et le référentiel d'authentification 80 pour former un ensemble de référentiels tels qu'illustré par la figure 6 et utilisé dans un système de gestion des identités et du contrôle d'accès. Dans ce mode de réalisation, les référentiels de gestion d'accès et des profils utilisateurs sont imbriqués. Le référentiel des profils utilisateurs est composé de l'ensemble 1 10 des tables de la figure 10. Le référentiel de la gestion d'accès est composé de l'ensemble 1 11 des tables de la figure 8. La table 81 formant le référentiel des rôles et la table 84 d'association des rôles aux comptes sont communes aux deux ensembles 110, 1 11. Les tables 80, 84, 102 qui comportent les identifiants des comptes pointent le référentiel des comptes 70.FIG. 11 presents a repository structure that integrates the tables of FIGS. 8 and 10 implementing the model of FIG. 5. These tables are supplemented by the account repository 70 and the authentication repository 80 to form a set of repositories as shown in Figure 6 and used in an identity management system and access control. In this embodiment, access management repositories and user profiles are nested. The repository of the user profiles is composed of the set 1 10 of the tables of FIG. 10. The repository of the access management is composed of the set 11 of the tables of FIG. 8. The table 81 forming the repository of the Roles and the account role association table 84 are common to both sets 110, 11. The tables 80, 84, 102 that include the account identifiers point to the account repository 70.
La figure 6 présente un système de gestion d'identité et de contrôle d'accès. Il est néanmoins possible de réaliser un système selon l'invention qui ne comporte qu'un système de gestion de l'identité numérique des utilisateurs. Dans ce cas le module de contrôle d'accès 20 réalise par exemple simplement la fonction de gestion d'identité. De même le module 30 des référentiels peut ne pas comporter la partie de profil correspondant au contrôle d'accès à des applications ou à des ressources. La gestion d'identité est réalisée en fonction des données disponibles dans le référentiel. L'invention permet avantageusement d'obtenir une souplesse d'évolution d'un profil utilisateur. Elle permet la suppression de stockage redondant ou superflu d'attributs et donc un gain en espace mémoire et en temps d'accès mémoire. Elle permet aussi de faire évoluer le nombre d'attributs d'un profil sans changer la structure du système, ce qui implique des économies de maintenance. La figure 12 illustre un exemple d'application de l'invention. Jérôme Dupont est le manager des administrateurs de l'Intranet d'une organisation donnée. Les managers de cette organisation ont le privilège d'avoir une place de parking réservée. Lorsque Jérôme Dupont accède au portail Internet de son entreprise, il utilise un compte 33 dont le login est « jdupont ». Ce compte est associé à trois rôles 32 qui sont les suivants :Figure 6 shows an identity management and access control system. It is nevertheless possible to produce a system according to the invention which comprises only a system for managing the digital identity of the users. In this case the access control module 20 for example simply performs the identity management function. Similarly, the module 30 of the repositories may not include the profile portion corresponding to the access control to applications or resources. Identity management is performed based on the data available in the repository. The invention advantageously allows to obtain a flexibility of evolution of a user profile. It allows the suppression of redundant or superfluous storage of attributes and thus a gain in memory space and memory access time. It also makes it possible to change the number of attributes of a profile without changing the structure of the system, which implies maintenance savings. Figure 12 illustrates an example of application of the invention. Jérôme Dupont is the administrator manager of the Intranet of a given organization. The managers of this organization have the privilege of having a reserved parking space. When Jérôme Dupont accesses the Internet portal of his company, he uses an account 33 whose login is "jdupont". This account is associated with three roles 32 that are:
- un rôle standard « Défaut », qui est rôle par défaut ;- a standard role "Default", which is role by default;
- un rôle « Portail Admin. » qui est le rôle des administrateurs système de l'Intranet ; - un rôle « Manager », qui est le rôle de manager dans cette organisation. Par le rôle « Défaut » :- a role "Admin Portal. What is the role of Intranet system administrators? - a "Manager" role, which is the role of manager in this organization. By the role "Default":
- le profil utilisateur 31 contient les attributs communs à tous les collaborateurs de l'organisation, par exemple le nom, le prénom, la date de naissance ..., le rôle « Défaut » étant associé à ces attributs communs ;the user profile 31 contains the attributes common to all the collaborators of the organization, for example the surname, the first name, the date of birth ..., the "Default" role being associated with these common attributes;
- le profil défini par le référentiel d'accès gagne les permissions permettant d'accéder à l'Intranet de l'organisation, sous le contrôle d'une permission 42 donnant l'accès à la ressource 41 : l'application Intranet.- The profile defined by the access repository gains permissions to access the Intranet of the organization, under the control of a permission 42 giving access to the resource 41: the Intranet application.
Par le rôle « Portail Admin. » :By the role "Admin. »:
- le profil utilisateur n'est enrichi d'aucun attribut, le rôle « Portail Admin. » n'étant lié à aucun attribut ;- the user profile is not enriched with any attribute, the role "Admin Portal. "Not related to any attribute;
- le profil d'accès gagne les permissions permettant d'accéder à l'application d'administration 41 pour gérer notamment les comptes des autres collaborateurs. Par le rôle « Manager » :the access profile gains the permissions enabling access to the administration application 41 to manage in particular the accounts of the other collaborators. By the role "Manager":
- le profil utilisateur 31 se voit rajouté un attribut dont le nom est « ParkingNumber » et dont la valeur est, par exemple, 32 ; - le profil d'accès gagne les permissions d'accéder à l'application de gestion électronique des documents qui contient par exemple des données sensibles. - The user profile 31 is added an attribute whose name is "ParkingNumber" and whose value is, for example, 32; the access profile gains the permissions to access the electronic document management application which contains, for example, sensitive data.

Claims

REVENDICATIONS
1 . Procédé de création d'au moins un profil utilisateur dans un système d'information, le profil comportant un ensemble d'attributs caractérisant l'identité numérique d'au moins un utilisateur (2), caractérisé en ce que, des attributs étant associés à des rôles (32) définis dans le système d'information, et au moins un desdits rôles étant attribué audit utilisateur, le profil est obtenu par assemblage (34) et stockage des attributs associés aux rôles attribués audit utilisateur (2).1. A method of creating at least one user profile in an information system, the profile comprising a set of attributes characterizing the digital identity of at least one user (2), characterized in that, attributes being associated with roles (32) defined in the information system, and at least one of said roles being assigned to said user, the profile is obtained by assembling (34) and storing the attributes associated with the roles assigned to said user (2).
2. Procédé selon la revendication 1 , caractérisé en ce que les attributs associés aux rôles (32) ayant des valeurs par défaut, les attributs dudit profil prennent ces valeurs par défaut lorsqu'ils n'ont pas de valeur spécifiée.2. Method according to claim 1, characterized in that the attributes associated with the roles (32) having default values, the attributes of said profile take these default values when they have no specified value.
3. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'un rôle par défaut est attribué audit utilisateur (2), les attributs communs à tous les utilisateurs étant associés à ce rôle par défaut.3. Method according to any one of the preceding claims, characterized in that a default role is assigned to said user (2), the attributes common to all users being associated with this role by default.
4. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'identité numérique de l'utilisateur (2) étant associée à un compte (33), le procédé comporte pour ledit compte (33) :4. Method according to any one of the preceding claims, characterized in that the digital identity of the user (2) being associated with an account (33), the method comprises for said account (33):
- une étape de récupération des attributs ayant une valeur spécifiée pour le compte (33) ;a step of recovering the attributes having a value specified for the account (33);
- une étape de récupération des rôles (32) associés à ce compte (33) ;a step of recovering the roles (32) associated with this account (33);
- une étape de collecte des attributs associés à ces rôles (32) avec leurs valeurs par défaut ; le profil utilisateur étant obtenu en prenant pour chaque attribut sa valeur par défaut s'il n'est pas spécifié, la valeur spécifiée étant conservée dans les autres cas.a step of collecting the attributes associated with these roles (32) with their default values; the user profile is obtained by taking for each attribute its default value if it is not specified, the specified value being kept in the other cases.
5. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il complète le profil utilisateur par un profil d'accès à au moins une ressource (1 ), au moins un rôle (32) étant associé à une permission (42) autorisant l'accès à ladite ressource (1 ), les utilisateurs autorisés à accéder à ladite ressource (1 ) du système d'information étant identifiés par les rôles qui leur sont attribués.5. Method according to any one of the preceding claims, characterized in that it completes the user profile by an access profile to at least one resource (1), at least one role (32) being associated with a permission ( 42) allowing access to said resource (1), the users authorized to access said resource (1) of the information system being identified by the roles assigned to them.
6. Système de gestion de l'identité numérique d'au moins un utilisateur (2) dans un système d'information, caractérisé en ce qu'il comporte au moins :6. System for managing the digital identity of at least one user (2) in an information system, characterized in that it comprises at least:
- un module de gestion d'identité numérique (20) ;a digital identity management module (20);
- un module (30) décrivant au moins un profil utilisateur, la gestion d'identité étant réalisée en fonction de données dudit profil, ledit profil comportant un ensemble d'attributs caractérisant l'identité numérique dudit utilisateur (2), ledit module (30) comportant au moins : une entité (101 ) décrivant des attributs associés à des rôles (32) définis dans ledit système d'information ; une entité (84) répertoriant les rôles (32) attribués à l'utilisateur (2);a module (30) describing at least one user profile, the identity management being carried out as a function of data of said profile, said profile comprising a set of attributes characterizing the digital identity of said user (2), said module (30); ) comprising at least: an entity (101) describing attributes associated with roles (32) defined in said information system; an entity (84) listing the roles (32) assigned to the user (2);
- un profil utilisateur étant obtenu par l'assemblage (34) des attributs associés aux rôles attribués à l'utilisateur (2).a user profile being obtained by assembling (34) attributes associated with the roles assigned to the user (2).
7. Système selon la revendication 6, caractérisé en ce que le module (30) décrivant ledit profil utilisateur comporte une entité (102) répertoriant l'ensemble d'attributs spécifiés pour les utilisateurs, les attributs associés aux rôles ayant des valeurs par défaut, et les attributs dudit profil obtenu prennent ces valeurs par défaut lorsqu'ils n'ont pas de valeur spécifiée.7. System according to claim 6, characterized in that the module (30) describing said user profile comprises an entity (102) listing the set of attributes specified for the users, the attributes associated with the roles having default values, and the attributes of said obtained profile take these default values when they do not have a specified value.
8. Système selon l'une quelconque des revendications 6 ou 7, caractérisé en ce que le module de gestion d'identité numérique (20) effectue en outre un contrôle d'accès à au moins une ressource (1 ), le module (30) décrivant les profils utilisateur comportant :8. System according to any one of claims 6 or 7, characterized in that the digital identity management module (20) further performs access control to at least one resource (1), the module (30) ) describing user profiles that include:
- une entité (82) décrivant les ressources définies pour le système ;an entity (82) describing the resources defined for the system;
- une table (83) répertoriant l'ensemble des permissions définies pour les rôles sur ladite ressource (1 ); les utilisateurs autorisés à accéder à une ressource (1 ) du système d'information étant identifiés par les rôles qui leur sont attribués.a table (83) listing the set of permissions defined for the roles on said resource (1); the users authorized to access a resource (1) of the information system being identified by the roles assigned to them.
9. Programme d'ordinateur comprenant des instructions de code de programme pour l'exécution du procédé selon les revendications 1 - 5 lorsque ledit programme est exécuté sur un ordinateur. A computer program comprising program code instructions for executing the method according to claims 1 - 5 when said program is run on a computer.
10. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution du procédé selon les revendications 1 - 5. A computer readable recording medium on which a computer program is recorded including program code instructions for executing the method according to claims 1 - 5.
PCT/FR2006/051379 2005-12-22 2006-12-19 Method for forming a user profile in an information system and a system for managing digital identities WO2007074284A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0554053 2005-12-22
FR0554053 2005-12-22

Publications (2)

Publication Number Publication Date
WO2007074284A2 true WO2007074284A2 (en) 2007-07-05
WO2007074284A3 WO2007074284A3 (en) 2007-08-16

Family

ID=36678369

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2006/051379 WO2007074284A2 (en) 2005-12-22 2006-12-19 Method for forming a user profile in an information system and a system for managing digital identities

Country Status (1)

Country Link
WO (1) WO2007074284A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008083488A1 (en) * 2007-01-11 2008-07-17 Sxip Identity Corp. Method and system for indicating a form mapping

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003009191A2 (en) * 2001-07-20 2003-01-30 British Telecommunications Public Limited Company Storing and accessing profile information
US20050044423A1 (en) * 1999-11-12 2005-02-24 Mellmer Joseph Andrew Managing digital identity information
WO2005032029A2 (en) * 2003-09-26 2005-04-07 Probaris Technologies, Inc. Electronic form routing and data capture system and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050044423A1 (en) * 1999-11-12 2005-02-24 Mellmer Joseph Andrew Managing digital identity information
WO2003009191A2 (en) * 2001-07-20 2003-01-30 British Telecommunications Public Limited Company Storing and accessing profile information
WO2005032029A2 (en) * 2003-09-26 2005-04-07 Probaris Technologies, Inc. Electronic form routing and data capture system and method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ELEFTHERIADIS G P ET AL: "USER PROFILE IDENTIFICATION IN FUTURE MOBILE TELECOMMUNICATIONS SYSTEMS" IEEE NETWORK, IEEE SERVICE CENTER, NEW YORK, NY, US, vol. 8, no. 5, 1 septembre 1994 (1994-09-01), pages 33-39, XP000606584 ISSN: 0890-8044 *
KANNAPPAN LENA: "Digital Identity Management : Emerging Standards and Industry Initiatives" FRANCE TELECOM R&D PRESENTATION, [Online] 11 février 2003 (2003-02-11), pages 1-28, XP002400217 SAN FRANCISCO Extrait de l'Internet: URL:http://www.it.lut.fi/kurssit/03-04/010 635000/luennot/6-Tmt-ek-2004-IdMgmt-emergi ng-stds.pdf> [extrait le 2006-09-15] *
PONISZEWSKA-MARANDA A: "Role engineering of information system using extended RBAC model" ENABLING TECHNOLOGIES: INFRASTRUCTURE FOR COLLABORATIVE ENTERPRISE, 14TH IEEE INTERNATIONAL WORKSHOPS ON LINKOPING, SWEDEN 13-15 JUNE 2005, PISCATAWAY, NJ, USA,IEEE, 13 juin 2005 (2005-06-13), pages 154-159, XP010870903 ISBN: 0-7695-2362-5 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008083488A1 (en) * 2007-01-11 2008-07-17 Sxip Identity Corp. Method and system for indicating a form mapping

Also Published As

Publication number Publication date
WO2007074284A3 (en) 2007-08-16

Similar Documents

Publication Publication Date Title
US8245051B2 (en) Extensible account authentication system
US10454786B2 (en) Multi-party updates to distributed systems
US20130055367A1 (en) Multi-Factor Profile and Security Fingerprint Analysis
FR2851866A1 (en) Peer/peer communications network digital image file allocation having pair groups separating digital words with service allocation selection following function connection value
EP1704700B1 (en) Method and system for operating a computer network which is intended for content publishing
FR2780529A1 (en) METHOD FOR OPTIMIZING ACCESS TO A DATABASE
WO2020075153A1 (en) System and method for multiple identification using smart contracts on blockchains
EP2360889B1 (en) Creation and use of a telecommunication link between two users of a telecommunication network
WO2014043360A1 (en) Multi-factor profile and security fingerprint analysis
WO2007074284A2 (en) Method for forming a user profile in an information system and a system for managing digital identities
CA2694335C (en) Management and sharing of dematerialised safes
EP2979435B1 (en) Method for processing data of a social network user
EP3903210A1 (en) Secure, tracked communication network
FR2858500A1 (en) METHOD AND DEVICE FOR CONFIGURABLE MANAGEMENT OF DATA PERSISTENCE OF COMMUNICATIONS NETWORK EQUIPMENT
EP1569489B1 (en) Method for automatic generation of telecommunication terminal active profiles
US20040088365A1 (en) Service information model mapping with shared directory tree representations
CN113268490B (en) Account book processing method, device, equipment and storage medium based on intelligent contract
US20230247018A1 (en) System and method for secure electronic document exchange and execution of contracts via a secure electronic platform with biometric access verification
WO2022184726A1 (en) Method for enabling users to deploy smart contracts in a blockchain using a deployment platform
Cordasco github3. py Documentation
WO2009118477A2 (en) Indirect address service for connecting to wide area network
FR3114714A1 (en) A method of accessing a set of user data.
Toelen Identity and access management
US7890575B1 (en) Dynamic persistent user management in delegated environments
FR2936628A1 (en) COMPUTER NETWORK PLATFORM

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06847169

Country of ref document: EP

Kind code of ref document: A2