How-to-guides
Updated:
August 14, 2024

Curriculum: user management and authorisation

Access to TE Curriculum is restricted to authorized users that have assigned roles. Roles are used to define the permitted functions a user can execute. This guide will provide the insight in user definition and management and defining roles and permission.

User management

User management is available via the menu Administration -> People  and is used to manage the users who should have access to the system.

In a standard setup the Users are provisioned using the standard Curriculum API.
In case users are not yet provisioned they can be imported by CSV or defined and maintained manually.

The user management will show a list of all defined users.

The user overview allows for managing the user details

Using the quick search, the switch between active, inactive and all or the specific filter options, the list can be adjusted.

Different options are supported to search / filter the user list

Supported filter criteria are:

  • Role - system role the user has (User, Client, Administrator, System administrator)
  • Related as - the user has the selected relation type with any educational object
  • Has external ID - the user has a defined external ID
  • Ignore - the users is marked as ignore, which is used to not show the user in user lists in Curriculum to standard users
  • Password filled - the password field is set, which allows the user to login on test/acceptance via the internal login

Users can be created (New button) or modified (Edit button). Click on the record to view the User details.
The ->[Login] button allows the administrator to 'login as ...' the selected user.
Users are not deleted, instead a 'soft delete' is executed by setting the end date to keep correct historic data and audit trails.

Users can be defined/managed manually by the administrator (or provisioned via the API)

The User definition consists of the following attributes

  • External Id - Unique institution SSO login for the user, used both for login by the user and exchanging information (provisioning and defining relations in academic structure)
  • Code - Additional option to store a unique identifier for the user that can be used in exchanging information
  • Personal nr. - Optional field that can be used to store specific personnel related data (personnel number)
  • Full name - Full (display) name of the user (required)
  • First name - First name of the user (optional)
  • Last name prefix - Last name prefix (optional)
  • Last name - Last name of the user (optional)
  • Email - The email address of the user, used for sending notifications
  • Photo URL - URL to an image file, to allow for displaying an avatar for the user
  • Ignore - Indicator if this user is ignored in allocating users to a role in the curriculum. Used to 'exclude' administrators in user search.
  • Simulation - Indicator if the user is allowed to use the Simulation option. Simulation can be defined on User group level and on individual users.
  • Role - The system role for this user that defines the global role and rights. The detailed (context related) rights are defined by relations of persons to the various objects, e.g. study manager, module coordinator.
    The system roles are:
    - Administrator: Administrative rights
    - API: Specific role for API access
    - User: Default role, used for all users except administrators.
    - System administrator: Administrative rights, with some additional functions on technical configuration level. Mainly used by TimeEdit support staff.
  • Password - Optional password. In case the system is using the institution SSO, the password will not be used.
    In case the system uses the Curriculum as the User and Authentication store the password is required and will be used to authenticate login.
  • Start date - Contract start datum
  • End date - Contract enddate
    The screenshot with the user list shows a user with an end date that is passed marked in red with strike-through. The user is still available in historic years prior to the end date, but will no longer have access or be available for selection as lecturer (or another role) after the end date has passed.

Extend users with additional fields

Just like other objects in Curriculum, there is the option to extend the User definition by adding custom-fields to the Additional sub-object. This option is in general explained in the guide on extending Curriculum.

The extension of the User object can be used to add user specific information that can be used to report on. For instance the education qualification(s) a user has, or areas of expertise, internal / external staff member, etc.

There is a strict separation of the management of users and configuration of the additional fields (admin task) and the entering of data and reporting on the user added fields. From the administrator menu the admin cannot fill the additional fields, since they are / should be owned by the business.

Of course the admin can be of help by using CSV to import values for the different person added fields.

The users will have access (based on authorisation) to the person report showing all persons in their context (e.g. system, faculty) and are able to report and manage the information shown from the report. Next to the added fields, there is a limited set of the standard user-information available in the report, e.g. externalId and name.

Configure roles

The system roles are used to define your basic access rights to the system. The actual permissions are defined using the context based roles (relations). Relations are used to authorise users based on their role in the academic structure and relation to an object in that structure.

E.g. When John Doe gets assigned the role “module coordinator” of a certain module, a relation is established between John Doe and this specific module. This relation grants John Doe access to that specific module with the permission scheme of the role 'module coordinator'. Other modules may be accessible by the permission scheme assigned to the system role user, but these will be limited to read-only and not provide the same permissions as for the module assigned as module coordinator.

The context based roles (relation types) used in the academic structure can be defined and via the Relation type menu-item.

Context based roles can be managed via the relation type menu

