跨服务的服务设计和认证/授权

时间:2012-06-18 08:48:03

标签: web-services api rest soa

我正在开发我的第一个基于SOA的基于Web的应用程序。我对SOA非常陌生,仍然试图围绕服务设计的最佳设计原则,尤其是服务应该与另一个人交谈的方式。

我想弄清楚当前的问题与身份验证和授权有关。假设我有一个简单的用户服务和事件服务,其中事件服务代表日历中的事件。通常的做法是让事件服务调用用户服务来授权请求​​吗?或者,更好的做法是在客户端和请求的服务之间存在的系统上实现用户授权?该系统本质上只是另一种服务,它检查用户凭证以确保他们可以访问所请求的操作(GET events / 1等),如果是,则将请求发送给服务。此服务还可以充当中央负载均衡器和缓存......我只是想将用户逻辑保留在每个特定服务之外。

1 个答案:

答案 0 :(得分:0)

您可以使用siteminder作为身份验证和授权。只有具有有效令牌的客户端才能调用该服务。您也可以在siteminder中分配角色。