RBAC Structural and Functional Roles
HL7 Role-based Access Control (RBAC) Role Engineering Process
3.1 Role Types There are two types of high-level healthcare role models: Functional and Structural. Functional Roles consist of all the permissions (operations on health information system objects) needed to perform a task. Functional role names are associated with groups of permissions for convenience in assigning to users. A user may be assigned one or more functional roles, and thereby be assigned all of the permissions associated with a corresponding set of healthcare tasks (healthcare workflow). Permissions will ultimately be used to set the system operations (create, read, update, delete, execute, etc.) for data and software applications. Functional roles may be found as entries in a user attribute certificate or stored in a distributed authorization directory.
Structural Roles place people in the organizational hierarchy as belonging to categories of healthcare personnel warranting differing levels of access control.1 Structural roles allow users to participate in the organization’s workflow (e.g., tasks) by job, title, or position, but do not specify detailed permissions on specific information objects. Structural roles allow a user to “connect” to a resource, but do not grant authorizations. Some structural role examples include: Physician, Pharmacist, Registered Nurse Supervisor, and Ward Clerk. Structural role names may be found as non-critical certificate extensions entries to an X.509 certificate as specified in ASTM 2212-00. Structural roles define what specific healthcare workflows users are allowed to participate in while functional roles define authorizations granted to entities to allow access to protected health information.
4.2.2.1 Roadmap Columns
Structural roles can be viewed as a precursor role that gives a person access to a "session" or “connection.” Structural roles allow a user possessing that role to participate in a work profile. HL7 has chosen to use ASTM 1986 Healthcare Personnel that Warrant Differing Levels of Access Control as the definition of structural role names used in the roadmap. The entities placed in the column headings of the roadmap are structural role names. Functional roles reflect the essential business functions that need to be performed. They are closely related to Work Profiles in the Scenario model. Functional roles define what an actor can do once connected to a protected resource. The roadmap does not define functional roles; however, analysis of the roadmap-derived scenarios will lead to defined permissions that can be used to create functional roles.