The relation type menu allows for the definition of context based roles, but also allows for the definition of 'assignment' roles to assign HR roles to a person that are used in the workforce planning module. E.g. a person with an HR role of researcher will standard have a division of 80% research and 20% education.

Relation types can be managed using the Add, Edit (select) and Delete buttons.

The definition of a relation type offers extensive configuration options

The configuration of a relation type supports the following attributes:

  • Object type - The object type defines for which object the relation are defined. For all objects the relations defined can be assigned rights on the object with the exception of the object type assignment which is used for resource planning and management.

    Supported options are:
    - Assessment
    - Assignment: Used to allocate persons with an assignment to an organisation unit. The assignment can be used in resource and staffing management and allows for the definition of rules based on the relation. E.g. a researcher has 40% lecture time, a lecturer has 100% lecture time.FacultyInstitutionMethodModuleModule groupOrganisationPersonsProgramme (CROHO programme for the Netherlands)StudyQualificationAssessment
    - Faculty
    - Institution
    - Method
    - Module
    - Module group
    - Organisation
    - Persons
    - Specification
    - Study
    - Qualification
  • External ID - Unique ID used for integration with external systems
  • Code - Internal code, used for display purposes
  • Name - The descriptive text for the relation type used for display purposes
  • Condition -Limit the visibility of the relation type using an, e.g. :(module)typeId = 'MOOC' and not(:faculty in ('SCIENCE')) will only show the relation type in case the module type is MOOC and not in the Science faculty.
  • Allocation type - Specify the allocation type that will be used in the resource and planning calculation of hours required
    • Assigned to a fixed amount of hours: the person assigned requires a fixed amount of hours to fulfil the task, e.g. module coordinator task is 80 hours per semester
    • Assigned for a percentage: the person assigned requires a percentage of the calculated hours for the complete task, e.g. the lecturer delivers 50% of the teaching hours calculated (lecture, workgroup, ...)
    • Assigned for a fixed amount of students: the person assigned requires a fixed amount of hours per student to fulfil the task, e.g. a paper reader requires 6 hours per paper/students
  • Persons - Indicator if the relation defined can be assigned a user
  • Groups - indicator if the relation defined can be assigned a group/team
  • Provides education - indicator if the relation is considered to provide education. Users with a role marked as provides education will be calculated as sucht in the workload management formulas, and will allow the user to be assigned to individual activities defining the schedule preferences
  • Ignore - indicator if the relation should be ignored
  • Selectable in report -indicator if the relation is selectable in the list reports (that allow selection of additional fields and export of date)
  • Visible in report - indicator if the relation is default selected in the list reports (that allow selection of additional fields and export of date)
  • Default start date - indicator if on adding a user to a role a default start date (start of academic year) is used
  • Minimum - defines the minimum number of required relations for this type.Is used for validation / information on 'incorrect defined relationships'
  • Maximum - defines the maximum number of required relations for this type.Is used for validation / information on 'incorrect defined relationships'
  • Sequence -The order the list of relations is offered to the user in the user interface
  • When maximum gets exceeded - Action to be performed in case the maximum gets exceeded. Options supported:
    • Only show a warning: Show warning, allow save and proceed
    • Disallows saving the relation: Show an error, user has to modify in order to save and proceed
  • Start date - date from which the relation is available in the user interface.
  • End date - date till which the relation was or will be available in the user interface
  • Show budget on Dashboard - show budget information for this role on the dashboard (in case the budget functionality is selected)

Configure permission schemes for the defined roles

Access to functionality in Curriculum can be modified via the Access rules menu-option. Selecting this menu-item shows an overview of all defined roles and relations and allows for the configuration of the permission scheme for the roles.

Manage the permission scheme for each of the defined context based roles (relation types)

The permission scheme manager shows the defined context based roles on the left. Just select the role to manage the permission scheme.
Selection of multiple roles simultaneously is supported, to allow for comparing and modifying multiple roles at the same time.

Permissions can be assigned without restriction or with restriction. The screenshot shows a green checkbox which indicates the defined permission is without restrictions, where the orange checkbox indicates the assigned permission is restricted.

Restrictions can be assigned with or without restrictions

The above detailed configuration of the rules is accessible via the 'pencil-button' next to the selected role. In case the permission is with restriction additional information is shown in the columns Restricted to, And similar in and Condition.

