User Level
Business Administrator
User LevelBusiness Administrator SyntaxThe command uses this syntax.
Add RoleAlthough only a name is required, the other parameters can further define the relationships to existing users, as well as provide useful information about the role. SyntaxRoles are created and defined with the following command:
Maturity ClauseThe maturity of a project determines the access to objects in that project. The maturity attribute is intended primarily for roles that represent projects, but is not limited to that category. The maturity attribute on roles can be set to public, protected, private, or none. For more information, see Collaboration and Approvals Administration Guide: About Project-Based Access. Parent and Child ClausesThese clauses define the relationship of the new role to other defined roles. This hierarchy allows one role to share access privileges with another, saving time when defining access privileges when a policy is defined. You can have any number of child roles and any number of parent roles. For example:
Of course, the role named as the parent or child must be previously defined. For more information, see Collaboration and Approvals Administration Guide: User Categories. Assign Person ClauseThe Assign Person clause assigns specific users to the role. A role can have no users, or they could have many. Roles with no users can be defined to show a hierarchical relationship between roles. In that case, the defined role acts as a parent for other roles. Do not modify the persons creator or guest. Modifying these objects could cause triggers, programs or other application functions not to work.
If these names are not previously defined, an error message is displayed. You can assign users roles in two ways, depending on how you are building your database:
Since previously defined names are required to make the Assign Person clause valid, it is not uncommon to wait before assigning persons to a role definition. When building the database, you might want to define only the roles and then handle the assignment of users in the person definitions. But, if you choose to define the persons first, or if you are adding a role to an existing database, you can assign users to the role with the assign person clause. Regardless of where you define it, an assignment made to a role becomes visible from all applicable definitions. This means that the link between the role and the person will appear when you later view either the role definition or the person definition. Assign Role ClauseYou can use the Assign Role clause to add a user group to the role. In effect, this adds all the people in that user group to the role instead of needing to add them individually. A user group is a role defined as a project group. For more information, see As a Project Group Clause. This user group is different from the group used in the Site ClauseA site is a set of locations. It is used in a distributed environment to indicate the file store locations that are closest to the role. The Site clause specifies a default site for the role you are defining. Consult your System Administrator for more information. To write a Site clause, you use the name of an existing site. If you are unsure
of the site name or want to see a listing of the available sites, use the
Sites can be set on persons, groups and roles, as well as on the Server (with
Add the As a Project Clause A project is created by defining a role as a project with the
In the example above, the project, “my project,” is created. The name of a project must be unique and cannot be used by another role or user category. Projects are still of the type role user category and have the same parameters as roles. The type shown for a project will be a role. The selectable list for a project is the same as for a role. As an Organization Clause An organization is created by defining a role as an organization with the
In the example above, the organization, “my organization,” is created. The name of an organization must be unique and cannot be used by another role or user category. Organizations are still of the type role user category and have the same parameters as roles. The type shown for an organization will be a role. The selectable list for an organization is the same as for a role. As a Role Clause The
In the example above, the role previously defined as the project, “my project,” is turned back into a role. As a Project Group ClauseThe
This user group is different from the group used in the Ancestor Selectable on RoleThe select keyword “ancestor” returns the entire upward hierarchy of parents, as well as the user against which it is executed. For example: project.ancestor match context.user.assignment.parent This evaluates to true for data allowed for a user’s project. History Clause The Copy RoleYou can use the Copy Role command to create a copy of a role, and modify the copy at the same time. copy role SRC_NAME DST_NAME [MOD_ITEM {MOD_ITEM}];
Modify RoleUse the Modify Role command to modify a role. Syntax
After you establish a role definition, you can add or remove defining values. When modifying a role, it is important to consider how accesses are shared between parent and children. If you do not want a child to assume the same accesses to business objects as the parent, you will have to modify the policy so the privileges for the child role are specified. If a role is not specifically referenced in a policy, 3DSpace looks for access hierarchically. For example, if the role has a parent and the parent is named in the policy, the child shares the parent’s privileges. The
If you remove a parent or child, you might inadvertently remove access privileges from the children. Make sure that you consult the policies you have created when you alter the hierarchy of defined roles. History Clause The Delete RoleIf a role is no longer required and no longer used, you can delete it. Because a role is created for projects (collaborative spaces) and organizations, you can only delete it if the role does not have any references. For more information, see Delete Item. To determine the projects and organizations that reference a role, you can execute these MQL commands: temp query bus * * * where project==<rolename> temp query bus * * * where organization==<rolename> query connection type * where project==<rolename> select id query connection type * where organization==<rolename> select id where If you still want to delete the role, use the results of the above queries to change the referenced role for each object. You can only delete the role if ALL of the references have been removed. When deleting a role, the elimination of linkages can affect another role’s access to business objects. For example, suppose you have these two roles: Assembly Manager and Component Assembler. Assembly Manager is the parent of Component Assembler. According to the policy governing the Assembly Manager role, the Assembly Manager role has read access to all business objects of type Assembly. Since a child role inherits the access abilities of its parent role (unless specified otherwise), the Component Assembler role also has read access. If the Assembly Manager role is deleted, the linkages disappear between Assembly Manager and Component Assembler. Component Assembler becomes a stand-alone role and loses the read access inherited from the Assembly Manager role. If this access was critical, you can modify the role definition for Component Assembler with read access. |