0

在我们升级到 Drupal 9 之后,我们在所有的 drupal 页面中都遇到了以下错误:

TypeError: Drupal\ldap_user\Processor\DrupalUserProcessor::drupalUserLogsIn(): 
Argument #1 ($account) must be of type Drupal\user\UserInterface, null given, called in 
portal/modules/ldap/ldap_user/src/Processor/GroupUserUpdateProcessor.php on line 302 in 
Drupal\ldap_user\Processor\DrupalUserProcessor->drupalUserLogsIn() (line 449 of 
modules/ldap/ldap_user/src/Processor/DrupalUserProcessor.php).
    
Drupal\ldap_user\Processor\DrupalUserProcessor->drupalUserLogsIn(NULL) (Line: 302)
Drupal\ldap_user\Processor\GroupUserUpdateProcessor->processAccount(Object, 'samaccountname') (Line: 246)
4

2 回答 2

1

您可能遇到了这个drupal 错误。错误报告有关于如何修复您的网站的非常详细的说明。简而言之:

导出您的配置

drush config:export
cd config/sync # the exact path will be printed out by drush

在旧配置中搜索“getCurrentUserId”

grep -R "getCurrentUserId" .

打开所有受影响的文件并替换

default_value_callback: 'Drupal\node\Entity\Node::getCurrentUserId'

default_value_callback: 'Drupal\node\Entity\Node::getDefaultEntityOwner

重新导入您的配置

drush config:import
于 2021-11-03T14:04:50.807 回答
0

在 Drupal 9 中,该authexternal模块需要更多映射字段。

转到/admin/config/people/ldap/user_drupal并映射两个字段:User IdUUID

在我们的例子中,我们使用 Active Directory token 进行映射[samaccountname],但如果您使用的是 ldap,您可能会使用uid

于 2021-05-02T12:49:11.377 回答