问题
I would like to prepare very fast "user group permission" but this is very difficult for example If I would like to add access for Administration ->Location View this software give only permission for parent but not for all nodes in this parent. What should I do to fix this problem?
If I will click Dimension sets I need make permission to all child in this parent. Do you know what I have to do?
public void MCOVgrantFullAccess(SecurityKeySet _startSecurityKeySet = null)
{
//klasa systemowa dictionary http://msdn.microsoft.com/en-us/library/aa600103(v=ax.50).aspx
Dictionary dictionary = new Dictionary();
DictSecurityKey dictSecurityKey;
int i;
if (_startSecurityKeySet)
securitySet = _startSecurityKeySet;
else
securitySet = SysSecurity::constructSecurityKeySet();
// securityKeyCnt() An integer that indicates the number of security keys. http://msdn.microsoft.com/en-us/library/aa600103(v=ax.50).aspx
// i = 365
for (i=dictionary.securityKeyCnt(); i; i--)
{
dictSecurityKey = new DictSecurityKey(dictionary.securityKeyCnt2Id(1));
if (!dictSecurityKey.parentSecurityKeyId())
{
securitySet.access(dictSecurityKey.id(), AccessType::Delete);
}
}
SysSecurityFormSetup::delete(userGroupId, domainId); //Delete setup of form controls
formSetupMap = new Map(Types::String, Types::Class); //Clear cache
}
回答1:
If you are setting up security there is a process which 'should' be followed, you start with gathering processes end-users carry out, define the security roles based on these processes and then set up the groups. I have been trained by MS Partners in security and we never hard-coded anything. There is a set area for security in the Administration module, in here you can define user groups and the permissions within, then assign users to a group, can also set up record level security from here for individual records.
来源:https://stackoverflow.com/questions/10718229/dynamics-ax-2009-user-group-permission