Consequences of adding a user to a project but not to an organisation - azure-devops

I am trying to understand the complete purpose of organisations in ADO. What I have understood is that an organisation groups projects, defines resources, extensions, billing, etc. that is related to the organization.
I am struggling with the user part of an organization. I can add users to an org giving them an access level. But I can also add users directly to a project without adding them to an organization at all.
What is then the consequence of this? Is then access level by default stakeholder for those users?
Thank you

You can add people to projects instead of to your organization. Users
are automatically assigned Basic features if your organization has
seats available, or Stakeholder features if not.
For this please refer to the Note of this document.
When you add members to projects and you don't have billing set up, Basic access is automatically assigned, until you run out of seats available. When you add members to projects and you do have billing set up, Basic access is assigned only if your default access level is set to Basic. Otherwise, project members are assigned Stakeholder permissions.
You can refer to Add members to projects or teams for details.

If you add an user to a project that user will be added to the organisation as well. At least when the said user first logs in. The user will get the access level you define as default.

Related

Making private repo inside an organization available to only some members

I am a part of a GitHub organization. I created a private repository inside this organization. Now, I see that all members of the organization get read access to it by default; however, I only want to collaborate with a few of them and do not want others to have any access to the content of this repository at this point in time. Is it possible to do so?
This is possible.
WIth teams
First, the base permission of an org must be set to No permission. Then you need to make a team with the people you want to have read access or higher. Then you need to add the team and give them the access level you want them to have on the Collaborators and teams page in the settings for the repository.
Without teams
First, the base permission of an org must be set to No permission. Then go to the Collaborators and teams page in the settings. Then add the users you want to have access to the repository and give them the access level you want them to have.

What permissions does an Organisation Owner have in Azure DevOps?

We've been using Azure DevOps but I'm wondering what the Organisation Owner does? Do they have extra permissions in Azure DevOps or is it just a 'for info' type field so people know who to speak with about any DevOps queries / change requests with the setup.
Thinking ours may need to change but just looking to see what the impact is in changing that - i.e. what permissions would the existing person lose (and what would a new person gain) if that was to change to someone else.
Generally, there aren't extra permissions for the owner account, so, just feel free to change owner. For the new owner, he has the admin permission.
On the other hand, you may just add the new user to Project Collection administrators group, then this new user will has admin permission too.
From the docs
An administrator or organization Owner can give you access to select
features or functions, or change your permissions. In this article,
learn how to look up administrators or organization Owners.
and here are the rights or things that organization owner can do.
Generally, as an organization Owner, you are the administrator of your DevOps service and you have super permission. You can manage your project, includes:
Add users to your project
Grant or restrict permissions
Share your project vision and support collaboration
Remove unused services from the user interface
Set code, test, and other policies
Define area and iteration paths for work tracking
Customize work-tracking processes
Review and update notifications
Add teams to scale your organization
Install and manage extensions
Set up billing
Detailed information, you can refer to the following link:
https://learn.microsoft.com/en-us/azure/devops/user-guide/project-admin-tutorial?view=azure-devops

Option to limit visibilty of users in Azure DevOps

Our main Azure DevOps Organization is linked to our Azure AD. We need to invite customers to specific projects as stakeholder only, and with this, they are added as external users in our AD. We found that within a customer project also, all other external users are visible, e.g. via mention with # anywhere in the text or assignment drop-down, although these do not have access to that project. Our only workaround so far is to create new non AD linked customer specific organizations, but this is really not the right way to go (licencing, management etc.)
Is there any option to prevent this and to restrict visibility to only those users, which are part of a project (or planned)?
I tested and found the same issue as you said. It is by design, you can raise a problem in the Developer Community
https://developercommunity.visualstudio.com/spaces/21/index.html
Besides, since there is a workaround that works now, continue on this basis. You can create different AAD for the customer specific organizations, then add the customers to these AAD. Thus, these users will be invisible because they are in different AAD organizations.

What group does one have to be member of to add new User Stories and Bugs on the board?

Currently users are members of the Project Administrators group.
Is that the minimum group membership required to add new User Stories and Bugs to the Boards interface?
Update
Area path permissions let you grant or restrict access to edit or modify work items, test cases, or test plans assigned to those areas. You can restrict access to users or groups. You can also set permissions for who can add or modify areas or iterations for the project.
You define both areas and iterations for a project from the Project Settings>Work>Project configuration.
1) Choose (1) Project Settings, expand Work if needed, and choose (2) Project configuration and then (3) Areas.
2) Choose the ... context menu for the node you want to manage and select Security.
More details please take a look our official link.
This is not only based on which group you are in.
Note:
Limitations to select features are based on the access level and
security group to which a user is assigned. The Basic access level and
higher supports full access to all Azure Boards features. Stakeholder
access level provides parti
So to add new User Stories and Bugs on the board, you need to meet both permissions and access for Azure Boards.
For Permission:
Boards present work items as cards and support quick status updates through drag-and-drop.
You could also use single permission to restrict users with Agile Boards. For if you want a simply solution, you could add them to Contributors Group directly.
Note: According to Azure DevOps permission setting, most groups and almost all permissions, Deny trumps Allow. If a user belongs to two groups, and one of them has a specific permission set to Deny, that user will not be able to perform tasks that require that permission even if they belong to a group that has that permission set to Allow.
For Access Level:
Agile boards
Includes limited access to Kanban boards. Stakeholders can't add work items, can't drag-and-drop work items to update status, and can't update fields displayed on cards.
Conclusion: The minimum should be Contributors Group and Basic Access Level
No, the Contributors permissions it's enough:
More info about the board/work items permissions you can find here.

GitHub: how do I make a user an admin of an organization?

I need to transfer a repository from a user account to an organization the user is a member of. Per GitHUb's docs, I need to make the user account an admin of the organization first.
GitHub's docs describe the different levels of access to an organization, but I can't find out how to actually change a user's level of access to an organisation.
How can I make the organization member an admin?
Access levels in GitHub are configured per Team inside the Organization.
Log into GitHub.
Switch your account context to the organization using the dropdown near the top-left of the screen:
Click on "View organization":
Click the Teams tab in the top navigation bar:
Decide whether you want to change the permissions of an existing team (and all of its members) or to create a new team for a single user.
If you are modifying an existing Team,
click on the Team name,
then click the gear icon at the top right,
then change the Team's access to Admin and
click Update.
If you are creating a new Team,
click the New Team button,
give the Team an appropriate name,
set its access to Admin and
click Create Team.
Team memberships have somewhat limited permissions scopes to individually named repositories.
If you want to set someone as an admin for the entire organization:
Navigate to the Organization > People
Identify the member you want to update and click on the settings cog
Set role to Owner
Update 2022: GitHub entitlements can help you define an IAM (Identity and Access Management) complete with audits.
2017: Note that since June 2017, you can apply an Admin access right to a sub-team (instead of one giant unique team as before)
See "Nested teams add depth to your team structure":
Child teams inherit their parent's access permissions, so repository permissions and #mentioning among nested teams work from top to bottom.
If your team structure is Employees > Engineering > Application Engineering > Identity, granting Engineering write access to a repository means Application Engineering and Identity also get that access.
So that is another way to assign a user admin right: make him/her part of a sub-sub team called "admins" within an organization.
Official GitHub Documentation: Nested Teams.