new managementroleassignment applicationimpersonation

4sysops

  • IT Administration Forum
  • PowerShell Forum
  • Community Forum
  • PowerShell Group
  • Earning as 4sysops member
  • Member Ranks
  • Member Leaderboard – This Month
  • Member Leaderboard – This Year
  • Member Leaderboard – All-time
  • Author Leaderboard – 30 Days
  • Author Leaderboard – 365 Days
  • Cloud Computing
  • Write for 4sysops

Exchange impersonation: Grant permissions to service accounts

4sysops - The online community for SysAdmins and DevOps

Avatar

Options for granting permissions

Use impersonation roles.

  • Recent Posts

Roland Eich

  • Microsoft Graph: A single (PowerShell) API for Microsoft’s cloud services - Tue, Aug 23 2022
  • Exchange impersonation: Grant permissions to service accounts - Mon, Aug 8 2022
  • Send Microsoft Teams meeting invitations in multiple languages - Thu, Jul 21 2022

An example of applications that require permissions to Exchange resources is dispatching used to plan the deployment and availability of personnel. The software in question should be able to write directly to the user's calendar for appointment management. Mail archiving solutions also have similar requirements.

Basically, Exchange provides three options to grant users permissions to other users' mailboxes:

  • Folder permissions, when you want to grant a user access to a folder, but you don't want that user to be able to "send on behalf of" another user.
  • Delegation, when you want a user to perform work on behalf of another user (for example, an executive assistant handling the manager's calendar). This can also be done centrally using PowerShell .
  • Impersonation in a service application that needs to access multiple mailboxes and act as the owner of the mailbox.

For our requirement, an impersonation role can be configured centrally on the Exchange Server. This works on both Exchange on-prem and Exchange Online.

For security reasons, the service account will not be authorized to access the entire organization. This would automatically affect critical positions, such as a CxO. Instead, you can use filters to adjust identity roles accordingly.

you can first check to see if there are already any impersonation roles.

Display currently configured impersonation roles

Display currently configured impersonation roles

To create a new impersonation role, use the following cmdlet:

Creating a new impersonation role using PowerShell

Creating a new impersonation role using PowerShell

Now you can further restrict the permissions of the service user with the RecipientTypeDetails parameter, in this example, to rooms:

Restrict service account permissions to room mailboxes

Restrict service account permissions to room mailboxes

Further filtering would also be possible for all user mailboxes, for example:

The following example shows the restriction of permissions to the members of a group:

More detailed information on the filtering options can be found on Microsoft Docs .

However, if you are planning to migrate to Exchange Online and have created on-prem filters at the organization level (OU) or directly for servers, they will not work in Exchange Online because there are no OUs there.

Basically, the configuration of an impersonation role is now complete. In practice, however, it often happens that different service users need to access calendars. In this case, it is more efficient to give permissions to a group that then contains the service users:

Grant permissions to service users via group membership

Grant permissions to service users via group membership

All users who are members of the GroupImpersonation group are thus allowed to access the users contained in ManagementScope .

Subscribe to 4sysops newsletter!

avatar

IT Administration News

  • Windows Server 2025 Insider Build 26280 has a new Sept. 15, 2025 expiration date – Neowin
  • Microsoft confirms Windows 11 0xC1900101 update error in recent Canary builds – Neowin
  • Elon Musk’s X could still face sanctions for training Grok on Europeans’ data | TechCrunch
  • Understanding RAG: How to integrate generative AI LLMs with your business knowledge | ZDNET
  • OpenAI co-founder’s Safe Superintelligence startup inhales $1B in funding

Read All IT Administration News

Join our IT community and read articles without ads!

Do you want to write for 4sysops? We are looking for new authors.

Key package in the ADSI-Editor.

Recover data from corrupted BitLocker drives with repair-bde and key packages

Avatar

How not to block AI crawlers: robots.txt, authentication, CAPTCHA

Avatar

Determine effective password policy for AD users with PowerShell

AI Hub displays visits to AI assistants flagged by the Insider Risk Policy

Microsoft Purview AI Hub – Monitor and block AI applications

Avatar

High Volume Email in Microsoft 365: Overcoming sending limits

Group Policy setting for notifying users about an expiring password

Send email notifications about expiring Active Directory passwords with a PowerShell script

Vulnerability and patch management in Endpoint Centra featured image

Unifying endpoint management and security: An overview of ManageEngine Endpoint Central

Avatar

E-MailRelay: Free SMTP server for Windows

Daily retrieval of critical vulnerability alerts

Receive critical Microsoft security alerts by email

Upgrading the openssh-server

Addressing OpenSSH vulnerabilities CVE-2024-6387 and CVE-2024-6409

Avatar

Authenticator backup: Microsoft, Google, Amazon, Authy

Explore delegated Managed Service Account (dMSA) attributes using AD Explorer

Delegated Managed Service Accounts in Windows Server 2025

Avatar

List groups in Linux

Requesting a certificate from Let's Encrypt and validating the domain with Certbot

Install Let’s Encrypt certificates on Windows with Certbot and export as PFX

Avatar

Create and remove group in Linux, add user, switch primary group

Group Policy setting for NTLM security levels

Audit and disable NTLMv1

Signing in to AWS with Touch ID

Enable FIDO passkey authentication for IAM users in AWS

The Passkey authentication process in Entra ID

Enable Microsoft Entra ID passkey authentication

Entry-level auto-type options

KeePassXC: A free cross-platform password manager for Windows, macOS and Linux

Avatar

Configuring external authentication methods in Microsoft 365 with Microsoft Entra ID

Leave a reply click here to cancel the reply.

Please enclose code in pre tags: <pre></pre>

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Receive new post notifications

Twitter

Subscribe to Newsletter

Follow 4sysops.

Please ask IT administration questions in the forums . Any other messages are welcome.

Log in with your credentials

or      Create an account

Forgot your details?

Create account.

Robin Logomark

Configure impersonation roles for Exchange service accounts

  • Exchange 2010+
  • Admin access to Exchange
  • Under 5 minutes

This is a common issue

If you're having trouble connecting to Exchange calendars in Robin or getting "Cannot find calendar" errors, 90% of the time it's because your service account does not have impersonation rights for room calendars yet. This guide walks you through how to fix it fast.

Once you're done, you can test the results quickly using a connectivity tool from Microsoft via this guide.

We need to make sure the connected service account has the ability to create, edit, and delete meetings. Robin will use these permissions to do things like end meetings early via the room display, or remove abandoned events automatically.

Exchange Impersonation allows the service account to manage events on behalf of your office's room resource calendars, regardless of who originally created the event, and gives you auditable logs for reference.

Via Microsoft's Exchange Impersonation vs. Delegate Access:

Exchange Impersonation is used in scenarios in which a single account needs to access many accounts. Line-of-business applications that work with mail typically use Exchange Impersonation.

Wondering why we don't use account delegation instead?

Assign the ApplicationImpersonation role

This applies to Exchange 2010, 2013 and 2016. Exchange 2007 handles Impersonation a little differently. This MSDN article will help you run the equivalents.

Robin recommends limiting the scope of access based on your team's security needs.  Before assigning your service account the  ApplicationImpersonation role, take a moment to update which accounts Robin can impersonate. At a minimum, we recommend including all room resource accounts you plan on managing with Robin.

If you need more specific groups, this article shows how to configure Exchange Impersonation and limit access to custom set of users or account types. 

The easy way: No management scope

The service account will have access to all calendars , regardless of type.

Remember to replace the "User" in the command to match your service account .

The advanced way: Limited management scope

With a limited scope, the service account has access to room and equipment calendars only .

This creates a new management scope for only  rooms/equipment to act as a filter for the impersonation.

Extra limited options

Only interested in allowing access to rooms? Just remove the EquipmentMailbox filter from the above command:

If you need more control, you can create a dedicated Role Group in Exchange that contains the mailboxes you want Robin to manage. Then assign the service account a management scope for mailboxes inside that group. This allows you to hand-select mailbox access one by one.

Extra References

  • MSDN - How to Configure Impersonation
  • MSDN - Impersonation and EWS in Exchange
  • MSDN - New-ManagementScope

Logo

  • Engineering References
  • How-tos and Common Features

Setting up Application Impersonation for Microsoft Exchange

new managementroleassignment applicationimpersonation

Application Impersonation can be used by the CloudM Migrate to impersonate users so knowledge of their credentials is not required. In order to setup Application Impersonation using PowerShell, the following steps should be carried out.

To apply the Application Impersonation role to your admin account, run the following command in a PowerShell session on your Exchange server. Replace ADMIN with the email address of your admin user.

Enabling Basic Authentication

It often useful to enable Basic authentication for the Exchange Web Services endpoint, as to use Ntlm you must be logged into the workstation running the migration tool as the migration admin user. Run the following to enable Basic authentication, replacing the name of the site if required.

Exchange 2007

  • Start the Exchange PowerShell Console
  • Run the following commands in the PowerShell session, replacing the admin email with the email address of the user you will use to perform migrations

Application Impersonation Management Role (Office 365) & Complete Guide - alishaaleart/office365 GitHub Wiki

Office 365 provides a role/ right named as application impersonation. This feature allows admin to impersonate another user in an organization to perform any task in his place. When one with a single user account needs to manage multiple user accounts, it becomes essential to have Office 365 application impersonation rights (if you are not an admin).

Impersonation role allows a user, such as an application engineer, to grant certain rights of the admin to a user account. Using this feature, a user can perform any operations that are granted to impersonated account, instead of the permission granted to their own account. This post is a complete guide for the ones who want to explore about this feature. In the further sections, why there is need to impersonate Office 365 user mailboxes and different methods to set and remove impersonation rights in Office 365 and how to grant application impersonation rights in Office 365 are discussed.

Need to Impose Office 365 Application Impersonation Rights

Microsoft Office 365 Impersonation management role is a great feature that allows the admin to represent a user account like an admin and perform any task based on as an authenticated user (but does not provide all the rights of the admin). Below mentioned are the reasons and benefits of impersonating a user’s account:

  • Allow a single user account to manage or handle two or more user accounts.
  • A user is allowed to export multiple mailboxes from Office 365 simultaneously with the help of impersonation role.
  • In a large organization, it becomes really difficult for admin to handle everything individually, in this case there is a need to impose the impersonation role to reduce the workload from a single person.
  • It is completely an admin managed feature i.e, other than admin no one can remove/ set impersonation rights in Office 365.
  • It is originally designed to access one-to-many mailboxes that decrease the complexity and overhead of managing new users that are to be added to the application scope.

How to Grant Application Impersonation Rights in Office 365

**There are various benefits of application impersonation management role (Office 365) available. Below mentioned are the methods that a user can use to set application impersonation rights in Office 365: **

By using Powershell

By using Exchange Admin Centre

Grant Application Impersonation Rights in Office 365 using Powershell To add application impersonation rights in Office 365 using Powershell, a user need to follow the below mentioned steps:

** First, you need to run the Powershell and check its latest version by typing:** cmdlet:$PSVersionTable

*** If the response is empty that means you are using version 1.0.** *** See the detailed answer for newer versions**

To avoid the issues related compatibility, keep the Powershell updated always

If you wants to handle the roles or permissions locally then, you need to execute the commands in Exchange Management Shell (EMS)

To check the impersonation roles are granted or not, execute the command:

Get-ManagementRoleAssigment-RoleAssignee “”-Role ApplicationImpersonation -Role ApplicationImpersonation- RoleAssigneeType user

here, means name of administrator account that you want to check on the target server

Now, to add mailbox impersonation role, you need to write the following command:

New-ManagementRoleAssignment -Name: -Role:ApplicationImpersonation -User: “”

Here, is the name of user’s choice that must be unique

  • Remove Impersonation Rights in Office 365 Using Powershell If a user wants to remove the impersonation roles, a user need to write the following command:

Get-ManagementRoleAssignment -RoleAssignee “” -Role Applicationimpersonation -Role AssigneeType user | Remove- ManagementRoleAssignment

  • Set Impersonation Rights In Office 365 Using Exchange Admin Centre (EAC)

To assign application impersonation management role in Office 365, you need to follow the stepwise instruction mentioned below:

  • Using Exchange Admin Center or an admin account, log in to your Microsoft Office 365 account
  • Now, on Office 365 access the Exchange tab and go to Permissions in the left pane under Dashboard
  • After that click on admin roles and then select Discovery management by double-clicking it in the right pane
  • In Discovery Management Window, click on + button to set application impersonation
  • Now, from the drop down list select “ApplicationImpersonation” and click on add button then, click on OK button
  • To verify, check ApplicationImpersonation has been added under the roles or not
  • Now, go to Members section and click on + option, a new Window get appears
  • Choose the user name and click on add button --> click OK
  • To verify, check the Member section for the user name, if user name is in the list click on Save button, otherwise go to step 7

Note: For a small scale business, according to Microsoft Office 365 one can not grant impersonation rights manually. All such permissions are managed by the default admin only.

Conclusion Office 365 application impersonation rights are basically used to represent any user as an admin in his absence. There are various benefits of impersonating rights in office 365 that we have discussed. Now, to solve the problems how to assign application impersonation management role manually, we have discussed two procedures; one is using Powershell and other is by using Exchange Admin Centre. A user can use any of them of the two according to their preference.

Stack Exchange Network

Stack Exchange network consists of 183 Q&A communities including Stack Overflow , the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Microsoft Exchange 2016 - ApplicationImpersonation

I want an application (e.g. application123) to write a mail on behalf of all users. For this purpose a user is configured within the application (e.g. myImpersoUser).

I want to realize this via ApplicationImpersonation, unfortunately it does not work yet. If I assign the "send_As" permission manually, it works (so SMTP and authentication on the part of the application seems to be ok).

Current setting:

  • AD Security Group (universal) -> App_Mailsender (is a mail-enabled AD group, the same game already tested with a distribution list).

-Management Scope created, which refers to the AD group

-then RoleAsignment performed

Unfortunately I get the message "550 5.7.60 SMTP; Client does not have permissions to send as this sender" .

Where is the error?

Isk0rp1TX's user avatar

Please check if you have configured your application in order to identify the account to impersonate after configuring impersonation for the specific user: Identify the account to impersonate

enter image description here

However, when I tried to get a list of the dynamic distribution group "DDG02", the output didn't show any results:

enter image description here

Based on the test result, it seems that the MemberOfGroup is not valid in the recipient filter.

If your application has identified the account to impersonate, I think you could add a custom attribute to all members which locate in the group, and use the custom attributes to add these members in the recipient filter of your custom management scope, then create a management scope to include these members and run the New-ManagementRoleAssignment cmdlet to add the permission to impersonate the members of the specified scope:

enter image description here

After that, try using the application to write a mail on behalf of all users and see if there is any difference.

Ivan_Wang's user avatar

  • thanks for your post. Why doesn't the "MemberOfGroup" function work if Microsoft intended it to? Or in which constellations does it work? I don't want to go the way you described, because otherwise I would have to build another script, which regularly checks if new mailboxes exist and have / don't have the attribute. I would prefer a central place (AD group etc.), which regulates the function. –  user612985 Commented Jan 19, 2021 at 7:29
  • Hi, based on my knowledge and research, the parameters "-RecipientRestrictionFilter"( docs.microsoft.com/en-us/powershell/module/exchange/… ) and "-RecipientFilter"( docs.microsoft.com/en-us/powershell/module/exchange/… ) use the same OPath filter syntax and filterable properties, I just to use another command to preview the members in group and see if I could get the group members. –  Ivan_Wang Commented Jan 19, 2021 at 9:29
  • Hello, thank you. But how can I realize this in my way? Without having to resort to the AD attributes (as you described). –  user612985 Commented Jan 19, 2021 at 10:00
  • Hi, @user612985, please use the same account that you used to post the question, it's misleading to see two accounts from the same person to interact in the same question. If you need help for your account let me know. –  yagmoth555 ♦ Commented Jan 19, 2021 at 18:54

You must log in to answer this question.

Not the answer you're looking for browse other questions tagged exchange microsoft ..

  • The Overflow Blog
  • The hidden cost of speed
  • The creator of Jenkins discusses CI/CD and balancing business with open source
  • Featured on Meta
  • Announcing a change to the data-dump process
  • Bringing clarity to status tag usage on meta sites

Hot Network Questions

  • Cardinality of connected LOTS
  • How to connect 20 plus external hard drives to a computer?
  • Remove an edge from the Hasse diagram of a finite lattice
  • Why isn't a confidence level of anything >50% "good enough"?
  • Websites assume the wrong country after using a VPN
  • Geometry nodes: spline random
  • How to raise and lower indices as a physicist would handle it?
  • Fusion September 2024: Where are we with respect to "engineering break even"?
  • Approximations for a Fibonacci-Like Sequence
  • Romeo & Juliet laws and age of consent laws
  • Is there a way to prove ownership of church land?
  • What would be a good weapon to use with size changing spell
  • help to grep a string from a site
  • Where is this railroad track as seen in Rocky II during the training montage?
  • An instructor is being added to co-teach a course for questionable reasons, against the course author's wishes—what can be done?
  • Breaker trips when plugging into wall outlet(receptacle) directly, but not when using extension
  • Best approach to make lasagna fill pan
  • Is my magic enough to keep a person without skin alive for a month?
  • PCA to help select variables?
  • No displayport over USBC with lenovo ideapad gaming 3 (15IHU6)
  • How high does the ocean tide rise every 90 minutes due to the gravitational pull of the space station?
  • Investigate why packages are held back, and stop release upgrade
  • Applying to faculty jobs in universities without a research group in your area
  • \ExplSyntaxOn problem with new paragraph

new managementroleassignment applicationimpersonation

Logo

Help Center

  • BitTitan Help Center
  • Perform a Migration
  • Migration Planning

MigrationWiz Impersonation and Delegation for Microsoft 365 & Exchange Migrations

When migrating a large number of users in Exchange or Microsoft 365, log-in credentials are required for each user. This is a slow and error-prone process, especially for very large migrations.

Impersonation and delegation offer an easier system for bulk user migrations. Impersonation allows for the use of a single administrative account - created specifically for the migration process - to impersonate and access the user accounts. Delegation is a process where the user grants their authentication credentials to that administrative account.

In short, Impersonation allows for the collection of user information without user input, while delegation collects the data through user input. Both methods allow the migration manager to significantly reduce the time and redundancy necessary to prepare users for migration. 

Please note that Microsoft is planning to phase out RBAC Application Impersonation in Exchange Online . As a result, MigrationWiz Impersonation will also be deprecated . However, you can continue to use this method while it is no longer supported. If you would like more information on our new approach, please review the following KB article to add the necessary API permissions to the Modern Authentication app you are using for your O365 mailbox or archive mailbox endpoint.

Delegation vs. Impersonation

Delegation   means that a mailbox admin user has been set up with delegated full access rights to each user's mailbox. MigrationWiz will then use delegated rights to log in to individual user mailboxes when performing their migration. 

Impersonation   means that the admin account will actually impersonate each mailbox user when performing the migration. This produces a faster migration since the admin account will not be restricted by having to share the throttling quota and connection limits associated with a single administrative account. Instead, the throttling quota of each user is used independently on each user mailbox. You can also disable the throttling quota of each user. This will result in even faster migrations. 

Which process should I use?

If the migration source or destination is Exchange, then we recommend using delegation. This requires fewer steps to configure, and migration speeds are very similar. Setting up delegation is straightforward, as you simply set up the administrator account, disable throttling on the account, and then add the administrator account to the MigrationWiz project.

If the source or destination is Microsoft 365, we recommend using impersonation. The steps to enable impersonation on Microsoft 365 are much more straightforward, you don't have the ability to disable throttling against the admin account on Microsoft 365, so delegation would result in very poor migration speeds.

Using impersonation on Microsoft 365 also provides the following advantages:

  • Eliminates most "Connection did not succeed" errors.
  • Allows migration of more mailboxes concurrently.
  • Reduces the impact of throttling and connection limits.
  • Uses an admin account without assigning a license to it.

Setting up Delegation

Any user account that is a part of the domain administrator, schema administrator, or enterprise administrator groups will not have any administrative rights to mailboxes, no matter how many permissions are granted. A security default of Exchange Server is to explicitly deny any user that is a member of these groups. This is why we recommend creating a new user account specific for migration.

  • Set up the 'admin' account to be used for migration, and apply the necessary permissions so that the account has full access to each mailbox. 
  • Disable throttling against this account, if using Exchange 2010+. This step is not required with Exchange 2003 or Exchange 2007, since those versions do not support throttling.
  • Set up the MigrationWiz project, and select   Use admin credentials . Enter the username and password of the account that was set up under Step 1 above.

Set up the administrator account to be used for migration, and then apply the necessary permissions so that the account has full access to each mailbox on the source.

  • To create an administrator account (e.g., MigrationWiz), perform the following steps when logged into the Exchange Server.
  • Open the Exchange Management Console.
  • Expand the  Recipient Configuration  node.
  • Right-click on the  Mailbox  node.
  • Click on  New Mailbox .
  • Click on  Next .
  • Enter "MigrationWiz" as the first name.
  • Enter "MigrationWiz" as the user logon name, and optionally select a user principal name (UPN) domain.
  • Enter a password and confirm the password.
  • Click on  Browse  to select a Mailbox database.
  • Click on  New .
  • Click on  Finish .
  • To grant the account access, perform the following from the Exchange Server machine:
  • Open the Exchange Management Shell.
  • Enter the following command: Get-Mailbox -ResultSize Unlimited | Add-MailboxPermission -AccessRights FullAccess -User MigrationWiz
  • The above command needs to be applied each time a new mailbox is created since permissions are set directly on each mailbox. The administrative account will not have access until the permissions are applied.
  • In the above script, the username "MigrationWiz" should be replaced with the name of the administrative account that was set up, by following the earlier instructions in this article.
  • This username is the Administrative Username that needs to be entered under project source or destination settings, within MigrationWiz, when check marking the box labeled: Use Administrative Login.

Setting up Impersonation

Enable the Application Impersonation role for the admin account. (This step is only required if enabling impersonation on Exchange; it is not required for Microsoft 365.)

Under your MigrationWiz project Advanced Options, select the check box to use impersonation, then complete the following:

  • Make sure to use admin credentials at the Destination.
  • Sign in to the MigrationWiz account .
  • Edit the Project and click on  Advanced Options .
  • If migrating from Microsoft 365, under Source, select the check box Use impersonation to authenticate .
  • If migrating to Microsoft 365, under Destination, select the check box Use impersonation to authenticate .
  • Click  Save Options .

This option is under both Source and Destination. Refer to the section "Which should be used for different migration scenarios?" above to determine if you should be using impersonation at the Source and/or Destination.

If the above Advanced Options are set to use impersonation on a project, these settings will only become effective for those migrations that are started after saving the settings. Migrations that are already running will be unaffected by any such changes.

  • If using impersonation against Microsoft 365 (either at Source or Destination), then when mailboxes are submitted we automatically run a PowerShell script to enable the application impersonation role against this account. Therefore, it is unnecessary to run any scripts yourself.
  • Following is the remote PowerShell command (on Microsoft 365) that we execute when you submit a mailbox for migration: Enable-OrganizationCustomization New-ManagementRoleAssignment -Role ApplicationImpersonation -User
  • If using impersonation against Exchange (either at Source or Destination), an extra step is required since on-premises PowerShell is not available for access over the internet, and thus the impersonation cmdlets cannot be run. Therefore, it is necessary to run this script against the on-premises Exchange environment, using an admin account: New-ManagementRoleAssignment -Role ApplicationImpersonation -User

Disable throttling against all mailboxes, to improve the speed of migration. (This step is only required if using impersonation from/to Exchange 2010+; it is not required for Microsoft 365.)

  • On a computer that hosts the Microsoft Exchange Management Shell, open the Microsoft Exchange Management Shell type the following command, then press Enter . New-ThrottlingPolicy MigrationWizPolicy
  • Type the following command and press  Enter. Set-ThrottlingPolicy MigrationWizPolicy -RCAMaxConcurrency $null -RCAPercentTimeInAD $null -RCAPercentTimeInCAS $null -RCAPercentTimeInMailboxRPC $null -EWSMaxConcurrency $null -EWSPercentTimeInAD $null -EWSPercentTimeInCAS $null -EWSPercentTimeInMailboxRPC $null -EWSMaxSubscriptions $null -EWSFastSearchTimeoutInSeconds $null -EWSFindCountLimit $null -CPAMaxConcurrency $null -CPAPercentTimeInCAS $null -CPAPercentTimeInMailboxRPC $null -CPUStartPercent $null
  • Type the following command and press  Enter Get-Mailbox | Set-Mailbox -ThrottlingPolicy MigrationWizPolicy
  • This Microsoft TechNet article presents an alternative cmdlet that can also be used to change the throttling policy association:  Set-ThrottlingPolicyAssociation .
  • Set up the MigrationWiz project, and checkmark the box to use admin credentials. Enter the username and password of the account that was set up under Step 1 above.

Scoped Impersonation with EWS

When using MigrationWiz and Exchange Web Services (EWS) to migrate to or from Exchange Online, you should use impersonation (not delegation) when accessing user mailboxes. Using impersonation not only solves some potential throttling issues but more importantly, allows you to scope the impersonation to a specific set of user mailboxes.

The objective is to limit the scope of mailboxes that are migrated using impersonation rights. You accomplish this by implementing an impersonation scope filter. This is a common requirement in migrations where only a subset of an organization's mailboxes are scheduled for migration, for example, in migrations related to mergers and acquisitions.

Setting impersonation scope is a three-step process:

Create a Mail Enabled Security Group

Create a management scope, create the management role assignment.

While you can accomplish this task using either the Microsoft 365 Management Console or PowerShell, the instructions that follow use the PowerShell approach.

To create an impersonation scope filter, you first create a special distribution group that defines the filter scope.

  • Connect to Exchange Online using PowerShell.
  • Create a new Microsoft 365 mail enabled security Group and name it recognizably.
  • Add to the new security Group all of the user mailbox accounts that you intend to migrate. If this group is being used only for scoping impersonation, we recommend hiding the group from the Global Address list.

Retrieve the   DistinguishedName   property of the Group by using the   Get-DistributionGroup   command:

Get-DistributionGroup -Identity "YourGroupName" |fl name, dist*

This PowerShell command returns the group name (name) and   DistinguishedName   (in this instance using the wild card format,   dist* ), which enables creating the management scope. Where you see " YourGroupName ", insert the name you have assigned to your distribution group.

Using the   DistinguishedName   property retrieved in the previous step, along with the   RecipientRestrictionFilter   and   MemberOfGroup   filtering parameters, create a management scope by running the following PowerShell command:

To run the following command, you may need to enable the   Organization   customization on your Microsoft 365 tenant.

New-ManagementScope "YourScopeName" -RecipientRestrictionFilter {MemberOfGroup -eq 'YourGroupDistinguisedName'}

Where you see " YourScopeName ", provide the name you've assigned to your management scope; and, where you see " YourGroupDistinguisedName ", provide the group's   DistinguisedName   value, for example:

CN=AllowImpersonationDistributionGroup,OU=tenantname.onmicrosoft.com,OU=Microsoft Exchange Hosted Organizations,DC=EURP193A002,DC=PROD,DC=OUTLOOK,DC=COM

The final step is to create a management role assignment and then associate it with the migration account that has administrative privileges.

Create the management role assignment by issuing the following PowerShell command:

New-ManagementRoleAssignment -Name "YourMigrationProject" -Role "ApplicationImpersonation" -User "YourAdminAccountName" -CustomRecipientWriteScope "YourManagementScope"

Where the following values are provided or returned:

  • Name   is the name of your migration project YourMigrationProject
  • Role   is the value   ApplicationImpersonation.
  • User   is the migration account that has administrative privileges. YourAdminAccountName
  • CustomRecipientWriteScope   is the name you assigned to the management scope you created YourManagementScope

Delegation in Microsoft 365

Having administrative access to the Microsoft 365 control panel to manage users does not necessarily mean that the same account has permission to access all mailboxes for migration. In order to have administrative permissions to migrate mailbox data, it is necessary to grant the account permissions on each mailbox.

To manually grant administrative access for migration, execute the following remote PowerShell command:

$LiveCred = Get-Credential

Install-Module -Name ExchangeOnlineManagement Import-Module -Name ExchangeOnlineManagement Connect-ExchangeOnline -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred

Get-Mailbox -ResultSize Unlimited | Add-MailboxPermission -AccessRights FullAccess -Automapping $false -User MigrationWiz

The above command needs to be applied each time a new mailbox is created, as permissions are set directly on the mailbox. The administrative account will not have access until the permissions are applied.​

The global admin account does have the necessary rights for delegation. However, again, we recommend using impersonation for migrations​ from and/or to Microsoft 365.

If connecting to GCC High with powershell, use Connect-ExchangeOnline -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -ExchangeEnvironmentName O365USGovGCCHigh

Articles in this section

  • Adding & Managing Items for Migration
  • Azure for MigrationWiz
  • Azure Identity considerations
  • Azure Storage for MigrationWiz
  • Configuring Rackspace as a migration endpoint
  • Document Migrations
  • Getting Started with MigrationWiz
  • Migration Planning & Strategy Guide
  • Migration Strategies - Types & Best Practices
  • MigrationWiz Endpoints
  • Stack Overflow for Teams Where developers & technologists share private knowledge with coworkers
  • Advertising & Talent Reach devs & technologists worldwide about your product, service or employer brand
  • OverflowAI GenAI features for Teams
  • OverflowAPI Train & fine-tune LLMs
  • Labs The future of collective knowledge sharing
  • About the company Visit the blog

Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Get early access and see previews of new features.

Hosted Exchange Impersonation ManagementRole

I tried to create an New-ManagementRoleAssignment

Next i tried to set/change RecipientOrganizationalUnitScope Organisation

But Impersonation doesn`t work for Administrator@domain and an User from Organization with EWS...

Allways get SoapException was unhandled "The impersonation principal name is invalid."

  • exchange-server
  • impersonation

electronico's user avatar

Has the administrator full access to all the users in the organization? Have you checked that the administator may impersonate?

eL-Prova's user avatar

  • Thx ;) I found the problem, the exchange was installed in hosted mode. so impersonation only works in the appropriate organisational unit. –  electronico Commented Sep 5, 2012 at 15:53

Your Answer

Reminder: Answers generated by artificial intelligence tools are not allowed on Stack Overflow. Learn more

Sign up or log in

Post as a guest.

Required, but never shown

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy .

Not the answer you're looking for? Browse other questions tagged email exchange-server contacts impersonation or ask your own question .

  • The Overflow Blog
  • The hidden cost of speed
  • The creator of Jenkins discusses CI/CD and balancing business with open source
  • Featured on Meta
  • Announcing a change to the data-dump process
  • Bringing clarity to status tag usage on meta sites
  • What does a new user need in a homepage experience on Stack Overflow?
  • Feedback requested: How do you use tag hover descriptions for curating and do...
  • Staging Ground Reviewer Motivation

Hot Network Questions

  • How to raise and lower indices as a physicist would handle it?
  • Nausea during high altitude cycling climbs
  • "Mixture, Pitch then Power" - why?
  • How does the phrase "a longe" meaning "from far away" make sense syntactically? Shouldn't it be "a longo"?
  • In which town of Europe (Germany ?) were this 2 photos taken during WWII?
  • Approximations for a Fibonacci-Like Sequence
  • No displayport over USBC with lenovo ideapad gaming 3 (15IHU6)
  • Wien's displacement law
  • Is the 2024 Ukrainian invasion of the Kursk region the first time since WW2 Russia was invaded?
  • Could a lawyer agree not to take any further cases against a company?
  • Websites assume the wrong country after using a VPN
  • What's the purpose of scanning the area before opening the portal?
  • Enumitem + color labels + multiline = bug?
  • Show that an operator is not compact.
  • Are others allowed to use my copyrighted figures in theses, without asking?
  • What`s this? (Found among circulating tumor cells)
  • how do I fix apt-file? - not working and added extra repos
  • What was the typical amount of disk storage for a mainframe installation in the 1980s?
  • Does a party have to wait 1d4 hours to start a Short Rest if no healing is available and an ally is only stabilized?
  • Is it helpful to use a thicker gauge wire for only part of a long circuit run that could have higher loads?
  • Does the average income in the US drop by $9,500 if you exclude the ten richest Americans?
  • Simulate Minecraft Redstone | Where to start?
  • Is my magic enough to keep a person without skin alive for a month?
  • What is the first work of fiction to feature a vampire-human hybrid or dhampir vampire hunter as a protagonist?

new managementroleassignment applicationimpersonation

  • Knowledge Base

For Admins: How do I configure the Impersonation Role for Exchange Calendar Sync?

The following information was sourced from Microsoft's how-to guide here:

Microsoft - How to: Configure impersonation

Impersonation enables a caller, such as a service application, to impersonate a user account. The caller can perform operations by using the permissions that are associated with the impersonated account instead of the permissions associated with the caller’s account.

Exchange Online, Exchange Online as part of Office 365, and versions of Exchange starting with Exchange 2013 use role-based access control (RBAC) to assign permissions to accounts. Your Exchange server administrator will need to grant any service account that will be impersonating other users the ApplicationImpersonation role by using the New-ManagementRoleAssignment cmdlet.

Configuring the Application Impersonation role

When you or your Exchanger server administrator assigns the ApplicationImpersonation role, use the following parameters of the New-ManagementRoleAssignment cmdlet:

  • Name — The friendly name of the role assignment. Each time that you assign a role, an entry is made in the RBAC roles list. You can verify role assignments by using the Get-ManagementRoleAssignment cmdlet.
  • Role — The RBAC role to assign. When you set up impersonation, you assign the ApplicationImpersonation role.
  • User — The service account.
  • CustomRecipientScope — The scope of users that the service account can impersonate. The service account will only be allowed to impersonate other users within the specified scope. If no scope is specified, the service account is granted the ApplicationImpersonation role over all users in an organization. You can create custom management scopes by using the New-ManagementScope cmdlet.

Before you can configure impersonation, you need:

  • Administrative credentials for the Exchange server.
  • Domain Administrator credentials, or other credentials with the permission to create and assign roles and scopes.
  • Exchange management tools. These are installed on the computer from which you will run the commands.

To configure impersonation for all users in an organization:

  • Open the Exchange Management Shell. From the Start menu, choose All Programs > Microsoft Exchange Server 2013.

Run the New-ManagementRoleAssignment cmdlet to add the impersonation permission to the specified user. The following example shows how to configure impersonation to enable a service account to impersonate all other users in an organization.

Windows PowerShell

New-ManagementRoleAssignment –name:impersonationAssignmentName –Role:ApplicationImpersonation –User:serviceAccount 

To configure impersonation for specific users or groups of users:

  • Run the New-ManagementScope cmdlet to create a scope to which the impersonation role can be assigned. If an existing scope is available, you can skip this step. The following example shows how to create a management scope for a specific group.

Windows PowerShell   New-ManagementScope –Name:scopeName –RecipientRestrictionFilter:recipientFilter

The RecipientRestrictionFilter parameter of the New-ManagementScope cmdlet defines the members of the scope. You can use the properties of the Identity object to create the filter. The following example is a filter that restricts the result to a single user with the user name "john."

Windows PowerShell   Name –eq "john"

Run the New-ManagementRoleAssignment cmdlet to add the permission to impersonate the members of the specified scope. The following example shows how to configure a service account to impersonate all users in a scope.

Windows PowerShell   New-ManagementRoleAssignment –Name:impersonationAssignmentName –Role:ApplicationImpersonation –User:serviceAccount –CustomRecipientWriteScope:scopeName

After your administrator grants impersonation permissions, you can use the service account to make calls against other users’ accounts. You can verify role assignments by using the Get-ManagementRoleAssignment cmdlet.

badges-of-honor.png

Related Articles

For Admins: How do I upgrade my org to the new Cirrus Insight?

The new Cirrus Insight brings all the best features from Cirrus Insight 2019 into a more refined, reliable, and easy-to-use offering that reduces CRM friction and helps close deals.

January 2021 Release Notes

In order to maintain performance and stability while also reducing customer resource drain, the default sync interval will be increased from 5 minutes to 2 hours as of 4/21/2021.

For Admins: Why are users missing from the Admin-Managed Sync list?

What sales tax will I be charged?

Based on your address, you may be charged local/state sales tax on Cirrus Insight purchases.

For Admins: How do I access payment history to download receipts?

Learn how to access payment history and download receipts.

new managementroleassignment applicationimpersonation

  • Account Management
  • Add to Salesforce
  • Book Meeting
  • Calendar Sync
  • Specifications
  • Knowledgebase
  • Pinned  
', basehref+''); d.add(78, 0, 'Riva Cloud - CRM Sync', basehref+'78/', 'Riva Cloud - CRM Sync', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(911, 78, 'Need More Info Before Starting?', basehref+'911/', 'Need More Info Before Starting?', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(905, 911, 'What is Riva Cloud?', basehref+'905/', 'What is Riva Cloud?', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(876, 911, 'Do You Need Riva On-Premise Instead?', basehref+'876/', 'Do You Need Riva On-Premise Instead?', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(912, 911, 'How Riva Syncs Your Data', basehref+'912/', 'How Riva Syncs Your Data', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(921, 912, 'How Riva Syncs Your CRM and Email System', basehref+'921/', 'How Riva Syncs Your CRM and Email System', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(922, 912, 'How Riva Syncs with Your Mobile', basehref+'922/', 'How Riva Syncs with Your Mobile', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(942, 911, 'Background Technical Information', basehref+'942/', 'Background Technical Information', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(973, 78, 'Get Started', basehref+'973/', 'Get Started', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1062, 973, 'Register', basehref+'1062/', 'Register', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(914, 973, 'Choose Your Mode', basehref+'914/', 'Choose Your Mode', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1032, 973, 'User Guides', basehref+'1032/', 'User Guides', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(975, 973, 'Configure Your CRM', basehref+'975/', 'Configure Your CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(978, 975, 'Prepare Your CRM', basehref+'978/', 'Prepare Your CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(980, 978, 'Corporate Mode', basehref+'980/', 'Corporate Mode', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1218, 980, 'Prepare Other CRMs', basehref+'1218/', 'Prepare Other CRMs', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(979, 978, 'Company Mode', basehref+'979/', 'Company Mode', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(898, 975, 'Create Your CRM Connection', basehref+'898/', 'Create Your CRM Connection', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1219, 898, 'Create Other CRM Connections', basehref+'1219/', 'Create Other CRM Connections', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(976, 973, 'Configure Your Email', basehref+'976/', 'Configure Your Email', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1034, 976, 'Prepare Your Email System', basehref+'1034/', 'Prepare Your Email System', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(924, 1034, 'Corporate Mode', basehref+'924/', 'Corporate Mode', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(926, 924, 'Prepare Exchange', basehref+'926/', 'Prepare Exchange', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add('e1249', 926, 'Prepare Office 365 Exchange Online for a Riva EWS Connection', basehref+'entry/1249/', 'Prepare Office 365 Exchange Online for a Riva EWS Connection', '', icon_path+'article.svg', icon_path+'article.svg'); d.add('e1114', 926, ' Prepare Microsoft 365 Exchange Permissions for Riva Connections', +'entry/1114/', 'Prepare Microsoft 365 Exchange Permissions for Riva Connections', '', icon_path+'article.svg', icon_path+'article.svg'); d.add('e467', 926, 'Prepare the Exchange Mailbox for the Riva Connection User', basehref+'entry/467/', 'Prepare the Exchange Mailbox for the Riva Connection User', '', icon_path+'article.svg', icon_path+'article.svg'); d.add('e348', 926, 'Testing the Exchange Connection Account', basehref+'entry/348/', 'Testing the Exchange Connection Account', '', icon_path+'article.svg', icon_path+'article.svg'); d.add('e486', 926, 'AppRiver: How to Request "Delegate Full Access" Permissions', basehref+'entry/486/', 'AppRiver: How to Request "Delegate Full Access" Permissions', '', icon_path+'article.svg', icon_path+'article.svg'); d.add('e510', 926, 'IT Solutions Now: How to add "Delegate Full Access" on User Mailboxes', basehref+'entry/510/', 'IT Solutions Now: How to add "Delegate Full Access" on User Mailboxes', '', icon_path+'article.svg', icon_path+'article.svg'); d.add('e509', 926, 'Rackspace: Add "Delegate Full Access" for User Mailboxes', basehref+'entry/509/', 'Rackspace: Add "Delegate Full Access" for User Mailboxes', '', icon_path+'article.svg', icon_path+'article.svg'); d.add(1035, 1034, 'Company Mode', basehref+'1035/', 'Company Mode', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(899, 976, 'Create Your Email Connection', basehref+'899/', 'Create Your Email Connection', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(900, 973, 'Configure Your Sync Policy', basehref+'900/', 'Configure Your Sync Policy', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(927, 78, 'Already Started', basehref+'927/', 'Already Started', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(915, 927, 'Manage Your Account', basehref+'915/', 'Manage Your Account', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(916, 927, 'Manage Your Connections', basehref+'916/', 'Manage Your Connections', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(941, 927, 'Manage Your Sync Policy', basehref+'941/', 'Manage Your Sync Policy', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1093, 941, 'General', basehref+'1093/', 'General', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1094, 941, 'Address Book', basehref+'1094/', 'Address Book', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1095, 941, 'Calendaring', basehref+'1095/', 'Calendaring', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(917, 927, 'Manage Users', basehref+'917/', 'Manage Users', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(965, 927, 'Manage Your CRM for Riva', basehref+'965/', 'Manage Your CRM for Riva', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(967, 965, 'Salesforce', basehref+'967/', 'Salesforce', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1000, 967, 'Salesforce Procedures', basehref+'1000/', 'Salesforce Procedures', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1161, 967, 'Advanced Options & Settings', basehref+'1161/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1162, 1161, 'General', basehref+'1162/', 'General', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1163, 1161, 'Default Field Mappings', basehref+'1163/', 'Default Field Mappings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1164, 1161, 'Accounts', basehref+'1164/', 'Accounts', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1165, 1161, 'Contacts and Leads', basehref+'1165/', 'Contacts and Leads', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1166, 1161, 'Email', basehref+'1166/', 'Email', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1167, 1161, 'Events', basehref+'1167/', 'Events', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1168, 1161, 'Tasks', basehref+'1168/', 'Tasks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1001, 1161, 'Archive', basehref+'1001/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1013, 967, 'Errors & Troubleshooting', basehref+'1013/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1059, 967, 'Deprecated Articles', basehref+'1059/', 'Deprecated Articles', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(986, 965, 'Microsoft Dynamics CRM', basehref+'986/', 'Microsoft Dynamics CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(995, 986, 'Advanced Options & Settings', basehref+'995/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1007, 986, 'Errors & Troubleshooting', basehref+'1007/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(990, 965, 'SAP Hybris Sales (SAP C4C)', basehref+'990/', 'SAP Hybris Sales (SAP C4C)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1002, 990, 'Advanced Options & Settings', basehref+'1002/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1014, 990, 'Errors & Troubleshooting', basehref+'1014/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(968, 965, 'NetSuite', basehref+'968/', 'NetSuite', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(996, 968, 'Advanced Options & Settings', basehref+'996/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1009, 968, 'Errors & Troubleshooting', basehref+'1009/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(987, 965, 'Oracle CRM On Demand', basehref+'987/', 'Oracle CRM On Demand', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(997, 987, 'Advanced Options & Settings', basehref+'997/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1010, 987, 'Errors & Troubleshooting', basehref+'1010/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(988, 965, 'Oracle Sales Cloud', basehref+'988/', 'Oracle Sales Cloud', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(998, 988, 'Advanced Options & Settings', basehref+'998/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1011, 988, 'Errors & Troubleshooting', basehref+'1011/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(989, 965, 'Sage CRM', basehref+'989/', 'Sage CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(999, 989, 'Advanced Options & Settings', basehref+'999/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1012, 989, 'Errors & Troubleshooting', basehref+'1012/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(969, 965, 'Sugar', basehref+'969/', 'Sugar', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1003, 969, 'Advanced Options & Settings', basehref+'1003/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1015, 969, 'Errors & Troubleshooting', basehref+'1015/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1033, 1015, 'Archive', basehref+'1033/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(991, 965, 'SuiteCRM', basehref+'991/', 'SuiteCRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1017, 991, 'Advanced Options & Settings', basehref+'1017/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1016, 991, 'Errors & Troubleshooting', basehref+'1016/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1132, 965, 'Others', basehref+'1132/', 'Others', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(983, 1132, '1CRM (info@hand)', basehref+'983/', '1CRM (info@hand)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(992, 983, 'Advanced Options & Settings', basehref+'992/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1043, 983, 'Errors and Troubleshooting', basehref+'1043/', 'Errors and Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(985, 1132, 'intelecrm', basehref+'985/', 'intelecrm', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(994, 985, 'Advanced Options & Settings', basehref+'994/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1006, 985, 'Errors & Troubleshooting', basehref+'1006/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(966, 927, 'Manage Your Email System for Riva', basehref+'966/', 'Manage Your Email System for Riva', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1216, 966, 'Migrating Exchange to Office 365', basehref+'1216/', 'Migrating Exchange to Office 365', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1057, 966, 'Exchange', basehref+'1057/', 'Exchange', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1179, 1057, 'Advanced Options & Settings', basehref+'1179/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1217, 1057, 'Errors & Troubleshooting', basehref+'1217/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1058, 966, 'HCL Notes', basehref+'1058/', 'HCL Notes', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1223, 1058, 'Errors & Troubleshooting', basehref+'1223/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1056, 966, 'Google', basehref+'1056/', 'Google', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1077, 1056, 'Errors & Troubleshooting', basehref+'1077/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1143, 927, 'Troubleshooting (Includes Monitoring)', basehref+'1143/', 'Troubleshooting (Includes Monitoring)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1145, 1143, 'Resolving Data Sync Issues', basehref+'1145/', 'Resolving Data Sync Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1228, 1143, 'Resolving Connection Issues', basehref+'1228/', 'Resolving Connection Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(621, 78, 'Change Log', basehref+'621/', 'Change Log', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(642, 621, 'Release notes', basehref+'642/', 'Release notes', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(896, 78, 'Additional Information', basehref+'896/', 'Additional Information', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(974, 896, 'Authentication', basehref+'974/', 'Authentication', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1113, 896, 'EULA', basehref+'1113/', 'EULA', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(619, 896, 'Admin Guides', basehref+'619/', 'Admin Guides', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(904, 896, 'Common Procedures', basehref+'904/', 'Common Procedures', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(923, 896, 'Deprecated Articles', basehref+'923/', 'Deprecated Articles', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(475, 923, 'Archive: Older Articles', basehref+'475/', 'Archive: Older Articles', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1251, 896, 'Partner Documentation', basehref+'1251/', 'Partner Documentation', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1234, 78, 'Riva for Salesforce Advisor Link (SAL)', basehref+'1234/', 'Riva for Salesforce Advisor Link (SAL)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(47, 0, 'Riva On-Premise - CRM Sync', basehref+'47/', 'Riva On-Premise - CRM Sync', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(625, 47, 'How Riva Syncs Your Data (User Guides)', basehref+'625/', 'How Riva Syncs Your Data (User Guides)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(679, 47, 'Get Started with Riva On-Premise', basehref+'679/', 'Get Started with Riva On-Premise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(684, 679, 'Planning & Design', basehref+'684/', 'Planning & Design', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(734, 679, 'Get Started Bundle', basehref+'734/', 'Get Started Bundle', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(744, 679, 'Deploy Riva On-Premise', basehref+'744/', 'Deploy Riva On-Premise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(680, 744, 'Step 1 - Prepare', basehref+'680/', 'Step 1 - Prepare', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(750, 680, 'System Requirements', basehref+'750/', 'System Requirements', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(390, 680, 'Prepare Your CRM for Riva', basehref+'390/', 'Prepare Your CRM for Riva', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(775, 390, 'Salesforce', basehref+'775/', 'Salesforce', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(758, 390, 'Microsoft Dynamics CRM', basehref+'758/', 'Microsoft Dynamics CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(777, 390, 'SAP Hybris Sales (SAP C4C)', basehref+'777/', 'SAP Hybris Sales (SAP C4C)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(742, 390, 'GoldMine', basehref+'742/', 'GoldMine', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(760, 390, 'NetSuite', basehref+'760/', 'NetSuite', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(762, 390, 'Oracle CRM On Demand', basehref+'762/', 'Oracle CRM On Demand', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(771, 390, 'Oracle Sales Cloud', basehref+'771/', 'Oracle Sales Cloud', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(779, 390, 'Sugar & Sugar On-Demand', basehref+'779/', 'Sugar & Sugar On-Demand', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(781, 390, 'SuiteCRM', basehref+'781/', 'SuiteCRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1133, 390, 'Others', basehref+'1133/', 'Others', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(741, 1133, '1 CRM (info@hand)', basehref+'741/', '1 CRM (info@hand)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(756, 1133, 'intelecrm', basehref+'756/', 'intelecrm', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(702, 390, '[Archive of Retired Content]', basehref+'702/', '[Archive of Retired Content]', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(683, 680, 'Prepare Email Systems for Riva', basehref+'683/', 'Prepare Email Systems for Riva', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(689, 683, 'Exchange', basehref+'689/', 'Exchange', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(690, 683, 'HCL Notes (IBM Notes)', basehref+'690/', 'HCL Notes (IBM Notes)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(691, 683, 'Google', basehref+'691/', 'Google', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(785, 680, 'Prepare Test Users', basehref+'785/', 'Prepare Test Users', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(681, 744, 'Step 2 - Install', basehref+'681/', 'Step 2 - Install', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(686, 681, 'Install Riva On-Premise', basehref+'686/', 'Install Riva On-Premise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(788, 681, 'Common Install Procedures', basehref+'788/', 'Common Install Procedures', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(687, 681, 'Create Email Connections', basehref+'687/', 'Create Email Connections', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1091, 687, 'Office 365', basehref+'1091/', 'Office 365', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(737, 687, 'Exchange', basehref+'737/', 'Exchange', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1248, 687, 'Graph', basehref+'1248/', 'Graph', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(738, 687, 'HCL Notes (IBM Notes)', basehref+'738/', 'HCL Notes (IBM Notes)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(739, 687, 'Google', basehref+'739/', 'Google', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(688, 681, 'Create CRM Connections', basehref+'688/', 'Create CRM Connections', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(776, 688, 'Salesforce', basehref+'776/', 'Salesforce', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(768, 688, 'Microsoft Dynamics CRM', basehref+'768/', 'Microsoft Dynamics CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(778, 688, 'SAP Hybris Sales (SAP C4C)', basehref+'778/', 'SAP Hybris Sales (SAP C4C)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(765, 688, 'GoldMine', basehref+'765/', 'GoldMine', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(769, 688, 'NetSuite', basehref+'769/', 'NetSuite', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(770, 688, 'Oracle CRM On Demand', basehref+'770/', 'Oracle CRM On Demand', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(772, 688, 'Oracle Sales Cloud', basehref+'772/', 'Oracle Sales Cloud', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(780, 688, 'Sugar & Sugar On-Demand', basehref+'780/', 'Sugar & Sugar On-Demand', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(782, 688, 'SuiteCRM', basehref+'782/', 'SuiteCRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1134, 688, 'Others', basehref+'1134/', 'Others', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(764, 1134, '1 CRM (info@hand)', basehref+'764/', '1 CRM (info@hand)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(767, 1134, 'intelecrm', basehref+'767/', 'intelecrm', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(784, 681, 'Licensing', basehref+'784/', 'Licensing', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(745, 744, 'Step 3 - Configure', basehref+'745/', 'Step 3 - Configure', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(748, 745, 'Sync Policies', basehref+'748/', 'Sync Policies', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(749, 745, 'Riva Services', basehref+'749/', 'Riva Services', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(746, 744, 'Step 4 - Enable', basehref+'746/', 'Step 4 - Enable', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(747, 744, 'Step 5 - Evaluate', basehref+'747/', 'Step 5 - Evaluate', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(786, 47, 'Manage Riva On-Premise (Admin Guides)', basehref+'786/', 'Manage Riva On-Premise (Admin Guides)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(373, 786, 'Manage the Riva Server', basehref+'373/', 'Manage the Riva Server', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(350, 373, 'Performance Tuning', basehref+'350/', 'Performance Tuning', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(378, 373, 'Maintenance Procedures', basehref+'378/', 'Maintenance Procedures', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(846, 373, 'Upgrade Riva On-Premise', basehref+'846/', 'Upgrade Riva On-Premise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1245, 373, 'Riva CLI Tool', basehref+'1245/', 'Riva CLI Tool', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1243, 1245, 'Riva CLI Commands', basehref+'1243/', 'Riva CLI Commands', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(429, 373, 'Manage Connections', basehref+'429/', 'Manage Connections', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(435, 429, 'HTTP Proxy Settings', basehref+'435/', 'HTTP Proxy Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(434, 429, 'CRM Connections', basehref+'434/', 'CRM Connections', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(508, 434, 'Advanced Options & Settings', basehref+'508/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(432, 429, 'Exchange Connections', basehref+'432/', 'Exchange Connections', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(433, 429, 'GroupWise Connections', basehref+'433/', 'GroupWise Connections', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(215, 373, 'Manage Server Licensing', basehref+'215/', 'Manage Server Licensing', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(194, 373, 'Manage Server Configuration', basehref+'194/', 'Manage Server Configuration', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(449, 194, 'How to', basehref+'449/', 'How to', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(437, 194, 'App.Settings', basehref+'437/', 'App.Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(436, 194, 'Upgrades & Moving the Server', basehref+'436/', 'Upgrades & Moving the Server', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(448, 194, 'Errors & Troubleshooting', basehref+'448/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(789, 373, 'Manage Disaster Recovery Procedures', basehref+'789/', 'Manage Disaster Recovery Procedures', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(791, 373, 'Manage Sync Policies', basehref+'791/', 'Manage Sync Policies', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(355, 791, 'Manage Sync Policies', basehref+'355/', 'Manage Sync Policies', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1137, 355, 'Testing Policy Changes', basehref+'1137/', 'Testing Policy Changes', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1110, 355, 'Rename Users, Folders, and Categories', basehref+'1110/', 'Rename Users, Folders, and Categories', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1102, 355, 'Re-Initialize', basehref+'1102/', 'Re-Initialize', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1106, 1102, 'Re-Initialization Options', basehref+'1106/', 'Re-Initialization Options', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(438, 355, 'Sync Start Time & Scheduling', basehref+'438/', 'Sync Start Time & Scheduling', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1085, 355, 'Address Book', basehref+'1085/', 'Address Book', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(439, 1085, 'Contacts and/or Leads', basehref+'439/', 'Contacts and/or Leads', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1084, 1085, 'Accounts (Organizations)', basehref+'1084/', 'Accounts (Organizations)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(440, 355, 'Calendar', basehref+'440/', 'Calendar', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(441, 355, 'Tasks', basehref+'441/', 'Tasks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(442, 355, 'Other', basehref+'442/', 'Other', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(443, 355, 'SmartConvert', basehref+'443/', 'SmartConvert', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(444, 355, 'Sent Items', basehref+'444/', 'Sent Items', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(445, 355, 'AssignTo', basehref+'445/', 'AssignTo', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(446, 355, 'Connection Options', basehref+'446/', 'Connection Options', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(447, 355, 'Advanced Options and Settings', basehref+'447/', 'Advanced Options and Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(477, 791, 'Manage Sync Policies - GroupWise', basehref+'477/', 'Manage Sync Policies - GroupWise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(671, 477, 'How to', basehref+'671/', 'How to', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(479, 477, 'Sync Start Date & Scheduling', basehref+'479/', 'Sync Start Date & Scheduling', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(480, 477, 'Address Book', basehref+'480/', 'Address Book', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(481, 477, 'Calendar', basehref+'481/', 'Calendar', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(482, 477, 'Tasks', basehref+'482/', 'Tasks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(483, 477, 'Other / Smart Convert / Assign To', basehref+'483/', 'Other / Smart Convert / Assign To', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(484, 477, 'Connection Options / Advanced Options', basehref+'484/', 'Connection Options / Advanced Options', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(360, 373, 'Manage Target Users', basehref+'360/', 'Manage Target Users', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(478, 373, 'Manage Target Users - GroupWise', basehref+'478/', 'Manage Target Users - GroupWise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1063, 786, 'Scale Up with Multiple Riva Nodes', basehref+'1063/', 'Scale Up with Multiple Riva Nodes', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(377, 786, 'Email Systems', basehref+'377/', 'Email Systems', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(807, 377, 'Migrating Exchange to Office 365', basehref+'807/', 'Migrating Exchange to Office 365', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(197, 377, 'Exchange (EWS)', basehref+'197/', 'Exchange (EWS)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(417, 197, 'Advanced Options & Settings', basehref+'417/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(420, 197, 'Errors & Troubleshooting', basehref+'420/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(367, 197, 'Hosted Exchange', basehref+'367/', 'Hosted Exchange', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(511, 377, 'HCL Notes (IBM Notes)', basehref+'511/', 'HCL Notes (IBM Notes)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(515, 511, 'Installation Guide - Connector', basehref+'515/', 'Installation Guide - Connector', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(628, 511, 'Advanced Options & Settings', basehref+'628/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(616, 511, 'Common Errors', basehref+'616/', 'Common Errors', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(650, 377, 'Google (Gmail)', basehref+'650/', 'Google (Gmail)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(651, 650, 'Advanced Options & Settings', basehref+'651/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(669, 650, 'Errors & Troubleshooting', basehref+'669/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(196, 377, 'GroupWise', basehref+'196/', 'GroupWise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(418, 196, 'Advanced Options & Settings', basehref+'418/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(430, 196, 'Errors & Troubleshooting', basehref+'430/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(421, 377, 'Changes to Email Systems', basehref+'421/', 'Changes to Email Systems', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(248, 377, 'Support for Mac Native Apps', basehref+'248/', 'Support for Mac Native Apps', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(247, 377, 'Support for Mobile Devices', basehref+'247/', 'Support for Mobile Devices', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(422, 377, 'Working in Outlook', basehref+'422/', 'Working in Outlook', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(195, 377, 'Exchange 2003 (MAPI)', basehref+'195/', 'Exchange 2003 (MAPI)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(416, 195, 'Advanced Options & Settings', basehref+'416/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(419, 195, 'Errors & Troubleshooting', basehref+'419/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(376, 786, 'CRM Systems', basehref+'376/', 'CRM Systems', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(193, 376, 'Salesforce', basehref+'193/', 'Salesforce', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(386, 193, 'Salesforce Procedures', basehref+'386/', 'Salesforce Procedures', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(473, 386, 'Archive: Older Setup Procedures', basehref+'473/', 'Archive: Older Setup Procedures', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(384, 473, 'Set up Single-User Sync Policies (Non-SSO)', basehref+'384/', 'Set up Single-User Sync Policies (Non-SSO)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(472, 473, 'Deploy Riva - Enterprise Impersonation (SSO)', basehref+'472/', 'Deploy Riva - Enterprise Impersonation (SSO)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(387, 472, 'Set up using On-Premise SSO Provider', basehref+'387/', 'Set up using On-Premise SSO Provider', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(395, 387, 'Archive: Older SSO Articles', basehref+'395/', 'Archive: Older SSO Articles', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(370, 472, 'Set up using Hosted SSO', basehref+'370/', 'Set up using Hosted SSO', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1160, 193, 'Advanced Options & Settings', basehref+'1160/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1153, 1160, 'General', basehref+'1153/', 'General', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1154, 1160, 'Default Field Mappings', basehref+'1154/', 'Default Field Mappings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1155, 1160, 'Accounts', basehref+'1155/', 'Accounts', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1156, 1160, 'Contacts and Leads', basehref+'1156/', 'Contacts and Leads', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1157, 1160, 'Email', basehref+'1157/', 'Email', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1158, 1160, 'Events', basehref+'1158/', 'Events', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1240, 1160, 'Interactions (FSC)', basehref+'1240/', 'Interactions (FSC)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1159, 1160, 'Tasks', basehref+'1159/', 'Tasks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(383, 1160, 'Misc.', basehref+'383/', 'Misc.', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(710, 1160, 'Archive', basehref+'710/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(382, 193, 'Errors & Troubleshooting', basehref+'382/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(982, 193, 'Archive', basehref+'982/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(188, 376, 'Microsoft Dynamics CRM', basehref+'188/', 'Microsoft Dynamics CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(404, 188, 'Advanced Options & Settings', basehref+'404/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(414, 188, 'Errors & Troubleshooting', basehref+'414/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(843, 188, 'Archive of Legacy Articles', basehref+'843/', 'Archive of Legacy Articles', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(645, 376, 'SAP Hybris Sales (SAP C4C)', basehref+'645/', 'SAP Hybris Sales (SAP C4C)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(653, 645, 'Advanced Options & Settings', basehref+'653/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(654, 645, 'Errors & Troubleshooting', basehref+'654/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(185, 376, 'GoldMine', basehref+'185/', 'GoldMine', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(372, 185, 'Advanced Options & Settings', basehref+'372/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(371, 185, 'Errors & Troubleshooting', basehref+'371/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(212, 376, 'Infor CloudSuite CRM (Saleslogix; Infor CRM)', basehref+'212/', 'Infor CloudSuite CRM (Saleslogix; Infor CRM)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(409, 212, 'Advanced Options & Settings', basehref+'409/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(427, 212, 'Errors & Troubleshooting', basehref+'427/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(191, 376, 'NetSuite CRM', basehref+'191/', 'NetSuite CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(407, 191, 'Advanced Options & Settings', basehref+'407/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(425, 191, 'Errors & Troubleshooting', basehref+'425/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(192, 376, 'Oracle CRM On Demand', basehref+'192/', 'Oracle CRM On Demand', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(408, 192, 'Advanced Options & Settings', basehref+'408/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(426, 192, 'Errors & Troubleshooting', basehref+'426/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(606, 376, 'Oracle Sales Cloud', basehref+'606/', 'Oracle Sales Cloud', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(607, 606, 'Advanced Options & Settings', basehref+'607/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(608, 606, 'Errors & Troubleshooting', basehref+'608/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(198, 376, 'Sage CRM', basehref+'198/', 'Sage CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(410, 198, 'Advanced Options & Settings', basehref+'410/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(428, 198, 'Errors & Troubleshooting', basehref+'428/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(183, 376, 'Sugar', basehref+'183/', 'Sugar', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(411, 183, 'Advanced Options & Settings', basehref+'411/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(711, 411, 'Archive', basehref+'711/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(423, 183, 'Errors & Troubleshooting', basehref+'423/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(706, 423, 'Archive', basehref+'706/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(735, 376, 'SuiteCRM', basehref+'735/', 'SuiteCRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1018, 735, 'Advanced Options & Settings', basehref+'1018/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1019, 735, 'Errors & Troubleshooting', basehref+'1019/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1136, 376, 'Others', basehref+'1136/', 'Others', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(186, 1136, '1CRM (info@hand)', basehref+'186/', '1CRM (info@hand)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(402, 186, 'Advanced Options & Settings', basehref+'402/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(712, 402, 'Archive', basehref+'712/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(412, 186, 'Errors & Troubleshooting', basehref+'412/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(707, 412, 'Archive', basehref+'707/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(187, 1136, 'intelecrm', basehref+'187/', 'intelecrm', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(403, 187, 'Advanced Options & Settings', basehref+'403/', 'Advanced Options & Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(709, 403, 'Archive', basehref+'709/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(413, 187, 'Errors & Troubleshooting', basehref+'413/', 'Errors & Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(708, 413, 'Archive', basehref+'708/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(803, 786, 'Other Systems', basehref+'803/', 'Other Systems', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(375, 786, 'Troubleshooting (Includes Monitoring)', basehref+'375/', 'Troubleshooting (Includes Monitoring)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1171, 375, 'Logs', basehref+'1171/', 'Logs', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(380, 375, 'Resolving Riva Server Issues', basehref+'380/', 'Resolving Riva Server Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(369, 375, 'Resolving Exchange Connection Issues', basehref+'369/', 'Resolving Exchange Connection Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(431, 375, 'Resolving GroupWise Connection Issues', basehref+'431/', 'Resolving GroupWise Connection Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(358, 375, 'Resolving CRM Connection Issues', basehref+'358/', 'Resolving CRM Connection Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1021, 358, 'Archive', basehref+'1021/', 'Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(792, 375, 'Resolving Sync Policy Issues', basehref+'792/', 'Resolving Sync Policy Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(379, 375, 'Resolving License Issues', basehref+'379/', 'Resolving License Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(356, 375, 'Resolving Data Sync Issues', basehref+'356/', 'Resolving Data Sync Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(451, 375, 'Resolving Microsoft Issues', basehref+'451/', 'Resolving Microsoft Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(450, 375, 'Resolving Novell Issues', basehref+'450/', 'Resolving Novell Issues', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(787, 786, 'Archive of Deprecated Articles', basehref+'787/', 'Archive of Deprecated Articles', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1254, 47, 'Riva Admin Center', basehref+'1254/', 'Riva Admin Center', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(96, 47, 'Release Notes', basehref+'96/', 'Release Notes', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1291, 0, 'Riva Sales Engagement', basehref+'1291/', 'Riva Sales Engagement', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1292, 1291, 'Admin Settings', basehref+'1292/', 'Admin Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1295, 1292, 'Setting up with Salesforce', basehref+'1295/', 'Setting up with Salesforce', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1293, 1291, 'User Settings', basehref+'1293/', 'User Settings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1294, 1291, 'User Guides', basehref+'1294/', 'User Guides', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(638, 0, 'Riva Insight', basehref+'638/', 'Riva Insight', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(848, 638, 'FAQs: Riva Insight', basehref+'848/', 'FAQs: Riva Insight', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(640, 638, 'How to Use Riva Insight (User Guides)', basehref+'640/', 'How to Use Riva Insight (User Guides)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(813, 638, 'Get Started with Riva Insight', basehref+'813/', 'Get Started with Riva Insight', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(838, 813, 'Planning', basehref+'838/', 'Planning', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(814, 813, 'Deploy Riva Insight', basehref+'814/', 'Deploy Riva Insight', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(818, 814, 'Step 1 - Prepare', basehref+'818/', 'Step 1 - Prepare', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(639, 814, 'Step 2 - Install', basehref+'639/', 'Step 2 - Install', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1099, 639, 'Install Riva Insight for Outlook', basehref+'1099/', 'Install Riva Insight for Outlook', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1101, 1099, 'Install the Riva Insight Outlook Web Add-In', basehref+'1101/', 'Install the Riva Insight Outlook Web Add-In', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1221, 639, 'Install Riva Insight On-Premise', basehref+'1221/', 'Install Riva Insight On-Premise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(819, 814, 'Step 3 - Configure', basehref+'819/', 'Step 3 - Configure', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(823, 814, 'Step 4 - Enable', basehref+'823/', 'Step 4 - Enable', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1233, 638, 'Managing Riva Insight', basehref+'1233/', 'Managing Riva Insight', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1116, 1233, 'Errors and Troubleshooting', basehref+'1116/', 'Errors and Troubleshooting', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(842, 638, 'Release Notes', basehref+'842/', 'Release Notes', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(844, 638, 'Features', basehref+'844/', 'Features', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1238, 844, 'Meetings', basehref+'1238/', 'Meetings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1209, 1238, 'Attendee List', basehref+'1209/', 'Attendee List', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1239, 1238, 'Meeting Notes', basehref+'1239/', 'Meeting Notes', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1237, 844, 'Record-Relating Picklists', basehref+'1237/', 'Record-Relating Picklists', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1220, 844, 'Field Rules', basehref+'1220/', 'Field Rules', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1211, 844, 'Autosave Drafts in Track in CRM', basehref+'1211/', 'Autosave Drafts in Track in CRM', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1206, 844, 'Subscribe to Salesforce', basehref+'1206/', 'Subscribe to Salesforce', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1232, 844, 'Customizations Based on User Profiles or Records', basehref+'1232/', 'Customizations Based on User Profiles or Records', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1210, 844, 'Manage CRM Records from Riva Insight', basehref+'1210/', 'Manage CRM Records from Riva Insight', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1241, 844, 'Classification Prompt', basehref+'1241/', 'Classification Prompt', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1247, 844, 'Delayed Send', basehref+'1247/', 'Delayed Send', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1246, 0, 'Riva Bookings', basehref+'1246/', 'Riva Bookings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1257, 1246, 'Get Started with Riva Bookings', basehref+'1257/', 'Get Started with Riva Bookings', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1258, 1246, 'How to use Riva Bookings (User Guides)', basehref+'1258/', 'How to use Riva Bookings (User Guides)', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1252, 1246, 'Release Notes', basehref+'1252/', 'Release Notes', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(629, 0, 'Legacy Product Archive', basehref+'629/', 'Legacy Product Archive', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(886, 629, 'Riva for Marketo', basehref+'886/', 'Riva for Marketo', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1115, 629, 'Marketo Sales Insights Panel', basehref+'1115/', 'Marketo Sales Insights Panel', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(92, 629, 'Riva Identity Integration Server', basehref+'92/', 'Riva Identity Integration Server', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(93, 92, 'Riva Identity Integration - FAQs, Tips & Tricks', basehref+'93/', 'Riva Identity Integration - FAQs, Tips & Tricks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(211, 629, 'Sharepoint Webparts for GroupWise', basehref+'211/', 'Sharepoint Webparts for GroupWise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(81, 629, 'CCUweb', basehref+'81/', 'CCUweb', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(79, 629, 'EMU', basehref+'79/', 'EMU', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(90, 79, 'EMU - FAQ, Tips & Tricks', basehref+'90/', 'EMU - FAQ, Tips & Tricks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(99, 79, 'EMU - Setup & User Guide', basehref+'99/', 'EMU - Setup & User Guide', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(102, 99, 'Installation & Upgrade', basehref+'102/', 'Installation & Upgrade', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(103, 99, 'Create & Manage Users', basehref+'103/', 'Create & Manage Users', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(104, 99, 'Manage Home Directories', basehref+'104/', 'Manage Home Directories', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(105, 99, 'Manage GroupWise Accounts', basehref+'105/', 'Manage GroupWise Accounts', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(106, 99, 'Advanced Tasks With EMU', basehref+'106/', 'Advanced Tasks With EMU', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(107, 99, 'Troubleshooting EMU', basehref+'107/', 'Troubleshooting EMU', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(69, 629, 'Riva Management for GroupWise', basehref+'69/', 'Riva Management for GroupWise', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(76, 69, 'Quickstart Guide', basehref+'76/', 'Quickstart Guide', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(77, 69, 'Setup and Configuration Guide', basehref+'77/', 'Setup and Configuration Guide', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(70, 69, 'Riva Managed Policies', basehref+'70/', 'Riva Managed Policies', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(89, 70, 'Riva Policies - FAQ, Tips & Tricks', basehref+'89/', 'Riva Policies - FAQ, Tips & Tricks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(72, 69, 'Riva Managed Applications', basehref+'72/', 'Riva Managed Applications', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(91, 72, 'Riva Managed Applications: FAQ, Tips & Tricks', basehref+'91/', 'Riva Managed Applications: FAQ, Tips & Tricks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(88, 69, 'Riva - FAQ, Tips & Tricks', basehref+'88/', 'Riva - FAQ, Tips & Tricks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(82, 629, 'GWMerge', basehref+'82/', 'GWMerge', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(95, 82, 'FAQ, How-to\'s, Tips & Tricks', basehref+'95/', 'FAQ, How-to\'s, Tips & Tricks', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); d.add(1249, 0, 'Trust and Security Announcements', basehref+'1249/', 'Trust and Security Announcements', '', icon_path+'folder2.svg', icon_path+'folder2.svg'); document.write(d);d.openTo(926, false); //--> / / / / / / / Prepare Microsoft 365 Exchange Permissions for Riva Connections The Riva connection user must be assigned permissions that enable impersonation access into the syncing user mailboxes.

Microsoft 365 supports both and options, but they depend on which Microsoft 365 edition the customer is subscribed to:

Supports either or . Supports ONLY.
 

. .

Assign the Exchange ApplicationImpersonation Permission

Enterprise Microsoft 365 subscriptions support

to a single user and

There are two methods to assign the Exchange "ApplicationImpersonation" role:

. .

Assign the Exchange ApplicationImpersonation Role in the online Exchange Admin Console. (Recommended.)

Follow this procedure in the to assign the Exchange user mailbox (service account for the Riva connection) to an admin role that will grant the impersonation access permissions.

; and in the drop-down, select .

.

window, provide a name and optionally supply a description. Select .

role. Select , and add the Riva connection user to the list.

.

.

 

Assign the Exchange ApplicationImpersonation role by using Powershell

Administrators can use Windows Powershell and connect to their Exchange Online subscription to issue PowerShell cmdlets to assign Application Impersonation role to the Riva connection user with a default scope of all user mailboxes except the admin user.

.

Create a new PowerShell session with Microsoft 365:


Allow configuring Microsoft 365 settings:
 
Allow impersonation in Microsoft 365:
   

 Limit impersonation access to specific mailboxes. Here we create a new management scope that is filtered to a subset of mailboxes, then apply the management scope to the impersonation role.

(Step 1) Create the scope:
   
(Step 2) Assign the management role(s):
 
Finally, close the PowerShell session:
   

Assign Delegate Full Access Permissions

There are two methods to assign these permissions:

. . Assign Delegate Full Access Permissions in the Exchange Admin Console. (Recommended.)

Follow this procedure in the Microsoft 365 Exchange Admin Console to assign the Delegate Full Access permissions from the user being synced by Riva to the Exchange user mailbox for the service account used in the Riva EWS connection.
 

. Select the  that will grant delegate access, then select .

.

 In the list of mailboxes, select the mailbox to grant access to (the  ), and select on the next pane that appears, click .

Use Powershell to Grant Delegate Full Access Permissions

Administrators can use Windows Powershell and connect to their Exchange Online subscription to issue PowerShell cmdlets to assign permissions.

When security policies dictate that full access permissions can be granted only to specific mailboxes, use the cmdlet. This is an Exchange permission that is restricted to mailboxes.

.



Add-MailboxPermission -Identity “isample” -User “[email protected]” -AccessRights FullAccess -AutoMapping $false


 

Get-MailboxPermission -Identity “isample” | Format-List  

When security policies dictate that full access permissions can be granted to all users, use the Get-Mailbox | Add-MailboxPermission cmdlet to bulk assign the permission to all target user mailboxes except the admin mailbox.

.



Get-Mailbox -ResultSize unlimited -Filter {(RecipientTypeDetails -eq 'UserMailbox') -and (Alias -ne 'Admin')} | Add-MailboxPermission -User [email protected] -AccessRights fullaccess -InheritanceType all -AutoMapping $false  

Some customers have reported difficulties with RBAC roles and Exchange Impersonation.

Full support using to assign Exchange Impersonation using RBAC steps are described in . Microsoft 365 Enterprise also supports assigning .

. . . . .

We recommend using custom attributes. Group membership may be used as the basis for a Management Scope's RecipientRestrictionFilter property with Exchange Online/Office 365. However, the MemberOfGroup attribute relies on distinguished names. Microsoft does not currently guarantee that a cloud-hosted organization's distinguished name will remain static. For example, the forest may change. The custom attributes are listed here for client use:

Microsoft has provided documentation on how to use custom attributes, application impersonation, and adding roles to users or universal security groups.


: Our client was using Riva to synchronize Exchange Web Service (EWS) with their CRM.

: EWS synchronization suddenly stopped.

: Impersonation had ceased for the affected users, which caused the sync service to stop.

Furthermore, the client was using a hard-coded value in the RecipientFilter for an attribute controlled by Microsoft.

Set-ManagementScope had the recipient filter scope set to RecipientFilter: MemberOfGroup -eq 'CN=Riva Sync Users,OU=mycompany.com,OU=Microsoft Exchange Hosted Organizations,DC=eurprd07,DC=prod,DC=outlook,DC=com'

In this specific case, the problem surfaced due to a change that Microsoft had implemented in their backend. The change was related to the affected users' organization, which had been relocated to a different forest.

The client resolved the issue by fixing the OPATH filter for the RecipientFilter to use the new forest where the user is located (DC=EURPR07A002).

-->

This article was:   | Thank you for your feedback! -->



Prepare Office 365 Exchange Online for a Riva EWS Connection »

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Get-Management Role Assignment

This cmdlet is available in on-premises Exchange and in the cloud-based service. Some parameters and settings may be exclusive to one environment or the other.

Use the Get-ManagementRoleAssignment cmdlet to retrieve management role assignments.

For information about the parameter sets in the Syntax section below, see Exchange cmdlet syntax .

Description

You can retrieve role assignments in a variety of ways including by assignment type, scope type, or name, and whether the assignment is enabled or disabled. You can also view a list of role assignments that provide access to a specified recipient, server, or database.

For more information about management role assignments, see Understanding management role assignments .

You need to be assigned permissions before you can run this cmdlet. Although this topic lists all parameters for the cmdlet, you may not have access to some parameters if they're not included in the permissions assigned to you. To find the permissions required to run any cmdlet or parameter in your organization, see Find the permissions required to run any Exchange cmdlet .

This example retrieves the Denver Help Desk role assignment using the Get-ManagementRoleAssignment cmdlet and pipes the output to the Format-List cmdlet. For more information about the Format-List cmdlet, see Working with command output .

This example retrieves all the role assignments that are enabled and have been designated as delegating role assignments.

This example retrieves all the role assignments that include the MyGAL recipient-based scope restriction type.

This example retrieves all the role assignments associated with the Mail Recipients management role.

This example retrieves a list of all the users and the role assignments that can modify the recipient Bob.

This example retrieves a list of all exclusive scopes that can modify server objects that match Redmond Executive Servers. The command also lists the users who are effectively assigned the role assignments through role groups or USGs.

This example retrieves all the role assignments that can modify the database Contoso Sales.

-AssignmentMethod

The AssignmentMethod parameter specifies the type of role assignment to include in the results returned by the cmdlet. You can specify one or more of the following values:

  • SecurityGroup
  • RoleAssignmentPolicy

If you provide more than one value, separate each value with a comma.

You must specify a value with the RoleAssignee parameter if you use the AssignmentMethod parameter.

Type:AssignmentMethod[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-ConfigWriteScope

The ConfigWriteScope parameter specifies the type of management configuration scope to include in the results returned by the cmdlet. The valid values are None, OrganizationConfig, CustomConfigScope, and ExclusiveConfigScope.

Type:ConfigWriteScopeType
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-CustomConfigWriteScope

This parameter is available only in on-premises Exchange.

The CustomConfigWriteScope parameter returns only the regular role assignments that include the specified configuration-based regular scope.

This parameter can only be used to retrieve regular configuration-based scopes. To retrieve a list of exclusive configuration-based scopes, use the ExclusiveConfigWriteScope parameter instead.

If the scope name contains spaces, enclose it in quotation marks (").

Type:ManagementScopeIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-CustomRecipientWriteScope

The CustomRecipientWriteScope parameter returns only the regular role assignments that include the specified recipient-based regular scope.

This parameter can only be used to retrieve regular recipient-based scopes. To retrieve a list of exclusive recipient-based scopes, use the ExclusiveRecipientWriteScope parameter instead.

Type:ManagementScopeIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-Delegating

The Delegating parameter specifies whether delegating or regular role assignments should be returned.

By default, both delegating and regular scopes are returned. To return only delegating role assignments, specify a value of $true. To return only regular role assignments, specify a value of $false.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-DomainController

The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name (FQDN). For example, dc01.contoso.com.

Type:Fqdn
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

The Enabled parameter specifies whether enabled or disabled role assignments should be returned. To return enabled role assignments, specify a value of $true. To return disabled role assignments, specify a value of $false.

The Exclusive parameter specifies whether exclusive or regular role assignments should be returned.

By default, both exclusive and regular scopes are returned. To return only exclusive role assignments, specify a value of $true. To return only regular role assignments, specify a value of $false.

-ExclusiveConfigWriteScope

The ExclusiveConfigWriteScope parameter returns only the exclusive role assignments that include the specified configuration-based exclusive scope.

This parameter can only be used to retrieve exclusive configuration-based scopes. To retrieve a list of regular configuration-based scopes, use the CustomConfigWriteScope parameter instead.

-ExclusiveRecipientWriteScope

The ExclusiveRecipientWriteScope parameter returns only the exclusive role assignments that include the specified recipient-based exclusive scope.

This parameter can only be used to retrieve exclusive recipient-based scopes. To retrieve a list of regular recipient-based scopes, use the CustomRecipientWriteScope parameter instead.

-GetEffectiveUsers

The GetEffectiveUsers switch specifies that the command should show the list of users in the role groups, role assignment policies, or USGs that are associated with the role assignment. You don't need to specify a value with this switch.

Effectively, users are associated with the role assignment through their role group, role assignment policy, or USG memberships.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

The Identity parameter specifies the name of the role assignment to retrieve. If the name of the role assignment contains spaces, enclose it in quotation marks ("). If the RoleAssignee parameter is used, you can't use the Identity parameter.

Type:RoleAssignmentIdParameter
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-RecipientAdministrativeUnitScope

This parameter is functional only in the cloud-based service.

The RecipientAdministrativeUnitScope parameter returns only the role assignments that include the specified administrative unit.

Administrative units are Microsoft Entra containers of resources. You can view the available administrative units by using the Get-AdministrativeUnit cmdlet.

Type:AdministrativeUnitIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-RecipientGroupScope

This parameter is available only in the cloud-based service.

The RecipientGroupScope parameter returns only the role assignments that are scoped to groups. You can use any value that uniquely identifies the group: Name, DistinguishedName, GUID, DisplayName.

Type:GroupIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online, Exchange Online Protection

-RecipientOrganizationalUnitScope

The RecipientOrganizationalUnitScope parameter returns only the role assignments that include the specified organizational unit (OU). If the OU tree contains spaces, enclose it in quotation marks (").

Type:OrganizationalUnitIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-RecipientWriteScope

The RecipientWriteScope parameter returns only the role assignments associated with the recipient scope restriction type specified. The valid values are None, MyGAL, Self, OU, CustomRecipientScope, MyDistributionGroups and ExclusiveRecipientScope.

Type:RecipientWriteScopeType
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

The Role parameter returns only the role assignments associated with the specified management role. If the name of the role contains spaces, enclose it in quotation marks (").

Type:RoleIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-RoleAssignee

The RoleAssignee parameter specifies the role group, assignment policy, user, or universal security group (USG) for which you want to view role assignments. If the RoleAssignee parameter is used, you can't use the Identity parameter.

By default, the command returns both direct role assignments to the role assignee and indirect role assignments granted to a role assignee through role groups or assignment policies.

If the name of the user or USG contains spaces, enclose it in quotation marks (").

Type:RoleAssigneeIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-RoleAssigneeType

The RoleAssigneeType parameter specifies the type of role assignee to return. The valid values are User, SecurityGroup, RoleAssignmentPolicy, ForeignSecurityPrincipal, RoleGroup, LinkedRoleGroup and Computer.

Type:RoleAssigneeType
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-WritableDatabase

The WritableDatabase parameter specifies the database object you want to test to determine which role assignments allow it to be modified. The command takes into account the roles and scopes associated with each role assignment. You can use any value that uniquely identifies the database. For example:

  • Distinguished name (DN)

If you use this parameter with the GetEffectiveUsers switch, all the users who can modify the database object indirectly through role groups and USGs are also returned. Without the GetEffectiveUsers switch, only the role groups, users and USGs directly assigned the role assignment are returned.

Type:DatabaseIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

-WritableRecipient

The WritableRecipient parameter specifies the recipient object you want to test to determine which role assignments allow it to be modified. The command takes into account the roles and scopes associated with each role assignment. If the recipient name contains spaces, enclose it in quotation marks (").

If this parameter is used with the GetEffectiveUsers switch, all of the users who can modify the recipient object indirectly through role groups and USGs are also returned. Without the GetEffectiveUsers switch, only the role groups, users and USGs directly assigned the role assignment are returned.

Type:GeneralRecipientIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online, Exchange Online Protection

-WritableServer

The WritableServer parameter specifies the server object you want to test to determine which role assignments allow it to be modified. The command takes into account the roles and scopes associated with each role assignment.

You can use any value that uniquely identifies the server. For example:

  • Exchange Legacy DN

If this parameter is used with the GetEffectiveUsers switch, all of the users who can modify the server object indirectly through role groups and USGs are also returned. Without the GetEffectiveUsers switch, only the role groups, users and USGs directly assigned the role assignment are returned.

Type:ServerIdParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019

Input types

To see the input types that this cmdlet accepts, see Cmdlet Input and Output Types . If the Input Type field for a cmdlet is blank, the cmdlet doesn't accept input data.

Output types

To see the return types, which are also known as output types, that this cmdlet accepts, see Cmdlet Input and Output Types . If the Output Type field is blank, the cmdlet doesn't return data.

Was this page helpful?

Additional resources

COMMENTS

  1. Configure impersonation

    Configure impersonation

  2. Retirement of RBAC Application Impersonation in Exchange Online

    Get-ManagementRoleAssignment -Role ApplicationImpersonation -GetEffectiveUsers . Update: You can also use the sample ApplicationImpersonation reporting script that is posted on GitHub here. This script produces a report of Microsoft 365 3rd party EWS applications using accounts that have the ApplicationImpersonation RBAC role assigned.

  3. Exchange impersonation: Grant permissions to service accounts

    To create a new impersonation role, use the following cmdlet: New-ManagementRoleAssignment -Role:ApplicationImpersonation `. -User: [email protected]. Creating a new impersonation role using PowerShell. Now you can further restrict the permissions of the service user with the RecipientTypeDetails parameter, in this example ...

  4. How To: Grant Application Impersonation Rights in Office 365 (4350092)

    To grant ApplicationImpersonation rights via PowerShell: Login to Office 365 via PowerShell. Use the following sample PowerShell cmdlet to apply ApplicationImpersonation rights directly to your migration admin user account (s): New-ManagementRoleAssignment -Role "ApplicationImpersonation" -User [email protected]. Repeat the ...

  5. New-ManagementRoleAssignment (ExchangePowerShell)

    Some parameters and settings may be exclusive to one environment or the other. Use the New-ManagementRoleAssignment cmdlet to assign a management role to a management role group, management role assignment policy, user, or universal security group (USG). For information about the parameter sets in the Syntax section below, see Exchange cmdlet ...

  6. How to set impersonation rights manually

    where <account name> is the name of the administrator account (on the target server) that you want to check. Add impersonation rights: New-ManagementRoleAssignment -Name:<impersonation Assignment Name> -Role:ApplicationImpersonation -User: "<account name>". where <impersonation Assignment Name> is the name of your choice for this assignment.

  7. Configure impersonation roles for Exchange service accounts

    The easy way: No management scope. The service account will have access to all calendars, regardless of type. 1. In the Exchange management shell, run the command: New-ManagementRoleAssignment -Role:ApplicationImpersonation -User: YOURSERVICEACCOUNTUSERNAMEHERE. Remember to replace the "User" in the command to match your service account.

  8. Setting up Application Impersonation for Microsoft Exchange

    To apply the Application Impersonation role to your admin account, run the following command in a PowerShell session on your Exchange server. Replace ADMIN with the email address of your admin user. New-ManagementRoleAssignment -Name "CloudMMigrateImpersonation" -Role "ApplicationImpersonation" -User ADMIN.

  9. Application Impersonation Management Role (Office 365) & Complete Guide

    New-ManagementRoleAssignment -Name: -Role:ApplicationImpersonation -User: "" Here, is the name of user's choice that must be unique. Remove Impersonation Rights in Office 365 Using Powershell If a user wants to remove the impersonation roles, a user need to write the following command:

  10. Set-ManagementRoleAssignment (ExchangePowerShell)

    When you modify a role assignment, you can specify a new predefined or custom management scope or provide an organizational unit (OU) to scope the existing role assignment. You can create custom management scopes using the New-ManagementScope cmdlet and can view a list of existing scopes using the Get-ManagementScope cmdlet. If you choose not to specify an OU, predefined scope, or custom scope ...

  11. Enabling impersonation and use Powershell as admin role

    The term 'New-ManagementRoleAssignment' is not recognized as the name of a cmdlet, function, script file, or operable According to my friend that this might be the problem of not using the exchange server using the Admin, but I am logging to the windows serving using the admin account.

  12. Microsoft Exchange 2016

    New-ManagementRoleAssignment -Name: "R_Mailsend" -Role:ApplicationImpersonation -CustomRecipientWriteScope: "S_Mailsend" -User: "[email protected]" Unfortunately I get the message "550 5.7.60 SMTP; Client does not have permissions to send as this sender". Where is the error?

  13. MigrationWiz Impersonation and Delegation for Microsoft 365 & Exchange

    MigrationWiz Impersonation and Delegation for Microsoft ...

  14. Hosted Exchange Impersonation ManagementRole

    I tried to create an New-ManagementRoleAssignment New-ManagementRoleAssignment -Name "ImpersonationRole" -Role ApplicationImpersonation -User "Administrator@domain" Next i tried to set/change

  15. Configuring Exchange Impersonation in Exchange 2010

    Microsoft Exchange Server 2010 uses Role-Based Access Control (RBAC) to assign permissions to accounts. You can use the New-ManagementRoleAssignment Exchange Management Shell cmdlet to assign the ApplicationImpersonation role to users in the organization. For more information about this cmdlet, see New-ManagementRoleAssignment on Microsoft TechNet.

  16. HowTo: Assigning Application Impersonation in Exchange Online ...

    Run the New-ManagementRoleAssignment cmdlet (as shown below) to grant the service account permission to impersonate all the users in the organization. Note: The Name parameter specifies the name of the new role assignment. The Role parameter indicates that the ApplicationImpersonation role is assigned to the user specified by the User parameter.

  17. How to manually assign management roles

    New-ManagementRoleAssignment -Role "View-Only Configuration" -User "Anna White". You can check if the assignment was successful via the following cmdlet: Get-ManagementRoleAssignment -RoleAssignee "<UserName>". You can also use this cmdlet to see all the roles assigned to any user. By default, each Exchange user is assigned some roles that ...

  18. ApplicationImpersonation role: Exchange 2013 Help

    Important. A process or application that's a member of the ApplicationImpersonation role can access the contents of a user's mailbox and act on behalf of that user, even if the user's account is disabled. This might let users access their mailboxes if you have applications, like Blackberry Enterprise Server, that use the ApplicationImpersonation role. . Third-party products that don't use the ...

  19. For Admins: How do I configure the Impersonation…

    To configure impersonation for all users in an organization: Open the Exchange Management Shell. From the Start menu, choose All Programs > Microsoft Exchange Server 2013. Run the New-ManagementRoleAssignment cmdlet to add the impersonation permission to the specified user. The following example shows how to configure impersonation to enable a ...

  20. Prepare Microsoft 365 Exchange Permissions for Riva Connections

    New-ManagementRoleAssignment -Role ApplicationImpersonation -User [email protected] Optional steps 1 and 2: Limit impersonation access to specific mailboxes. Here we create a new management scope that is filtered to a subset of mailboxes, then apply the management scope to the impersonation role.

  21. New-RoleAssignmentPolicy (ExchangePowerShell)

    To assign a management role after the assignment policy has been created, use the New-ManagementRoleAssignment cmdlet. For more information, see Manage role assignment policies. For more information about assignment policies, see Understanding management role assignment policies. You need to be assigned permissions before you can run this cmdlet.

  22. Error: Not found cmdlet: New-ManagementRoleAssignment -Role

    (not found cmdlet: New-ManagementRoleAssignment -Role "ApplicationImpersonation" -User) Sign In Required You need to be signed in and under a current maintenance contract to view premium knowledge articles.

  23. Get-ManagementRoleAssignment (ExchangePowerShell)

    Get-ManagementRoleAssignment -WritableDatabase "Contoso Sales" This example retrieves all the role assignments that can modify the database Contoso Sales. Parameters-AssignmentMethod. The AssignmentMethod parameter specifies the type of role assignment to include in the results returned by the cmdlet. You can specify one or more of the ...