использовать пользовательские атрибуты в openldap - PullRequest
2 голосов
/ 24 февраля 2012

Я пытаюсь добавить пользовательский атрибут в мою структуру openldap, чтобы сохранить роль для каждого пользователя для последующей обработки пользователей моего весеннего веб-приложения.

Всего 3 роли: администратор, менеджер и зритель. Можно ли добавить какое-либо правило для этого?

А как исправить приведенную ниже ошибку?

# CUSTOM ATTRIBUTE
dn: cn=schema,cn=config
changeType: modify
add: attributeTypes
attributeTypes: (
  2.25.128424792425578037463837247958458780603.1
  NAME 'role'
  EQUALITY caseIgnoreMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
  SINGLE-VALUE
 )
-
add: objectClasses
objectClasses: (
  2.25.128424792425578037463837247958458780603.2
  NAME 'rolePerson'
  SUP person
  AUXILIARY
  MUST ( role )
 )

# USERS
dn: ou=people,dc=ubuntu,dc=local
objectClass: organizationalUnit
ou: people

dn: cn=demo_admin,ou=people,dc=ubuntu,dc=local
objectClass: rolePerson
userPassword: {MD5}fe01ce2a7fbac8fafaed7c982a04e229
uid: demo
cn: demo
sn: demo
role: admin

Выход ldapadd -x -W -D "cn=admin,dc=ubuntu,dc=local" -f roleuser.ldif:

modifying entry "cn=schema,cn=config"
ldap_modify: Invalid syntax (21)
    additional info: attributeTypes: value #0 invalid per syntax

Ответы [ 2 ]

1 голос
/ 25 февраля 2012

Этот тип вещи лучше обрабатывать с помощью групп.Если вы соедините его с модулем ссылочной целостности и модулем, который хранит данные о членстве в объекте пользователя, это даст вам то же преимущество в более стандартном виде.

0 голосов
/ 11 января 2013

Как насчет "разделения проблем"?LDAP должен нести ответственность за хранение пользовательской информации и поддерживать аутентификацию , то есть решать, действительно ли пользователь является тем, кем он / она утверждает. Роли , однако, отличаются от приложения к приложению, поскольку они разрешают известным пользователям выполнять различные действия.

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

Настройте таким образом свойLDAP можно использовать для нескольких приложений.Если вы хотите сохранить информацию о роли в LDAP, вам понадобится другой LDAP, если вы создадите новое приложение.Или ваш LDAP со временем станет довольно сложным.

Определение групп в LDAP, конечно, полезно, если вы ожидаете, что группа пользователей, играющих одинаковую роль в наборе приложений.Тогда ваши приложения могут связывать свои роли с группами пользователей, а не только с отдельными пользователями.Но принцип остается прежним.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...