ste*_*776 3 c# asp.net security authentication servicestack
我正在使用servicestack.net库开发Web服务.
在我的场景中,将从WPF应用程序调用Web服务.我需要能够验证只有经过批准的客户端应用程序才能调用我的服务.
这就像在客户端应用程序中硬编码"用户名"和"密码"一样简单吗?这当然不是正确的方法.有没有更好的办法?
编辑 此外,在客户端,用户自己将能够使用用户名/密码登录并向服务发起请求(不确定这是否会影响任何内容,所以我想我会提到它),
有关ServiceStack中的身份验证的更多背景信息,请参阅此问题.
通常,您会对用户进行身份验证,而不是您似乎正在执行的客户端.但是,如果您试图锁定服务,以便只能通过一组特定的客户端访问它们,那么您应该考虑将一些PKI用于您的客户端和服务器.
基本上是这样的:客户端在登录时使用加密版本的用户:密码以及嵌入在应用程序中的私钥发送额外的令牌.服务器具有客户端公钥,因此在登录时将执行未额外验证步骤以解密用户:传递令牌并将其与经过验证的用户凭据进行比较.
如果PKI解决方案太重,那么不使用加密的替代策略可能是客户端使用秘密Guid,当他们登录时将发送Guid的MD5哈希版本和当前时间,以及未发布的版本时间.如果时间在指定的阈值内且MD5哈希值有效,那么他们使用经过身份验证的客户端.
归档时间: |
|
查看次数: |
1847 次 |
最近记录: |