FAQs on Roles and Permissions in TeamForge
Can I block a user's access to source code?
From time to time, you may need to prevent a user from using a source code repository.
SCM access can be withdrawn from a user by doing one of the following:
- Change the user's access to specific paths in the repository. (Subversion only.)
- Remove the role providing the desired source code permissions from the user.
- Remove the user from the project.
How this works depends in part on whether the repository is managed by TeamForge. If the source control server that hosts the repository is managed by TeamForge, the user's access is removed immediately.
Both the project administrator and the user receive email notifications when the change is made.
Can I assign a role to all users of the site at once?
If you are a site administrator in Digital.ai TeamForge, you can assign a role to all the system users (non-site administrators) at one go.
Now, Digital.ai TeamForge provides a system created user group called "All Users", including all site users. All role assignments that can be made to a user group can be made even for the "All Users" user group.
The All Users
group members can not be manually added, edited, viewed or deleted. This group is automatically updated each time a user is added or deleted from the site.
Can I request a role?
If you are a project member in Digital.ai TeamForge, you can request a role in your project.
You can use the Project Home > My Roles page to request for a role. Your request is submitted to the project administrator for approval. You will receive an email notification when your request is either approved or denied.
Based on your project administrator's discretion, some role requests may be granted immediately, while the other role requests may need approval.
Why don't I have access to the "Reported in Release" information in my artifact?
If you cannot see the "Reported in Release" information in your artifact, ask your project owner to add the role required to obtain access to this information.
Users with tracker artifact submit/view/edit permissions will not be able to see "Reported in Release" information in an artifact, as it is directly associated with the File Releases section.
You can request that the project owner add a role permission of View Only for All Packages in File releases for you to obtain access.
Who can access an application?
Application permissions help you minimize the need to create and assign many similar roles for individual users. Instead, you can permit or restrict access to individual applications within the project for whole classes of users.
Application permissions supplement role-based access control (RBAC.) For each application's concepts, documents, file releases, trackers, and discussion forums, you can assign permissions globally based on user type.
For example, if you know that you want all project members to be able to view and submit to all project trackers, you can specify this application permissions. You need to configure these settings only once. All current and future project members will be able to view and submit to all trackers without having the tracker view/submit permission assigned to them individually via a role.
Before you do this, you should have identified your project as private, gated community, or public. Configuring permissions is a finer-grained level of control that operates within this hierarchy of project types.
Some applications may be invisible to some users based on the roles you assign. If you give a user a role that does not grant access to a particular application, that user cannot see the button for that application in the Web interface. (However, if that user also has some other role that does grant access to that application, the user can see the application button.
A user's license type also influences what the user can see and do on your site. A user's license type supersedes any role assignments. Ask your site administrator how many licenses of each kind are available for your users. For more information, see How do TeamForge Licenses Work?.
Exceptions
- If a user has an SCM license, that user can see only the tools that support the core source control functions of the site. The Tracker, Documents, and Tasks tools are not visible.
- If a user has any level of permission on a tracker or a task folder, that user can see the Reports button.
- If a user has tracker administration permission on any tracker, or task administration in any task folder, that user can see the Project Admin button.
User Classes
These are the classes of users to which you can assign application permissions:
User Class | Description |
---|---|
All users with Role Permissions | Only project members with appropriate RBAC permissions. |
All project members | All project members. |
All project members and unrestricted users | All unrestricted users, whether or not they are project members, plus all project members. |
All logged-in users | All restricted and unrestricted users (all logged-in users,) whether or not they are project members. |
All users | All users, whether or not they are logged in or have Digital.ai TeamForge accounts. |
Restrictions by type of site
On some types of sites, you can't assign application permissions to certain classes of users. In such cases, you must use role-based access control (RBAC) permissions.
-
On a private site, you cannot set application permissions for these classes of users:
- All project members and unrestricted users
- All logged-in users
- All users
-
On a "Gated Community" site, you cannot set application permissions for these classes of users:
- All logged-in users
- All users
Can I delete an item if I have 'Administer' permission?
No. You cannot delete an item if you have the administer permission.
The administer permission does not allow you to delete an item. You can create, edit, submit, and view items if you have the administer permission. For deletion, you must have the delete permission.
Can I disable creation of user accounts?
As of TeamForge 4.1 SP3, it is possible to disable the creation of new accounts by users so that only a 'site admin' can create new users.
To enable this mode of operations, simply add the following line to /opt/collabnet/teamforge/sourceforge_home/etc/sourceforge_configuration.properties
:
sf.disableUserSelfCreation=true
Once this line is in place, restart TeamForge for it to take effect.
Why do I see the project home page though I lack the necessary permission?
This has been set so that when users are provided access to a project, they do not see an empty page.
Irrespective of whether the view permission on project pages is checked, users will be able to see the contents in the project home page.
Why do you need the authentication and authorization plugin for Hudson?
The Authentication and Authorization plugin allows you to set up your Hudson installation to authenticate against a CollabNet server and specify access control for CollabNet users.
Authentication and authorization are independent actions. You could set up your Hudson installation to authenticate against a SourceForge or TeamForge site, but not use that CollabNet site for authorizing users. Authorization is available only with Digital.ai TeamForge 5.2, but authentication is possible with earlier CollabNet SourceForge Enterprise versions as well.
Authentication
Authentication determines user names and passwords. You establish user credentials when you enable your Hudson site to use the CollabNet security realm.
Authorization
Authorization determines what users can do on the Hudson site.
Your Hudson server can be shared between many CollabNet projects, and you can grant TeamForge users permissions at the site level. You specify site-level permissions when you configure the site to use a CollabNet server for authorization.
A job on your Hudson server may be involved with more than one TeamForge project. For example, a job that builds software can pull in source code from multiple project repositories. For the purpose of authorization, however, each job is associated with one CollabNet project, and you can give users project-level roles.
When your Hudson site is set up to use CollabNet authorization, TeamForge project administrators can assign these roles to project members:
- Hudson Build/Cancel
- Hudson Configure
- Hudson Delete
- Hudson Promote
- Hudson Read
Users get the highest permissions they are entitled to. For example, if a user is part of a group that has administration permissions for the Hudson site, that supersedes any Hudson-related role the user might be assigned within a specific CollabNet project.
Can I control user access to an integrated application?
TeamForge can integrate the permissions scheme of a separate application into the TeamForge role-based access control system.
To look at how this works, we'll use the Pebble blogging tool as an example. Pebble is an application that you can quickly integrate with TeamForge.
Pebble brings with it a set of pre-determined roles that you can assign to project users. The roles are defined in the XML application configuration file.
Blog Reader
You can only read blogs and make comments, the comments are sent for moderation.
Blog contributor
You can add blog posts, but they will be sent for moderation.
Blog publisher
You can add blog posts, moderate comments and blog posts.
Blog owner
You can do all that a Blog publisher does as well as change the blog properties and security options.
Any site user with one or more of these roles can see the Pebble Blog button in their project toolbar. Clicking that button allows them to operate Pebble according to their access rights.
Note: Site Administrators don't need any specific permissions; they have all permissions on all projects on the site.