我正在尝试读取 AD 中的所有用户属性。
如何在 C# 中读取 msExchMailboxSecurityDescriptor
属性?
我使用了以下代码,但出现了转换错误。欢迎提出任何建议。
DirectoryObjectSecurity oSec = new ActiveDirectorySecurity();
oSec.SetSecurityDescriptorBinaryForm((byte[])val);
String m_Value = oSec.GetSecurityDescriptorSddlForm(AccessControlSections.All);
return m_Value;
最佳答案
好的。我能够弄清楚。下面为任何感兴趣的人提供代码。我希望微软已经推出了一些代码示例,这样人们就不必伤脑筋了。
SecurityDescriptor sd = (SecurityDescriptor) p_InputValue;
AccessControlList acl = (AccessControlList)sd.DiscretionaryAcl;
String m_Trustee = "";
String m_AccessMask = "";
String m_AceType = "";
String m_ReturnValue="";
foreach (AccessControlEntry ace in (IEnumerable)acl)
{
m_Trustee = m_Trustee + "," + ace.Trustee;
m_AccessMask = m_AccessMask + "," + ace.AccessMask.ToString();
m_AceType = m_AceType + "," +ace.AceType.ToString();
}
m_ReturnValue="Trustee: " + m_Trustee + " " + "AccessMask: " + m_AccessMask + "AceType: " + m_AceType;
return m_ReturnValue
关于active-directory - 如何在 C# 中读取 msExchMailboxSecurityDescriptor 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7231730/