You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: exchange/docs-conceptual/find-exchange-cmdlet-permissions.md
+69-52Lines changed: 69 additions & 52 deletions
Original file line number
Diff line number
Diff line change
@@ -20,31 +20,31 @@ You can use PowerShell to find the permissions required to run any Exchange or E
20
20
21
21
- Estimated time to complete this procedure: less than 5 minutes.
22
22
23
-
- You can only use PowerShell to perform this procedure.
23
+
- You can only use PowerShell to perform these procedures.
24
24
25
-
- Basically, you need to be an administrator to complete this procedure. Specifically, you need access to the **Get-ManagementRole** and **Get-ManagementRoleAssignment** cmdlets. By default, access to these cmdlets is granted by the **View-Only Configuration** or **Role Management** roles, which are typically assigned to the **View-Only Organization Management** and **Organization Management** role groups.
25
+
- Basically, you need to be an administrator to complete this procedure. Specifically, you need access to the **Get-ManagementRole** and **Get-ManagementRoleAssignment** cmdlets. By default, access to these cmdlets is granted by the **View-Only Configuration** or **Role Management** roles, which are only assigned to the **View-Only Organization Management** and **Organization Management** role groups by default.
26
26
27
-
- The procedures in this topic don't work in Security & Compliance Center PowerShell. For more information about permissions in the Security & Compliance Center, see [Permissions in the Security & Compliance Center](https://docs.microsoft.com/microsoft-365/security/office-365-security/permissions-in-the-security-and-compliance-center).
28
-
29
-
- The procedures in this topic don't work in standalone Exchange Online Protection (EOP) PowerShell (Microsoft 365 organizations without Exchange Online mailboxes). For more information about permissions in standalone EOP, see [Feature permissions in EOP](https://docs.microsoft.com/microsoft-365/security/office-365-security/feature-permissions-in-eop).
27
+
- The procedures in this article don't work in Security & Compliance Center PowerShell or standalone Exchange Online Protection (EOP) PowerShell (Microsoft 365 organizations without Exchange Online mailboxes). For more information about permissions in these environments, see the following articles:
28
+
-[Permissions in the Security & Compliance Center](https://docs.microsoft.com/microsoft-365/security/office-365-security/permissions-in-the-security-and-compliance-center).
29
+
-[Permissions in standalone EOP](https://docs.microsoft.com/microsoft-365/security/office-365-security/feature-permissions-in-eop).
30
30
31
31
> [!TIP]
32
32
> Having problems? Ask for help in the Exchange forums. Visit the forums at: [Exchange Server](https://go.microsoft.com/fwlink/p/?linkId=60612) or [Exchange Online](https://go.microsoft.com/fwlink/p/?linkId=267542).
33
33
34
34
## Use PowerShell to find the permissions required to run a cmdlet
35
35
36
-
1. Open the PowerShell environment where you want to run the cmdlet.
37
-
36
+
1. If you haven't already, open the Exchange PowerShell environment that you're interested in:
38
37
-**Exchange Online**: [Connect to Exchange Online PowerShell](connect-to-exchange-online-powershell.md).
39
-
40
38
-**Exchange Server**: [Open the Exchange Management Shell](open-the-exchange-management-shell.md) or [Connect to Exchange servers using remote PowerShell](connect-to-exchange-servers-using-remote-powershell.md).
41
39
42
-
2.Run the following command to identify the cmdlet and, optionally, one or more parameters on the cmdlet. Be sure to replace `<Cmdlet>` and optionally, `<Parameter1>,<Parameter2>,...` with the actual cmdlet and parameter names you are interested in. If you specify multiple parameters separated by commas, only the roles that include **all** of the parameters are returned.
40
+
2.Replace `<Cmdlet>` and optionally, `<Parameter1>,<Parameter2>,...` with the values that you want to use, and run the following command:
**Note**: If you specify multiple parameters, only roles that include the cmdlet with **all** of the parameters are returned.
47
+
48
48
3. Run the following command:
49
49
50
50
```powershell
@@ -57,78 +57,95 @@ The results contain the following information:
57
57
58
58
-**Role**: Indicates the role that gives access to the cmdlet or the combination of cmdlet and parameters. Note that role names that begin with "My" are user roles that allow regular users to operate on objects they own (for example, their own mailbox or their distribution groups).
59
59
60
-
-**RoleAssigneeType** and **RoleAssigneeName**: These values are inter-related. **RoleAssigneeType** is the type of object that has the role assigned to it, and **RoleAssigneeName** is the name of the object. **RoleAssigneeType** can be a role group, role assignment policy, security group, or user. Typically, administrator roles are assigned to role groups.
60
+
-**RoleAssigneeType** and **RoleAssigneeName**: These values are inter-related:
61
+
-**RoleAssigneeType** is the type of object that has the role assigned to it. For administrator roles, this value is typically a role group, but it can also be a role assignment policy, a security group, or a user.
62
+
-**RoleAssigneeName** is the name of the role group, role assignment policy, security group, or user.
61
63
62
64
## Troubleshooting
63
65
64
66
What if there are no results?
65
67
66
68
- Verify that you entered the cmdlet and parameter names correctly.
67
69
68
-
-You might have entered too many parameters, and all of the parameters on the cmdlet aren't defined in a single role. Try specifying only the cmdlet name in Step 2, and run Step 3 to verify that the cmdlet is available in your environment. Then, add parameters one at a time to Step 2 before running Step 3.
70
+
-The parameters that you specified are actually available for a cmdlet in a single role. Try specifying only the cmdlet name in the first command before you run the second command. Then, add the parameters one at a time to the first command before you run the second command.
69
71
70
-
- These possible causes have the same solution:
72
+
Otherwise, no results are likely caused by one of the following conditions:
71
73
72
-
- You might have entered a cmdlet or parameters that are defined in a role that isn't assigned to anyone by default.
74
+
- The cmdlet or parameters are defined in a role that isn't assigned to any role groups by default.
75
+
- The cmdlet or parameters aren't available in your environment. For example, you specified an Exchange Online cmdlet or Exchange Online parameters in an on-premises Exchange environment.
73
76
74
-
- You might have entered a cmdlet or parameter that isn't available in your environment. For example, when you enter an Exchange Online cmdlet or parameters in an on-premises Exchange 2016 environment.
77
+
To find the roles in your environment (if any) that contain the cmdlet or parameters, replace `<Cmdlet>` and optionally, `<Parameter1>,<Parameter2>,...` with the values that you want to use and run the following command:
75
78
76
-
Run the following command to find the role that contains the cmdlet or parameters. Be sure to replace `<Cmdlet>` and optionally, `<Parameter1>,<Parameter2>,...` with the actual cmdlet and parameter names you are interested in. Note that you can use wildcard characters (*) in the cmdlet and parameter names (for example, `*-Mailbox*`).
**Note**: You can use wildcard characters (*) in the cmdlet and parameter names (for example, `*-Mailbox*`).
81
84
82
-
-If the command returns an error saying the object couldn't be found, the cmdlet or parameters aren't available in your environment.
85
+
If the command returns an error saying the object couldn't be found, the cmdlet or parameters aren't available in your environment.
83
86
84
-
-If the command returns one or more entries for **Name**, **Role**, and **Parameters**, the cmdlet (or parameters on the cmdlet) is available in your environment, but the required role isn't assigned to anyone. To see all roles that aren't assigned to anyone, run the following command:
87
+
If the command returns results, the cmdlet or parameters are available in your environment, but the required role isn't assigned to any role groups. To find roles that aren't assigned to any role groups, run the following command:
- Management role scopes define where cmdlets can operate (in particular, write scopes).
95
+
### Include management role scopes
96
+
97
+
Management role scopes (in particular, write scopes) define where cmdlets can operate. For example, the entire organization or only on specific user objects.
98
+
99
+
To include scope information in the [Use PowerShell to find the permissions required to run a cmdlet](#use-powershell-to-find-the-permissions-required-to-run-a-cmdlet) output, add `*Scope*` to the second command:
For detailed information about management role scopes, see [Understanding management role scopes](https://docs.microsoft.com/exchange/understanding-management-role-scopes-exchange-2013-help).
106
+
107
+
### Find all roles assigned to a specific user
108
+
109
+
To see all roles that are assigned to a specific user, replace `<UserIdentity>` with the name, alias, or email address of the user and run the following command:
- To see all roles assigned to a specific user, run the following command:
121
+
**Note**: The _RoleAssignee_ parameter returns both direct role assignments to users (uncommon) and indirect role assignments granted to the user through their membership in role groups.
Copy file name to clipboardExpand all lines: exchange/exchange-ps/exchange/Set-CASMailbox.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -834,7 +834,7 @@ This parameter is available only in on-premises Exchange.
834
834
835
835
The MAPIBlockOutlookVersions parameter blocks access to the mailbox for specific versions of Outlook.
836
836
837
-
For example, if you specify the value 15.0.4569.1503, only Outlook 2013 Service Pack 1 (SP1) or later clients are allowed to access the mailbox. Earlier versions of Outlook are blocked.
837
+
For example, if you specify the value 15.0.4569, only Outlook 2013 Service Pack 1 (SP1) or later clients are allowed to access the mailbox. Earlier versions of Outlook are blocked.
838
838
839
839
The default value is blank. To reset this parameter, use the value $null.
- AllowList - Sharing is allowed only with external users that have account on domains specified within -SharingAllowedDomainList
675
+
- BlockList - Sharing is allowed with external users in all domains except in domains specified within -SharingBlockedDomainList
673
676
674
-
None
675
-
676
-
AllowList
677
-
678
-
BlockList
679
-
680
-
For additional information about how to restrict a domain sharing, see Restricted Domains Sharing in Office 365 SharePoint Online and OneDrive for Business.
677
+
For additional information about how to restrict a domain sharing, see [Restrict sharing of SharePoint and OneDrive content by domain](https://docs.microsoft.com/sharepoint/restricted-domains-sharing).
681
678
682
679
```yaml
683
680
Type: SharingDomainRestrictionModes
@@ -729,10 +726,10 @@ The default link type for the site collection
729
726
730
727
PARAMVALUE: None | AnonymousAccess | Internal | Direct
731
728
732
-
None - Respect the organization default sharing link type
733
-
AnonymousAccess - Sets the default sharing link for this site to an Anonymous Access or Anyone link
734
-
Internal - Sets the default sharing link for this site to the "organization" link or company shareable link
735
-
Direct - Sets the default sharing link for this site to the "Specific people" link
729
+
- None - Respect the organization default sharing link type
730
+
- AnonymousAccess - Sets the default sharing link for this site to an Anonymous Access or Anyone link
731
+
- Internal - Sets the default sharing link for this site to the "organization" link or company shareable link
732
+
- Direct - Sets the default sharing link for this site to the "Specific people" link
736
733
737
734
```yaml
738
735
Type: SharingLinkType
@@ -772,9 +769,9 @@ The default link permission for the site collection
772
769
773
770
PARAMVALUE: None | View | Edit
774
771
775
-
None - Respect the organization default link permission
776
-
View - Sets the default link permission for the site to "view" permissions
777
-
Edit - Sets the default link permission for the site to "edit" permissions
772
+
- None - Respect the organization default link permission
773
+
- View - Sets the default link permission for the site to "view" permissions
774
+
- Edit - Sets the default link permission for the site to "edit" permissions
778
775
779
776
```yaml
780
777
Type: SharingPermissionType
@@ -794,9 +791,9 @@ Choose whether to override the anonymous or anyone link expiration policy on thi
794
791
795
792
PARAMVALUE: None | False | True
796
793
797
-
None - Respect the organization-level policy for anonymous or anyone link expiration
798
-
False - Respect the organization-level policy for anonymous or anyone link expiration
799
-
True - Override the organization-level policy for anonymous or anyone link expiration (can be more or less restrictive)
794
+
- None - Respect the organization-level policy for anonymous or anyone link expiration
795
+
- False - Respect the organization-level policy for anonymous or anyone link expiration
796
+
- True - Override the organization-level policy for anonymous or anyone link expiration (can be more or less restrictive)
0 commit comments