【问题标题】:Update CRM 2011 Access Right Programmatically以编程方式更新 CRM 2011 访问权限
【发布时间】:2013-09-28 08:44:43
【问题描述】:

我想知道是否有办法在 CRM 2011 中更新访问权限。

假设我有一个名为 Marketing Manager 的访问权限,它具有创建帐户的用户级别权限,我想以编程方式将此权限更改为组织级别。

我期待着,

提前致谢

【问题讨论】:

    标签: c# dynamics-crm-2011 crm dynamics-crm-4


    【解决方案1】:

    请看下面的代码。然而,它实际上将角色权限从现有角色复制到新角色。但我认为它可以给你一个想法。

    Guid existingRoleId = new Guid("C85F0FFF-4C80-E211-A877-1CC1DE79B4CA");
    Guid newRoleId = new Guid("B6690FFF-4C80-E211-A877-1CC1DE79B4CA");
    
    // Step 2
    RetrieveRolePrivilegesRoleRequest getPrivilagesRequest = 
                     new RetrieveRolePrivilegesRoleRequest();
    
    getPrivilagesRequest.RoleId = existingRoleId;
    RetrieveRolePrivilegesRoleResponse privilagesResponse = 
             (RetrieveRolePrivilegesRoleResponse)service.Execute(getPrivilagesRequest);
    
    if (privilagesResponse != null && privilagesResponse.RolePrivileges != null)
    {
        // Step 3
        AddPrivilegesRoleRequest addPrivilagesRequest = new AddPrivilegesRoleRequest();
        addPrivilagesRequest.Privileges = privilagesResponse.RolePrivileges;
        addPrivilagesRequest.RoleId = newRoleId;
        AddPrivilegesRoleResponse addPrivilagesResponse = 
                (AddPrivilegesRoleResponse)service.Execute(addPrivilagesRequest);
    }
    

    参考:Copy a security role programmatically – CRM 2011

    Link 2

    【讨论】:

    • 首先,感谢您的快速回答。其次,我非常感谢您尝试给我一个想法,但我真的没有明白这一点,在这段代码中,他只是复制了访问权限而没有做任何更改.
    • 老实说,我不知道我们是否可以更新权限。但我认为如果没有其他选择,您可以使用解决方法。使用组织级别权限创建一个名为“新角色”的角色。当您要更新角色权限时。将权限从“新角色”复制到要更新的角色。我也更新了答案,请检查链接2。问候
    • 不幸的是,这些技巧都没有帮助我。无论如何,我猜这是不可能的,谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多