Автор Тема: MemberOf - Как указать членство пользователей в записях самих пользователей?  (Прочитано 9055 раз)

manik207

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Егор, здравствуйте!

C memberOf авторизация по группам работает, добавляю группу с пользователями в ней: dn: cn=redmine,ou=Groups,dc=mycompany,dc=ru
objectClass: groupOfNames
cn: redmine-group
member: uid=user1,ou=Users,dc=mycompany,dc=ru
member: uid=user2,ou=Users,dc=mycompany,dc=ru

Теперь нужно добавить еще пять пользователей (user3-user8), пользователей user3 и user5 сразу добавить в группу redmine. Поняла, добавление членства делается через добавление записи об этих пользователях в запись группы  через ldif:
dn: cn=redmine,ou=Groups,dc=mycompany,dc=ru
changetype: modify
add: member
member: uid=user5,ou=Users,dc=mycompany,dc=ru
-
add: member
member: uid=user3,ou=Users,dc=mycompany,dc=ru

Вы говорили, что пользователь, который является member'ом, получает скрытый, невидимый атрибут. Можно ли этот атрибут прописать при создании самого пользователя, без изменения  ldif'ом самой группы? Группу править можно, но интересует, есть ли метод "прямее", а не через окольные пути)))

egor

  • Администратор
  • Старожил
  • *****
  • Сообщений: 486
    • Просмотр профиля
Здравствуйте, Анна!
Наложение memberOf работает так, как оно работает -- тут уж ничего не изменишь =) . Если Ваш вопрос связан с тем, что с LDIF работать неудобно, можно всё то же самое делать и через GUI, например, с помощью моего любимого LdapAdmin.

Если Вам не нравится сама концепция ведения сторонней группы, можно, конечно, от неё отказаться, а признак возможности авторизации пользователя в том или ином приложении указывать в самой записи пользователя в одном из неиспользуемых Вами атрибутов. Например, у пользователя задан атрибут o:
dn: uid=ivanov,ou=People,dc=mycompany,dc=ru
objectClass: inetOrgPerson
uid: ivanov
cn: Ivan Ivanov
givenName: Ivan
sn: Ivanov
mail: ivanov@mycompany.ru
userPassword: ivanovPassword
o: valid-redmine-user

Тогда в настройках redmine будет такой фильтр:
LDAP Filter = (&(objectClass=inetOrgPerson)(o=valid-redmine-user))

Егор