「应用安全」OAuth和OpenID Connect的全面比较(20)

不参考RFC等主要来源的工程师无法发现他们找到的答案中的错误 , 并毫无疑问地相信答案 。 但是 , 工程师必须避免阅读RFC以成为真正的工程师 。

要成为真正的工程师 , 请不要避免阅读RFC 。 只搜索技术博客和Stack Overflow寻找答案永远不会把你带到正确的地方 。

6.5 。 Client Application Developer

一些开源授权服务器提供了一种机制 , 可以动态注册客户端应用程序 , 如HTML表单(ForgeRock的OpenAM)和Web API(MITRE的MITREid Connect) 。 但是 , 似乎只有授权服务器的管理员才能注册客户端应用程序 。 但是 , 理想的方法是创建类似于Twitter的应用程序管理控制台 , 让开发人员登录 , 并提供一个环境 , 让每个开发人员都可以注册和管理他/她自己的客户端应用程序 。 为此 , 客户端应用程序的数据库表应该有一个包含开发人员唯一标识符的列 。

它经常被遗忘 , 因为实现授权服务器本身很麻烦 , 但是还需要提供管理客户端应用程序的机制 , 以便向公众开放Web API 。 如果Web API的预期用户仅限于封闭组 , 则授权服务器的管理员可以在每次请求他/她时注册客户端应用程序 。 事实上 , 有一家公司的管理员为每个注册请求手动键入SQL语句 。 但是 , 如果要向公众开放Web API , 此类操作将无法运行 , 您将意识到必须为客户端应用程序提供合适的管理控制台 。 如果您成功确保了开发授权服务器和Web API的预算 , 但忘记了为客户端应用程序确保管理控制台的预算 , 则会导致“已实现Web API但无法向公众开放” 。

推荐阅读