在我当前的Dynamics AX项目中,我必须在表单中添加一个字段组,并通过给定的安全密钥保护该组。对于无权访问此安全密钥的人,我必须显示替换文本。
如何测试当前用户是否有权访问安全密钥,以便在这种情况下我可以隐藏替换文本?
答案 0 :(得分:2)
您可以使用以下代码查找用户是否有权访问安全密钥:
SecurityKeySet securityKeys;
AccessType accessType;
;
securityKeys = new SecurityKeySet();
securityKeys.loadUserRights(curUserId());
accessType = securityKeys.access(securityKeyNum("YourSekurityKey"));
info(enum2str(accessType));
答案 1 :(得分:1)
我建议使用 hasSecuritykeyAccess(securityKeyId securityKeyId, AccessType neededAccessLevel)
方法。
if (hasSecuritykeyAccess(securityKeyNum(YourSecurityKey), AccessType::Delete))
{
info('Access granted');
}
else
{
info('Access rejected');
}