Страница 1 из 1

0x15 (LDAP_INVALID_SYNTAX) русские uidы

Добавлено: 2012-09-17 14:38:08
SL_IM
Сделал PDC на samba, все настроил, работает, но если создать пользователя с uid на русском, то его невозможно добавить ни в одну группу пишет LDAP_INVALID_SYNTAX. Не вставляется ни руками ни через различные клиенты. Поменял локаль на UTF-8, не помогло, гугл результатов не дал.
Cистема: FreeBSD 9.0-RELEASE

Re: 0x15 (LDAP_INVALID_SYNTAX) русские uidы

Добавлено: 2012-09-17 17:08:29
ChihPih
И как вставляете? Какие записи в логах при этом?

Re: 0x15 (LDAP_INVALID_SYNTAX) русские uidы

Добавлено: 2012-09-18 15:56:04
SL_IM
через phpldapadmin выдает:

Код: Выделить всё

Не удалось произвести операцию ldap_modify.
Сообщение LDAP:	Invalid syntax
Номер ошибки:	0x15 (LDAP_INVALID_SYNTAX)
Описание:	An invalid attribute value was specified.
в логах пишет:

Код: Выделить всё

Sep 18 14:30:39 pdc2 slapd[1285]: conn=2070 op=4 RESULT tag=103 err=21 text=memberuid: value #4 invalid per syntax
добавляю руками:

Код: Выделить всё

[root@pdc2 ~]# ldapmodify -h localhost -x -W -D "cn=root,dc=domain,dc=loc"
Enter LDAP Password:
dn: cn=Domain Admins,ou=Groups,dc=domain,dc=loc
changetype:add
add: memberUid
memberUid: Пользователь

adding new entry "cn=Domain Admins,ou=Groups,dc=domain,dc=loc"
ldap_add: Undefined attribute type (17)
        additional info: add: attribute type undefined
пробовал в base64 memberUid: 0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GM то-же самое(

через smbldap-tools:

Код: Выделить всё

[root@pdc2 ~]# smbldap-groupmod -m Пользователь "Domain Admins"
Failed to add memberUid: memberUid: value #0 invalid per syntax at /usr/local/sbin/smbldap-groupmod line 128.
ldapsearch ищет на русском:

Код: Выделить всё

[root@pdc2 ~]# ldapsearch -LLL "cn=пользователь"
dn:: Y2490J/QvtC70YzQt9C+0LLQsNGC0LXQu9GMLGRjPWRvbWFpbixkYz1sb2M=
givenName:: 0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GM
gidNumber: 512
homeDirectory: /dev/null
sn:: 0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GM
sambaLMPassword: C042B11DB94CD050AAD3B435B51404EE
sambaNTPassword: CFB44EE48CDDB3A8CE3851D969F15FAF
objectClass: inetOrgPerson
objectClass: sambaSamAccount
objectClass: posixAccount
objectClass: top
userPassword:: e01ENX00MUdtd2JhVmFsQllVdzJPR3RSOHRBPT0=
sambaPrimaryGroupSID: S-1-5-21-2252255531-4061614174-2474224977-512-36584
sambaSID: S-1-5-21-2252255531-4061614174-2474224977-3008
sambaAcctFlags: [U]
uidNumber: 1004
uid:: 0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GM
cn:: 0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GM
самба авторизует, но затык в добавлении в группу
если поменять на uid на латинский, то все спокойно добавляется
обязательно нужно сделать на русском, чтобы перенести учетки со старого контроллера домена

Re: 0x15 (LDAP_INVALID_SYNTAX) русские uidы

Добавлено: 2012-09-19 13:52:51
SL_IM
Все, разобрался! Вдруг кто нагуглит :smile:
Надо было изменить файл схемы nic.schema
было так:

Код: Выделить всё

attributetype ( 1.3.6.1.1.1.1.12 NAME 'memberUid'
	EQUALITY caseExactIA5Match
	SUBSTR caseExactIA5SubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
поменял на:

Код: Выделить всё

attributetype ( 1.3.6.1.1.1.1.12 NAME 'memberUid'
        EQUALITY caseExactMatch
        SUBSTR caseExactSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
и рестарт slapd