LINUX.ORG.RU

Ldapsearch Запрос

 ,


0

1

Приветствую всех. Ломаю голову над загадкой уже пару дней. Может кто сталкивался? Выполняю запрос к серверу ipa>> ldapsearch -x -D «cn=Directory Manager» -w PASSWORD -b «cn=mail-users,cn=groups,cn=accounts,cn=id,dc=mydomain,dc=local» - пользователей находит, но тут и активные и заблокированные. вопрос как получить список пользователей, которые заблокированы???? Буду очень признателен….

которые заблокированы

по какому признаку определяется заблокированность?

у ldapsearch есть параметр -s для добавления фильтра. Типа -s sub '(&(objectClass=user)(blocked=true))'

xgatron
()
Ответ на: комментарий от xgatron

ldapsearch -s sub ‘(&(objectClass=user)(blocked=true))’ -x -D «cn=Directory Manager» -w Password -b «cn=mail-users,cn=groups,cn=accounts,dc=mydomain,dc=local»

Пишет выполнено успешно, только не находит ничего. Если вместо true написать false результат тоже пустой..

Overlord90
() автор топика
Ответ на: комментарий от Overlord90

Так фильтр лишь для примера. Ты так и не ответил, по какому признаку определяешь, заблокирован пользователь, или нет

XMs ★★★★★
()
Ответ на: комментарий от XMs

Если честно я новенький в этом. Блокирую пользователя в web IPA, дальше мне нужно написать запрос, в котором смогу получить сначала активных, затем неактивных пользователей. Если знаете подскажите пожалуйста какой фильтр нужно использовать, так как в интернете совсем мало инфы по этому поводу

Overlord90
() автор топика
Ответ на: комментарий от Overlord90

Скинь выхлоп ldapsearch без фильтра, со всеми пользователями. Если он будет слишком большой, залей на какой-нибудь pastebin, а сюда тогда ссылку

XMs ★★★★★
()
Последнее исправление: XMs (всего исправлений: 1)
Ответ на: комментарий от XMs

Вот так это работает сейчас ldapsearch -x -D «cn=Directory Manager» -w Password -b «cn=mail-users,cn=groups,cn=accounts,dc=mydomain,dc=local»

extended LDIF

LDAPv3

base <cn=mail-users,cn=groups,cn=accounts,dc=incoma,dc=local> with scope subtree

filter: (objectclass=*)

requesting: ALL

mail-users, groups, accounts, mydomain.local

dn: cn=mail-users,cn=groups,cn=accounts,dc=mydomain,dc=local member: uid=user2,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user1,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user2,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=m.sam,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user5,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=admin,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user1,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user3,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user7,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user8,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user9,cn=users,cn=accounts,dc=mydomain,dc=local member: uid=user10,cn=users,cn=accounts,dc=mydomain,dc=local ipaNTSecurityIdentifier: S-1-5-21-1965985356-2923011281-4273990428-1011 objectClass: ipaobject objectClass: top objectClass: ipausergroup objectClass: posixgroup objectClass: groupofnames objectClass: nestedgroup objectClass: ipantgroupattrs cn: mail-users ipaUniqueID: d704550c-b56d-11e9-b0ca-001a4a247702 gidNumber: 514000011

search result

search: 2 result: 0 Success

numResponses: 2

numEntries: 1

Overlord90
() автор топика
Ответ на: комментарий от Overlord90

Это группа, а не пользователи. Группа не содержит информации пользователей. Тебе надо слать запрос по base DN cn=users,cn=accounts,dc=mydomain,dc=local, тогда ты получишь именно пользователей.

А ещё рекомендую использовать не «-w <password>», а «-W». Иначе у тебя пароль в истории сохраняется.

А ещё почитай, как оформлять пост. У тебя выхлоп слипся:

dn: cn=mail-users,cn=groups,cn=accounts,dc=mydomain,dc=local
member: uid=user2,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user1,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user2,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=m.sam,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user5,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=admin,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user1,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user3,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user7,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user8,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user9,cn=users,cn=accounts,dc=mydomain,dc=local
member: uid=user10,cn=users,cn=accounts,dc=mydomain,dc=local
ipaNTSecurityIdentifier: S-1-5-21-1965985356-2923011281-4273990428-1011
objectClass: ipaobject
objectClass: top
objectClass: ipausergroup
objectClass: posixgroup
objectClass: groupofnames
objectClass: nestedgroup
objectClass: ipantgroupattrs
cn: mail-users
ipaUniqueID: d704550c-b56d-11e9-b0ca-001a4a247702
gidNumber: 514000011

XMs ★★★★★
()
Последнее исправление: XMs (всего исправлений: 3)
Ответ на: комментарий от XMs

все равно пусто. Или что то не так делаю?

ldapsearch -s sub ‘(&(objectClass=user)(blocked=false))’ -x -D «cn=Directory Manager» -w password -b «cn=users,cn=accounts,dc=mydomain,dc=local»

extended LDIF

LDAPv3

base <cn=users,cn=accounts,dc=mydomain,dc=local> with scope subtree

filter: (&(objectClass=user)(blocked=false))

requesting: ALL

search result

search: 2 result: 0 Success

numResponses: 1

Overlord90
() автор топика
Ответ на: комментарий от Overlord90

Пока без фильтра сделай, фильтр в конце наложишь, когда будет ясно, по какому признаку определять

XMs ★★★★★
()
Ответ на: комментарий от Overlord90

Я не нашёл у него каких-либо аттрибутов, по которым можно бы было судить о том, что он заблокирован. Значит, либо эта информация хранится где-то ещё, либо не хранится в LDAP вовсе

XMs ★★★★★
()
Ответ на: комментарий от Overlord90

Надо смотреть. Поищи по аттрибутам ipaUniqueID: 9f150e90-dbbc-11ea-8bd4-001a4a247702 и uidNumber: 514000064, может, где-то ещё есть каталог с такими вещами

XMs ★★★★★
()
Ответ на: комментарий от XMs

вот что гугл говорит I just tested using the public demo1.freeipa.org instance and it works using the ‘hidden’ nsaccountlock attribute:

$ ldapsearch -LLL -Y GSSAPI -h ipa.demo1.freeipa.org -b cn=users,cn=accounts,dc=demo1,dc=freeipa,dc=org «(nsaccountlock=TRUE)» uid

SASL/GSSAPI authentication started

SASL username: helpdesk DEMO1 FREEIPA ORG

SASL SSF: 56

SASL data security layer installed.

dn: uid=test,cn=users,cn=accounts,dc=demo1,dc=freeipa,dc=org

uid: test

dn: uid=bladibla,cn=users,cn=accounts,dc=demo1,dc=freeipa,dc=org uid: bladibla

anonymous
()
Ответ на: комментарий от Overlord90

ipa user-disable jsmith

там код на питоне, если посмотреть что происходит с функцией user_disable, то можно найти атрибут nsaccountlock

надо искать, где спрятали этот аттрибут или нагуглить такое

xgatron
()

Всем огромное спасибо. Решил вопрос по другому. Немного глупо наверное, но прицепился к необязательным полям и определяю по ним статус юзера

Overlord90
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.