One or more non-transitory storage media storing instructions which, when executed by one or more computing devices, cause performance of a method of managing account data using an application instance, the method comprising:
- generating a plurality of visibility groups comprising at least a first visibility group and a second visibility group, wherein the first visibility group corresponds to a first set of different user privilege classes and the second visibility group corresponds to a second set of different user privilege classes, wherein the first set of different user privilege classes of the first visibility group include an internal users group, and wherein the second set of different user privilege classes of the second visibility group include at least i) the first set of different user privilege classes and ii) named external users;
- generating a plurality of access modes comprising at least a first access mode and a second access mode, wherein the first access mode comprises a first set of access permissions assigned to the first visibility group and the second access mode comprises a second set of access permissions assigned to the second visibility group, wherein the first access mode is a private access mode, wherein the first set of access permissions assigned to the internal users group of the first visibility group are greater than the set of access permissions assigned to the named external users in the second visibility group, wherein the first set of access permissions are assigned to the first set of different user privilege classes of the first visibility group and are extended to the subset of the second set of the different user privilege classes of the second visibility group such that a change in the first access mode is automatically extended to a change in the second access mode;
- selecting, via a graphical user interface (GUI), an access mode from the plurality of access modes, wherein upon selecting the access mode, a subset of access permissions corresponding to each of the plurality of visibility groups are determined;
- at a computer system storing the account data in association with a group account, receiving a request to grant an external user access to a particular data record of the account data, wherein the particular data record comprises incident data in a supply chain, wherein a plurality of internal user accounts belong to the group account, and wherein the external user does not belong to the group account;
- validating the request, by determining whether the external user can be granted access to the particular data record, wherein validating the request comprises:
- determining the external user is associated with a given visibility group from the plurality of visibility groups based on a given user privilege class associated with the external user, wherein the given user privilege class is selected from the group consisting of internal users group, a named external users group, an invited or registered external users group and non-users group,
- determining the particular data record is associated with the selected access mode,
- determining the group account is associated with be given visibility group,
- determining the subset permissions for the external user based on the given visibility group and the selected access mode;
- in response to determining that the external user can be granted access to the particular data record based on the subset of access permissions, generating and storing access data associating the external user with the particular data record,
- granting the external user access to the particular data record based on the stored access data.