Мне удалось получить все группы LDAP текущего пользователя Windows в моем приложении WinForm. Теперь я перевожу это приложение на электронное и хочу сделать то же самое.
Я ищу какой-то существующий пакетсделать это.ИЛИ любой обходной путь.
Я уже попробовал следующее: 1) https://www.npmjs.com/package/activedirectory 2) https://www.npmjs.com/package/ad
Но для всего этого требуется пароль пользователя.
Код C #, используемый в Winforms:
string userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name.Split('\\').Last();
IList<string> groups = new List<string>();
try
{
using (DirectoryEntry de = new DirectoryEntry("LDAP://" + Domain.GetCurrentDomain()))
{
using (DirectorySearcher adSearch = new DirectorySearcher(de))
{
adSearch.Filter = string.Format(CultureInfo.InvariantCulture, "(sAMAccountName={0})", userName);
SearchResult result = adSearch.FindOne();
if (result == null)
MessageBox.Show("null......");
ResultPropertyValueCollection rpCollection = result.Properties["memberof"];
foreach (string rp in rpCollection)
{
string[] properties = rp.Split(new char[] { ',' });
foreach (string property in properties)
{
groups.Add(property);
}
}
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Поскольку мое приложение работает под текущим пользователем Windows, поэтому в коде C # мне не понадобится пароль для получения групп LDAP.Как это сделать в приложении Node / Electron?