Seraph
几乎所有 Confluence (也包括 JIRA 应用程序)的授权都是通过 Seraph 完成的。Seraph 是 Atlassian's 开源 Web 授权框架。Seraph 的目的是提供一个简单,可扩展并可以在任何应用服务器上使用的的授权系统。
Seraph 是 servlet filter 的实现。其唯一的作用是对于给定的 Web 请求来将这个请求关联到特定的用户(或者没有用户,如果请求是匿名的话)。它支持几种验证方法,其中包括基于 HTTP 的验证,基于表单的验证,查找已经存储在用户会话中的证书。
Seraph 自己本身不提供用户管理功能。Seraph 仅仅用于对访问检查存储的认证信息,任何有关用户的的管理功能例如包括(查找一个用户,检查用户的密码)都是在 Confluence 的用户管理中完成的。
如果你希望将你的 Confluence 整合到你自己的单点登录(SSO)结构中,你需要安装 Atlassian Crowd 或者通过写一个 自定义的 Seraph 授权。请查看我们有关 使用 Seraph 进行 HTTP 授权的有关文档。
XML-RPC 和 SOAP 授权
通常情况下 Normally, requests for Confluence's 远程 API 请求将会包含一个授权令牌作为第一个参数。通过这种授权方式,XML-RPC 和 SOAP 授权请求将会在用户管理框架中直接被检查,同时令牌会通过远程 API 子系统被指派。这种请求是不会通过 Seraph 授权的。
但是,如果令牌参数为空的话,Seraph 将会为远程 API 请求作为回调授权方法。所以,如果同 XML-RPC 或者 SOAP 来使用一个自定义 Seraph 授权的话,你需要确定你的令牌参数在 HTTP API 请求中为空。
密码授权
在默认情况,密码授权被 Seraph 委托来作为用户管理系统。其实这种情况并不是必要的,但是当点登录系统根本就不会存在密码,所有必需的校验信息是从 SSO 服务器上获得的。