惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

U
Unit 42
T
Threatpost
C
CERT Recently Published Vulnerability Notes
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Security Archives - TechRepublic
Security Archives - TechRepublic
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
K
Kaspersky official blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Attack and Defense Labs
Attack and Defense Labs
N
News and Events Feed by Topic
Project Zero
Project Zero
H
Heimdal Security Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Know Your Adversary
Know Your Adversary
Google Online Security Blog
Google Online Security Blog
W
WeLiveSecurity
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Schneier on Security
Schneier on Security
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
N
News | PayPal Newsroom
Hacker News - Newest:
Hacker News - Newest: "LLM"
H
Hacker News: Front Page
L
LINUX DO - 热门话题
Spread Privacy
Spread Privacy
T
Threat Research - Cisco Blogs
Cloudbric
Cloudbric
V
Vulnerabilities – Threatpost
Hacker News: Ask HN
Hacker News: Ask HN
S
Securelist
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
TaoSecurity Blog
TaoSecurity Blog
NISL@THU
NISL@THU
N
News and Events Feed by Topic
S
Security Affairs
The Last Watchdog
The Last Watchdog
T
Tor Project blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
T
The Exploit Database - CXSecurity.com
Simon Willison's Weblog
Simon Willison's Weblog
P
Palo Alto Networks Blog
AWS News Blog
AWS News Blog
P
Proofpoint News Feed
C
Cisco Blogs
C
Cyber Attacks, Cyber Crime and Cyber Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
L
LINUX DO - 最新话题
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Tenable Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
S
Schneier on Security

半方池水半方田

小球称重问题及其引申的思考 蓝色的结构色 病毒是不是生物? 把博客发布交给 GitHub Actions 省外居民身份证的补换领(苏州) hexo-filter-titlebased-link:构建你的数字花园 Vercel 应用实践学习 通过与 Keycloak 配合实现博客文章的受限访问功能 非公开的文章 Soft Mode 非公开的文章 Strict Mode 试试用代码块在 Hexo 中插入实况照片 动态图片测试 Hexo-Butterfly 主题 Preloader 加载页定制 Keycloak 的部署以及 Hexo-Butterfly 网页应用的接入 随机访问文章的实现(Sitemap+本地缓存优化) Authentik 的部署记录 记一次行李托运理赔流程(南航) Docker 镜像的制作、拉取与运行 Hexo-Butterfly 主题中对 Algolia 搜索框 Power By 的定制 Hexo 动态加载配置(钩子函数) 设计原则 VSCode 中的配置 Spring AI 中使用 PGVector 实现向量存储 提示词工程速查手册 2025 WePlay 上海两日游 和随机数生成相关的题目 一起撸串(字符串) 树状数组上手了就十分简单 缓存置换算法的实现与 Java 中相关的数据结构 关于海量数据的若干问题 访问者模式填补单分派语言的缺陷 备忘录模式:拍下照片
Waline 自建 Auth 认证
wuanqin · 2026-03-20 · via 半方池水半方田

|总字数:975|阅读时长:3分钟|浏览量:|

|出链:0|入链:1

现对 Waline 第三方登录下手,逐步开始向网站统一认证服务迈步。

和 Askimet 反垃圾服务一样,为了方便 Waline 用户的配置和使用,Waline 官方在设计初期就提供好了一些第三方应用登录服务。对于第三方服务的接入有自定义需求的,可以仿照官方的做法尝试建造一个自己的 Auth 认证服务。

部署官方 walinejs/Auth 项目

Vercel 中部署 Waline 官方 Auth 项目:walinejs/auth: Social account auth service, support github, twitter, facebook, google。实际上就是一个纯提供 API 调用的小项目。

本文假设这个 Vercel 应用已经设置好了自定义域名,比如 waline-auth.域名.com

在自己的 Waline 评论项目中,注意不是刚刚部署的 Auth 项目,新增环境变量的配置:

key value
OAUTH_URL https://waline-auth.域名.com

第三方登录的接入

GitHub OAuth

接下来介绍接入 Github OAuth。在自己的 GitHub 中 申请一个应用,以支持第三方用户登录。部分参数填写示例:

key value
Homepage URL https://waline-auth.域名.com
Authorization callback URL https://waline-auth.域名.com/github?redirect=&state=

image.png

GitHub 回调地址中,空格要变为 %20 否则会产生错误。

申请完成后,复制 GitHub 为这个应用生成的 Client ID 和 Client secrets,并将其填写到 walinejs/auth 项目的环境变量中(记得 Redeploy)。更多第三方接入详看 walinejs/auth 参数的填写详看 Markdown 文档。

环境变量 GitHub 提供的密钥
GITHUB_ID <Client ID>
GITHUB_SECRET <Client secrets>

image.png

记得 Redeploy。这样就完成了。

image.png

QQ 互联

开发者审核

image.png

我填的时候似乎没有那么麻烦,点点点就通过了。

网站应用审核

开发者审核通过后,创建网站应用:

image.png

按提示完善信息即可(填写规范详见 创建应用 — QQ互联WIKI)。

回调 URL 填:https://waline-auth.域名.com/qq?redirect=&state=

image.png

我踩过的坑:

  • 填对网站的 ICP 备案号,填写时要精确到杠号 - 带数字。
  • 网站页面要有 QQ 登录按钮,否则也会被驳回!

审核规范详见:应用审核规范 — QQ互联WIKI

注意记得在网站页面增加 QQ 登录的按钮,比如我在我的博客 blog.uuanqin.top 添加了「QQ 登录」按钮,按钮上加上跳转链接:

1
https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=appid&redirect_uri=Callback&state=state

我感觉链接参数中 client_id 随便填都行,或者就填自己的。

image.png

至于在主页添加 QQ 登录按钮的做法,对于 Hexo Butterfly 主题,详见:站内文章打开潘多拉宝盒三步走:参考-学习-魔改

修改一下基本信息,然后重新提交即可触发重新审核。每次审核大概第二天即可收到结果。

审核通过

审核通过后开启 unionid 获取权限:

image.png

关注创建好的应用两个参数:

image.png

更新 walinejs/auth 的环境变量:

环境变量 QQ 互联平台
QQ_ID <APP ID>
QQ_SECRET <APP Key>

Redeploy 后即可查看效果:

image.png

关于 QQ 的 Union ID

据官方文档显示,同一 QQ 互联平台下的不同应用,unionID 是相同的。换句话说,同一用户,对同一个 QQ 互联平台下的不同应用,unionID 是相同的 [1]

实际测试表明,向不同开发者的应用申请 unionID 得到的值互不相同。

本文参考


  1. UnionID介绍 — QQ互联WIKI ↩︎

版权声明 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 半方池水半方田

封面生成即梦 AI - 图片 5.0 Lite

Prompt将Waline Logo进行圆润可爱化变形,添加钥匙元素,采用明亮丰富的色彩搭配,生成卡通平面插画风格的封面图,画面元素主次分明,不要有任何文字

赞助

  • 微信

    微信

  • 支付宝

    支付宝


avatar

wuanqin

只能懂一点点

最新文章

蓝色的结构色