2012-01-05 83 views
4

有什么方法可以在REST API之前使用http基本认证来使用http基本认证,该API还使用http基本认证使用不同的用户名和密码?嵌套的HTTP基本认证?

反向代理是Apache,如果它很重要。

最明显的解决方案似乎是让应用程序和代理使用不同的标头进行身份验证。

1)例如,我可以发送到象所述代理的请求:

GET /foo/1 HTTP/1.1 
Authorization: proxyuserpasshere 
X-Passthru-Authorization: restuserpasshere 

然后代理将消耗的“授权”报头和(如果它是有效的)传递到请求潜在的web应用程序,如:

GET /foo/1 HTTP/1.1 
Authorization: restuserpasshere 

(其中值“restuserpasshere”从“X-中继的授权”头拍摄)

有没有配置Apache,以便使该WO方式RK?相反,我可以使用代理的标准“Authorization”标头,并为我的应用程序的认证使用自定义标头。因此,请求将如下所示:

GET /foo/1 HTTP/1.1 
Authorization: proxyuserpasshere 
X-Myapp-Authorization: restuserpasshere 

的缺点,这是我的应用程序现在是硬编码使用“X-Myapp-Authorization”头而不是标准Authorization头的。

有没有更好的解决方法呢?

+0

一些详细信息在这里很有用。你是说你有一个需要一组用户名/密码的RESTful服务,需要另一组用户名和密码的代理? 不知道更多关于您的情况,我知道许多HTTP库提供了配置基本身份验证的选项。但听起来你需要更多东西。 – bitops 2012-04-15 06:45:19

+0

现在还好吗? – Rich 2012-04-16 08:41:24

回答