LdapRecord: [Bug] 'LDAP operation [rename] failed.' OpenLdap
Environment (please complete the following information):
- LDAP Server Type: OpenLDAP
- PHP Version: 7.4.16
- LdapRecord 2.2.3
Describe the bug:
Exception 'Exception' with message 'LDAP operation [rename] failed.'
in /Users/and1/phpProjects/www/ems/vendor/directorytree/ldaprecord/src/LdapBase.php:168
Stack trace:
#0 /Users/and1/phpProjects/www/ems/vendor/directorytree/ldaprecord/src/Ldap.php(307): LdapRecord\LdapBase->executeFailableOperation(Object(Closure))
#1 /Users/and1/phpProjects/www/ems/vendor/directorytree/ldaprecord/src/Query/Builder.php(1629): LdapRecord\Ldap->rename('cn=\xD0\x9F\xD1\x80\xD0\xB0\xD0\xB4\xD1\x83\xD0\xBD...', 'cn=\\d0\\9b\\d1\\8f...', 'ou=\xD0\x93\xD0\xBE\xD0\xBC\xD0\xB5\xD0\xBB\xD1\x8C...', true)
#2 /Users/and1/phpProjects/www/ems/vendor/directorytree/ldaprecord/src/Connection.php(397): LdapRecord\Query\Builder->LdapRecord\Query\{closure}(Object(LdapRecord\Ldap))
#3 /Users/and1/phpProjects/www/ems/vendor/directorytree/ldaprecord/src/Connection.php(355): LdapRecord\Connection->runOperationCallback(Object(Closure))
#4 /Users/and1/phpProjects/www/ems/vendor/directorytree/ldaprecord/src/Query/Builder.php(1630): LdapRecord\Connection->run(Object(Closure))
#5 /Users/and1/phpProjects/www/ems/vendor/directorytree/ldaprecord/src/Models/Model.php(1263): LdapRecord\Query\Builder->rename('cn=\xD0\x9F\xD1\x80\xD0\xB0\xD0\xB4\xD1\x83\xD0\xBD...', 'cn=\\d0\\9b\\d1\\8f...', 'ou=\xD0\x93\xD0\xBE\xD0\xBC\xD0\xB5\xD0\xBB\xD1\x8C...', true)
#6 /Users/and1/phpProjects/www/ems/common/models/behaviors/AddressBookEmployeeBehavior.php(178): LdapRecord\Models\Model->rename('cn=\\d0\\9b\\d1\\8f...')
#7 /Users/and1/phpProjects/www/ems/common/models/behaviors/AddressBookEmployeeBehavior.php(120): common\models\behaviors\AddressBookEmployeeBehavior->update()
#8 [internal function]: common\models\behaviors\AddressBookEmployeeBehavior->afterUpdate(Object(yii\db\AfterSaveEvent))
#9 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/base/Component.php(628): call_user_func(Array, Object(yii\db\AfterSaveEvent))
#10 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/db/BaseActiveRecord.php(1000): yii\base\Component->trigger('afterUpdate', Object(yii\db\AfterSaveEvent))
#11 /Users/and1/phpProjects/www/ems/common/models/Employee.php(341): yii\db\BaseActiveRecord->afterSave(false, Array)
#12 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/db/BaseActiveRecord.php(825): common\models\Employee->afterSave(false, Array)
#13 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/db/ActiveRecord.php(681): yii\db\BaseActiveRecord->updateInternal(NULL)
#14 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/db/BaseActiveRecord.php(681): yii\db\ActiveRecord->update(true, NULL)
#15 /Users/and1/phpProjects/www/ems/console/models/SyncProsellerModel.php(69): yii\db\BaseActiveRecord->save()
#16 /Users/and1/phpProjects/www/ems/console/controllers/EmployeeController.php(155): console\models\SyncProsellerModel->sync('/Users/and1/Des...')
#17 [internal function]: console\controllers\EmployeeController->actionSync()
#18 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)
#19 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/base/Controller.php(181): yii\base\InlineAction->runWithParams(Array)
#20 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/console/Controller.php(184): yii\base\Controller->runAction('sync', Array)
#21 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/base/Module.php(534): yii\console\Controller->runAction('sync', Array)
#22 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/console/Application.php(181): yii\base\Module->runAction('employee/sync', Array)
#23 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/console/Application.php(148): yii\console\Application->runAction('employee/sync', Array)
#24 /Users/and1/phpProjects/www/ems/vendor/yiisoft/yii2/base/Application.php(392): yii\console\Application->handleRequest(Object(yii\console\Request))
#25 /Users/and1/phpProjects/www/ems/yii(27): yii\base\Application->run()
#26 {main}
Cn in OpenLdap and rdn in code - different. Try admin user - same error. I use same method rename https://github.com/DirectoryTree/LdapRecord/blob/c7221d46b64e5a301a4820e583190a79c50c8013/src/Models/Model.php#L1239 described https://ldaprecord.com/docs/core/v2/model-api/#rename Bug fix - https://github.com/DirectoryTree/LdapRecord/issues/237 Any ideas?
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 16 (16 by maintainers)
Hi @stevebauman, Everything works now. Please add git tag because dev-master (2.4.x-dev) do not download. In composer.json lacks:
HI @stevebauman. On method getAttributes() no dn information from OpenLdap. I debug data on this code:
Result: