You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Drupal 9 Simple OAuth(v5.2.3)令牌验证失败及密钥生成异常问题

Drupal 9 + Simple OAuth v5.2.3 令牌生成问题解决指南

问题1:模块自动生成的公私钥文件为空

  • 检查目录权限:确保web服务器用户(如www-data、apache)对密钥存储目录(默认/sites/default/files/simple_oauth)有读写权限,执行以下命令调整:
    chown -R www-data:www-data sites/default/files/simple_oauth
    chmod -R 755 sites/default/files/simple_oauth
    
  • 排查安全模块限制:如果服务器开启了SELinux或AppArmor,可能会阻止模块写入文件,临时关闭测试(setenforce 0关闭SELinux),或调整安全规则允许写入目标目录。
  • 直接手动生成密钥:跳过模块自动生成流程,用OpenSSL命令生成合规密钥(见问题2步骤)。

问题2:手动生成密钥后出现“Access token could not be verified”错误

  • 生成合规RSA密钥:必须用OpenSSL生成匹配的公私钥对,命令如下:
    # 生成无密码的2048位私钥
    openssl genrsa -out private.key 2048
    # 从私钥导出对应公钥
    openssl rsa -in private.key -pubout -out public.key
    
  • 确认密钥路径配置:在Simple OAuth模块设置页,填写绝对路径(如/var/www/html/sites/default/files/simple_oauth/private.key),避免相对路径导致系统无法读取密钥。
  • 验证密钥配对:执行以下命令检查公私钥是否匹配,两个命令输出的MD5值必须完全一致:
    openssl rsa -in private.key -noout -modulus | openssl md5
    openssl rsa -in public.key -pubin -noout -modulus | openssl md5
    
  • 检查请求参数与权限:确保令牌请求的grant_type、client_id、client_secret等参数无拼写错误,同时给对应客户端角色分配use simple oauth权限。
  • 清除Drupal缓存:执行drush cr刷新系统配置,确保密钥设置生效。

内容的提问来源于stack exchange,提问作者Ali Mhanna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 06:15:45