我有以下情况:
我想让用户使用OASIS方案来使用web服务进行身份验证--据我所知,WCF已经允许这样做--或者我们可以向他们颁发证书以进行身份验证。这一点还没有真正解决。
下面是一些伪代码,说明我设想这将如何在服务中工作:
function GetUsersData(id)
var user := Lookup User based on Username from Auth Context
var data := Get Data From Repository based on "user"
return data
end function对于业务逻辑场景,我认为应该如下所示:
function PerformBusinessLogic(someData)
var user := Lookup User based on Username from Auth Context
var returnValue := Perform some logic based on supplied data
return returnValue
end function这里的难点是获取用户使用!进行身份验证的当前用户名(或cert场景中的cert信息)。
WCF甚至启用此场景吗?如果没有,WSE3会启用这个功能吗?
谢谢,
发布于 2010-04-14 18:29:37
不应该太难,我想:
给定一个Windows标识,您还可以在业务或数据层中模拟调用该调用者,如果需要,可以查看MSDN文档WCF的委托和模拟,或者谷歌或必应的"WCF模拟“应该会为您提供大量关于该主题的有价值的链接。
如果Windows和证书路径都不适合您,WCF还允许您创建自己的自定义身份验证方案,在这种情况下,您需要为WCF编写一个扩展,插入它,并获得发送给您的呼叫用户的用户名/密码,以便根据您可能拥有的任何类型的自定义存储进行验证。
WCF在许多方面为您提供了一个的灵活性--我非常怀疑您会发现一个在WSE3中工作但在WCF中工作得不太好(或更好)的场景!
https://stackoverflow.com/questions/2639933
复制相似问题