Рейтинг:0

Active Directory + NFS: почему uidNumber пользователя домена, gidNumber не отображается командой `id` в Windows?

флаг in

Я подключаю общие ресурсы NFS v3 (наборы данных ZFS) с файлового сервера Solaris, принадлежащего пользователям домена, к компьютерам Windows, но эта концепция должна применяться практически к любому серверу в стиле POSIX. Я надеюсь найти интуитивно понятный способ сохранения разрешений на разных платформах, который также может применяться к нескольким пользователям, использующим один и тот же клиент.

Сервер Solaris не распознает идентификаторы пользователей при монтировании набора данных с помощью устанавливать командовать команда, несмотря на то, что наборы данных установлены для одного и того же пользователя домена, присутствующего на сервере, но идентифицированного с помощью AD LDAP. uidNumber и gidNumber.

Я видел решение, где uid/гид можно установить в реестре, что позволяет монтировать общий ресурс NFS в Windows как анонимный общий ресурс с удостоверением одного пользователя. Это не только неудобно, это применимо только к одному пользователю.

Я использовал MSYS2 (например, «Git Bash») и заметил я бы команда не показывает ничего рядом с uidNumber/gidNumber установить в АДУКвкладка атрибута . Я знаю, что Windows использует SIDs для идентификации пользователей и устройств, что совершенно не похоже на систему идентификации Unix, но где MSYS2 получить этот номер от?

Я надеюсь, что проливая свет на это, это может помочь мне найти способ установить пользовательские атрибуты, чтобы устанавливать командовать команда будет передавать идентификационные данные моих пользователей так, как их поймет мой сервер Solaris.

Вот пример того, о чем я говорю:

В АДУК, давайте рассмотрим uid/гид из Администратор:

Пользователи и компьютеры Active Directory
---------------------------------------------
    [Меню] Вид --> Дополнительные функции -->
+ [Домен] Пользователи --> Администратор --> Свойства -->
  + [Вкладки] Редактор атрибутов -->
+ [Таблицы] uidNumber, gidNumber

uidNumber: 2500
номер гида: 2512

Хорошо, тогда проверим Администраторх я бы в MSYS2:

ââ ⶠid администратора
uid=1049076(Администратор) gid=1049089(Пользователи домена) groups=1049089(Пользователи домена)

Понятно, что это очень разные цифры.Разве это не имело бы больше смысла для пользовательского Unix? uid/гид показать?

Где MSYS2 получить эти странные числа и есть ли способ использовать указанный пользователем AD uid/гид как тож в командной строке?

Рейтинг:0
флаг in

Что ж, это было легко - так как мои пользователи uidNumber и gidNumber уже были установлены, все, что мне нужно было сделать, это включить сопоставление идентификаторов AD на клиенте.

Я открыл командную строку администратора, запустил powershell (версия 7) и запустил командлет:

PS C:\Windows\System32> Set-NfsMappingStore -EnableADLookup $True -ADDomainName "example.com"

Для подтверждения я получил настройки:

PS C:\Windows\System32> Get-NfsMappingStore

UNMS-сервер:
UNMLookupEnabled : Ложь
ADДомен : example.com
ADLookupEnabled: Истина
Лдап-сервер:
LdapNamingContext :
Лдаплукупенаблед : ложь
Пасвдфилелукупенаблед : ложь

Теперь момент истины — монтирование пользовательского NFS-ресурса (это была cmd-оболочка пользовательского уровня в ConEmu):

happyuser@WINSLAVE C:\Users\happyuser
$ mount \solarisbeast\mnt\hallofzmirrors\trough\happyuser\all-pascal-projects n:

Пока выглядит хорошо, никаких настроек идентификации не требуется (не то чтобы они были возможны с NFS v3 в любом случае, но все же...)

Оставил следы...

happyuser@WINSLAVE N:\
$ echo 'это от winslave' > 'test-from-winslave.txt'

Затем проверил личность создателя файла на сервере:

admin@solarisbeast:/mnt/hallofzmirrors/trough/happyuser/all-pascal-projects% ls -la
всего 88
drwxr-xr-x 6 happyuser DomainUsers 8 июл 22 22:19 .
drwxr-x--- 35 happyuser DomainUsers 56 июл 21 11:37 ..
drwxr-xr-x 2 happyuser DomainUsers 3 21 июля 11:37 .$EXTEND
-rw-r--r-- 1 happyuser DomainUsers 25 июл 21 13:04 test-from-bloatedwharfrat.txt
-rwxr-xr-x 1 happyuser DomainUsers 25 июля 22 22:02 test-from-winslave.txt

Выглядит довольно хорошо на фронте идентичности. Будем надеяться, что стабильно!

Монтирование экспорта NFS с сервера Unix в Windows

Обновление: я быстро упомянул об этом, но для тех, кто пропустил это, монтирование NFS должно выполняться как пользователь, которому принадлежит общий ресурс в cmd без повышенных прав. Это может показаться неинтуитивным людям, более знакомым с монтированием NFS в системах Posix, где только root (т.е. sudo) имеет разрешение на вызов устанавливать команда.

LeeM avatar
флаг cn
Я предлагаю пометить это как ваш ответ, чтобы он больше не отображался как «без ответа». И может быть полезно другим в будущем.
AveryFreeman avatar
флаг in
Спасибо, не знал, что забыл это сделать.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.