Ошибка LDAP в Identity Server 4.6 при использовании регистрации пользователя с запросом пароля у пользователя


Я хотел попробовать функцию уведомления о пароле в IS 4.6, но она выдала исключение.
Я перешел по этим ссылкам:
https://docs.wso2.org/display/IS460/Recover+with+Notification http://cgchamath.blogspot.mx/2013/12/wso2-identity-server-user-creation-with.html
Это ошибка, которую я получаю
введите описание изображения здесь

Вот Stacktrace

Вызвано: org.wso2.carbon.identity.base.IdentityException: ошибка при сохранении идентификационных данных пользователя в хранилище пользователя в org.wso2.carbon.identity.mgt.store.UserStoreBasedIdentityDataStore.store (UserStoreBasedIdentityDataStore.java:81) в org.wso2.carbon.identity.mgt.store.UserStoreBasedIdentityDataStore.store (UserStoreBasedIdentityDataStore.java:81) .wso2.carbon.identity.mgt.IdentityMgtEventListener.doPostAddUser (IdentityMgtEventListener.java:420) ... еще 124 Причина: org.wso2.carbon.user.core.UserStoreException: один или несколько атрибутов, которые вы пытаетесь добавить / обновить не поддерживаются базовым LDAP. в org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager.doSetUserClaimValues ​​(ReadWriteLDAPUserStoreManager.java:874) в org.wso2.carbon.identity.mgt.store.UserStoreBasedIdentityDataStore.store (UserStoreBasedIdentityDataStore.java:73) ... 125 подробнее Вызвано: javax.naming.directory.NoSuchAttributeException: [LDAP: код ошибки 16 - NO_SUCH_ATTRIBUTE: сбой для изменения объекта запроса: 'uid = testUser, ou = Users, dc = wso2, dc = org' Модификация [0] Операция: заменить модификацию http://wso2.org/claims/identity/passwordTimestamp: 1398394865706 Модификация 1 Операция: заменить Инициалы модификации: false: ERR_04269 ATTRIBUTE_TYPE для OID http://wso2.org/claims/identity/passwordtimestamp не существует!]; оставшееся имя uid = testUser в com.sun.jndi.ldap.LdapCtx.mapErrorCode (LdapCtx.java:3108) в com.sun.jndi.ldap.LdapCtx.processReturnCode (LdapCtx.java:3033) в com.sun. jndi.ldap.LdapCtx.processReturnCode (LdapCtx.java:2840) по адресу com.sun.jndi.ldap.LdapCtx.c_modifyAttributes (LdapCtx.java:1411) по адресу com.sun.jndi.jndi.toolkit.ConributeSDtext.Component. java: 253) в com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.modifyAttributes (PartialCompositeDirContext.java:165) в com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.modifyAttributesjava.context.modifyAttributejg:15 .carbon.user.core.ldap.ReadWriteLDAPUserStoreManager.doSetUserClaimValues ​​(ReadWriteLDAPUserStoreManager.java:859) ... еще 126

Я могу представить, что приложение генерирует метку времени истечения срока действия пароля и пытается сохранить в поле в LDAP, которое отображается комбинацией: http://wso2.org/claims/identity/passwordtimestamp -> nickName
Очевидно, что это сопоставление неверно. Как я могу заставить адекватное сопоставление, чтобы процесс правильно сохранял пользователя (и, надеюсь, отправлял электронное письмо после этого ...)?

Заранее спасибо.


person johannes.schmidt.delaunay    schedule 25.04.2014    source источник


Ответы (1)


Первая проблема на этом пути решена: мне пришлось повторно добавить требование отметки времени пароля, но с правильным uri: http://wso2.org/claims/identity/passwordTimestamp

Также полезными оказались: https://wso2.org/jira/browse/IDENTITY-1200.

Ошибка LDAP исправлена, но по-прежнему не отправляется электронное письмо. Но это уже другая проблема

person johannes.schmidt.delaunay    schedule 30.04.2014