Selecting the assigned permission will open the configuration to define the restrictions:

  • Operation - The permission that must be added/modified to the add a restriction.
  • Restricted to - Specify to which object type the right is restricted. In case no object type is specified the right is allowed to all object types.
    For example, if the right 'view descriptions' is allowed without restriction this means that the person is allowed to see descriptions for study, module group, module, etc.
  • And similar in - This rule is used to set this rule within a specific context. Mostly used is Year, to set this rule within the context of an academic year
  • Condition - Limit the permission based on a condition, e.g only allow this permission if the module is of type MOOC via :module(typeId) = 'MOOC'
  • Process - Limit the permission to a specific status in the process. This allows for allowing the module coordinator edit rights on a module and restrict it to the 'maintain' phase, and deny this permission once the module is in another status.
  • When in status - Specifies the status in the process the permission is granted.

Supported permissions

Permissions can be defined assigning permissions to a role (relation type). Supported permissions are grouped into four categories.

View permissions

The view permissions are used to define the rights for users to view specific information, for instance to allow view rights to module uploaded documents and not allow view rights to cost of module information.

Supported view permissions are:

VIEW
VIEW_ACCESS_RULES
VIEW_ADDITIONAL
VIEW_ADVICE
VIEW_APPRAISALS
VIEW_ASSESSMENTS
VIEW_ASSETS
VIEW_ASSIGNMENTS
VIEW_AVAILABILITY
VIEW_CAPACITY
VIEW_CHANGE
VIEW_COST
VIEW_COST_DIVISION
VIEW_CREDITS
VIEW_DESCRIPTIONS
VIEW_DOCUMENT
VIEW_EFFORTS
VIEW_EFFORTS_CORRECTION
VIEW_EVALUATION
VIEW_FEEDBACK
VIEW_GROUPS
VIEW_HOURS_MODULE_REPORT
VIEW_HOURS_PERSON_REPORT
VIEW_ITEMS
VIEW_LINKS
VIEW_MESSAGES
VIEW_METHODS
VIEW_MODULES
VIEW_NOTES
VIEW_OBJECTIVES
VIEW_OFFERINGS
VIEW_ORGANISATIONS
VIEW_SPECIFICATIONS
VIEW_PERSONS
VIEW_QUALIFICATIONS
VIEW_RELATIONS
VIEW_RESOURCES
VIEW_SCHEDULE
VIEW_STRUCTURE
VIEW_STUDIES
VIEW_STUDYABLE
VIEW_SUBJECTS
VIEW_SUBJECTS_REPORT
VIEW_TASKS
VIEW_TASKS_PERSONAL
VIEW_TASKS_CORRECTION
VIEW_WORKLOG
VIEW_REPORT
VIEW_SCHEDULE_ACTIVITIES
VIEW_SCHEDULE_PROGRESS
VIEW_PROCESS_PROGRESS
VIEW_CHANGE_REPORT_TEMPLATES
VIEW_PROCESS_MANAGEMENT
VIEW_SCHEDULE_PREFERENCE_REPORT
VIEW_MODULE_PREVIEW
VIEW_CUSTOM_01
VIEW_CUSTOM_02
VIEW_CUSTOM_03
VIEW_CUSTOM_04
VIEW_CUSTOM_05
VIEW_CUSTOM_06
VIEW_CUSTOM_07
VIEW_CUSTOM_08
VIEW_CUSTOM_09
VIEW_CUSTOM_10

The VIEW_CUSTOM permissions can be used freely by the administrator to define own rules that can be used for specific restrictions.

Edit in workflow permissions

The edit in workflow permissions are used to define the rights for users to edit specific information in a workflow. Similar edit permissions are provided to set permissions for edit outside the workflow (in the tabular view). This allows for restricting users edit right only to workflow and not in tabular view.

Supported edit in workflow permissions are:

EDIT_ADVICE_WORKFLOW
EDIT_WORKFLOW
EDIT_MODULE_WORKFLOW
EDIT_ADDITIONAL_WORKFLOW
EDIT_APPRAISALS_WORKFLOW
EDIT_ASSESSMENTS_WORKFLOW
EDIT_ASSETS_WORKFLOW
EDIT_ASSIGNMENTS_WORKFLOW
EDIT_CAPACITY_WORKFLOW
EDIT_CREDITS_WORKFLOW
EDIT_COST_WORKFLOW
EDIT_COST_DIVISION_WORKFLOW
EDIT_DESCRIPTIONS_WORKFLOW
EDIT_DOCUMENT_WORKFLOW
EDIT_EFFORTS_WORKFLOW
EDIT_ITEMS_WORKFLOW
EDIT_LINKS_WORKFLOW
EDIT_METHODS_WORKFLOW
EDIT_METHODS_EXTRA_WORKFLOW
EDIT_MODULE_GROUP_MODULE_WORKFLOW
EDIT_MODULE_GROUP_MODULE_GROUP_WORKFLOW
EDIT_NOTES_WORKFLOW
EDIT_OBJECTIVES_WORKFLOW
EDIT_OFFERINGS_WORKFLOW
EDIT_RELATIONS_WORKFLOW
EDIT_RESOURCES_WORKFLOW
EDIT_SCHEDULE_WORKFLOW
EDIT_SCHEDULE_PREFERENCE_WORKFLOW
EDIT_STRUCTURE_WORKFLOW
EDIT_STUDY_MODULE_GROUP_WORKFLOW
EDIT_SUBJECTS_WORKFLOW
EDIT_TASKS_WORKFLOW
EDIT_WORKLOG_WORKFLOW

