Article ID : 976188 provide us the resolution steps when "You cannot assign roles to a user even though you have the Assign Role privilege in Microsoft Dynamics CRM 4.0".
1. On the Microsoft Dynamics CRM 4.0 server, click Start, click Run, type regedit, and then click OK.
2. Locate and then click the following registry subkey:
3. Right-click MSCRM, point to New, and then click DWORD Value.
4. Name this DWORD value AllowRoleAssignInAdminMode.
5. Right-click AllowRoleAssignInAdminMode, and then click Modify.
6. In the Value data box, type 1, and then click OK.
7. On the File menu, click Exit.
Note: Even though we follow these steps we use to forget one operation refered in the article.
User should be provided with administrative access mode.
This thread refers the same.