RetrieveUserPrivilegesRequest Class

Definition

Contains the data to retrieve the privileges a system user (user) has through their roles, and inherited privileges from their team membership.

public ref class RetrieveUserPrivilegesRequest sealed : Microsoft::Xrm::Sdk::OrganizationRequest
[System.Runtime.Serialization.DataContract(Namespace="http://schemas.microsoft.com/crm/2011/Contracts")]
public sealed class RetrieveUserPrivilegesRequest : Microsoft.Xrm.Sdk.OrganizationRequest
[<System.Runtime.Serialization.DataContract(Namespace="http://schemas.microsoft.com/crm/2011/Contracts")>]
type RetrieveUserPrivilegesRequest = class
    inherit OrganizationRequest
Public NotInheritable Class RetrieveUserPrivilegesRequest
Inherits OrganizationRequest
Inheritance
RetrieveUserPrivilegesRequest
Attributes

Examples

The following example shows how to use this message. For this sample to work correctly, you must have an authenticated connection to the server with a client that implements the IOrganizationService interface instance.

/// <summary>
/// Writes details about current user privileges to the console
/// </summary>
/// <param name="service">Authenticated client implementing the IOrganizationService interface</param>
/// <returns></returns>
static void OutputUserPrivileges(IOrganizationService service) {

    // Get the ID of the current user.
    Guid currentUserId = ((WhoAmIResponse)service.Execute(new WhoAmIRequest())).UserId;

    var request = new RetrieveUserPrivilegesRequest { 
            UserId = currentUserId
    };

    var response = (RetrieveUserPrivilegesResponse)service.Execute(request);

    foreach (RolePrivilege rp in response.RolePrivileges)
    {
        Console.WriteLine($"PrivilegeName:{rp.PrivilegeName}");
        Console.WriteLine($"PrivilegeId:{rp.PrivilegeId}");
        Console.WriteLine($"Depth:{rp.Depth}");
        Console.WriteLine();
    }
}

Example Output:

PrivilegeName:prvShareMailboxTrackingFolder
PrivilegeId:0011cc28-36a4-4b1c-8c25-d0c516ddb4bc
Depth:Global

PrivilegeName:prvAppendBookingStatus
PrivilegeId:00163c86-2cca-4cec-88f0-448b37f65769
Depth:Global

...

Remarks

For the Web API use the RetrieveUserPrivileges function.

Usage

Pass an instance of this class to the Execute(OrganizationRequest) method, which returns an instance of RetrieveUserPrivilegesResponse.

Privileges and Access Rights

To perform this action, the caller must have privileges on the Privileges entity and access rights on the record specified in the UserId property.

Constructors

RetrieveUserPrivilegesRequest()

Initializes a new instance of the RetrieveUserPrivilegesRequest class.

Properties

ExtensionData

Gets or sets the structure that contains extra data. Optional.

(Inherited from OrganizationRequest)
Item[String]

Gets or sets the indexer for the Parameters collection.

(Inherited from OrganizationRequest)
Parameters

Gets or sets the collection of parameters for the request. Required, but is supplied by derived classes.

(Inherited from OrganizationRequest)
RequestId

Gets or sets the ID of the request. Optional.

(Inherited from OrganizationRequest)
RequestName

Gets or sets the name of the request. Required, but is supplied by derived classes.

(Inherited from OrganizationRequest)
UserId

Gets or sets the user to retrieve privileges for.

Applies to

See also