Edit (outside workflow) permissions

The edit permissions are used to define the rights for users to edit specific information outside a workflow (in the tabular view). Similar edit permissions are provided to set permissions for edit via the workflow. This allows for restricting users edit right only to workflow and not in tabular view.

Supported edit permissions are:

EDIT
EDIT_MODULE
EDIT_ADDITIONAL
EDIT_ADDITIONAL_FUNDING
EDIT_ADVICE
EDIT_APPRAISALS
EDIT_ASSESSMENTS
EDIT_ASSETS
EDIT_ASSIGNMENTS
EDIT_CAPACITY
EDIT_CREDITS
EDIT_CODE
EDIT_COST
EDIT_COST_DIVISION
EDIT_DESCRIPTIONS
EDIT_DESCRIPTIONS_EXTRA
EDIT_DOCUMENT
EDIT_EFFORTS
EDIT_EXTERNAL_ID
EDIT_ITEMS
EDIT_LINKS
EDIT_METHODS
EDIT_METHODS_EXTRA
EDIT_MODULE_GROUP_MODULE
EDIT_MODULE_GROUP_MODULE_GROUP
EDIT_NOTES
EDIT_OBJECTIVES
EDIT_OFFERINGS
EDIT_RELATIONS
EDIT_RELATIONS_DATE
EDIT_RESOURCES
EDIT_SCHEDULE
EDIT_SCHEDULE_PREFERENCE
EDIT_STRUCTURE
EDIT_STUDY_MODULE_GROUP
EDIT_SUBJECTS
EDIT_SUBJECT_TYPES
EDIT_TASKS
EDIT_VACANCIES
EDIT_WORKLOG

Custom permissions

The custom permissions can be used freely by the administrator to define own rules that can be used for specific restrictions.
The administrator can rename the custom specification to a more 'meaningful' name in context of the setup.

Supported custom permissions are:

OPERATION_01
OPERATION_02
OPERATION_03
OPERATION_04
OPERATION_05
OPERATION_06
OPERATION_07
OPERATION_08
OPERATION_09
OPERATION_10

Other (generic) permissions

The other (generic) permissions are used to define the rights for users to specific functions in the system.

Supported other (generic) permissions are:

DOWNLOAD_OER
CREATE
CREATE_ASSESSMENT
CREATE_GROUP
CREATE_MODULE
CREATE_ORGANISATION
CREATE_PERSON
CREATE_QUALIFICATION
CREATE_RULE
CREATE_SIMULATION
CREATE_SPECIFICATION
CREATE_STUDY
DELETE_WITH_HISTORY
COMPLETE_WORKFLOWS
BULK_CHANGE
ADMIN_OBJECT
VERIFY_OBJECT
REJECT_OBJECT
INVOKE_HOOK
EXPORT
EXPORT_DOCUMENT
APPROVE
SEND_EMAIL
LOGIN_AS
IMPORT
IMPORT_REGISTRATION

Define teams (user groups)

The system supports the definition of teams (user groups). Similar to a user, teams can be assigned to a context based role. This allows for defining teams globally, maintaining the membership (by the team owner) instead of allocating individual users to a role.

Teams can be defined by the administrator, or created automatically via the API.
Once a team is defined and allocated at least one member (a user), the user can manage the team by adding / removing other users.

The administrator can manage the teams (add, modify, delete)

The administrator can click on a team or use the Add and Delete button to manage teams.

Definition of a team

The configuration of a team supports the following attributes:

  • External ID - The unique identifier for the team, used for integration purposes.
  • Code  - The unique identifier for the team used for display and unique identification of the team in Curriculum
  • Name  - The name of the team, used for display purposes in selections of teams by users.
  • Start date - The date from which the team is available for selection in the system
  • End date - The date till which the team is/was available for selection in the system. The end date is considered a 'soft delete'.

Customer unique training

This class is available to receive tailor made for your database set-up. Just fill out the form below and our product expert will get in touch with you to set-up your bespoke class.
I want a bespoke class