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

OAuth2访问令牌允许哪些字符?RFC6749与RFC6750存在分歧

OAuth2访问令牌允许字符的规范分歧:RFC6749 vs RFC6750

做OAuth2开发时,你大概率会碰到一个容易混淆的细节:RFC6749(OAuth2核心规范)和RFC6750(OAuth2令牌使用规范)在访问令牌允许的字符范围上存在明确分歧。

RFC6749的宽松定义

作为原始OAuth2规范,RFC6749的A.12节("access_token"语法)明确了访问令牌的ABNF规则,该规则同时在4.2.2和5.1节中被引用:

access-token = 1*VSCHAR

在ABNF格式里,VSCHAR的定义是:

VSCHAR = %x20-7E

简单来说,这意味着RFC6749允许访问令牌使用所有可打印的ASCII字符——从空格到波浪号,涵盖字母、数字、各类符号等,给实现方留了极大的灵活空间。

RFC6750的严格限制

而专门规范OAuth2令牌在HTTP场景中使用的RFC6750,对令牌字符范围做了更严苛的约束。考虑到令牌经常会被放在HTTP头(比如Authorization头的Bearer字段)或URL参数里传输,为了避免编码歧义、兼容各类HTTP客户端,RFC6750建议访问令牌仅使用URL安全字符:也就是字母、数字,以及-、_、.、~这几个不会触发编码问题的符号。甚至在实现指导中,它更倾向于令牌采用Base64URL编码的格式,确保完全适配各种HTTP传输场景。

这种分歧本质上是两个规范的侧重点不同:RFC6749作为核心规范,只定义令牌的基础结构要求;而RFC6750聚焦于实际传输场景,更注重兼容性和安全性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:30:32