访问控制对Web服务

问题描述:

这是我想达到的目的:访问控制对Web服务

我的ASP.NET Web服务是一个叫//服务服务器托管。我想通过服务器和应用程序来控制对Web服务的访问。我的意思是如果我有两个ASP.NET Web应用程序(app1和app2)托管在名为// web1的服务器上,并且我只希望// web1/app1能够调用Web服务。我知道我可以授予对IP地址// web1的访问权限,但是这样可以允许访问网络服务和访问网络服务。

我在考虑使用SSL证书,因为我不希望Web应用程序处理登录名/密码。在//服务,我将授予访问的// WEB1的IP,并// web1的到Windows帐户客户端证书映射,这将只允许应用程序从// web1的访问。但是,如何进一步控制访问权限只有// web1/app1

您可以使用标准HTTP Authentication来控制哪些应用程序可以访问您的Web服务。

凭证通过授权标头与每个请求。每个Web服务客户端(即// web1/app1)都应该拥有自己的凭证,因此如果// web1/app2试图连接到Web服务而不提供可识别的凭证,它将被拒绝访问。

我建议使用SSL加密所有流量,以便认证信息和其他敏感数据是安全的。

这里有几个文章,可能会有所帮助:

祝你好运!

不是。

证书确保了客户端和服务器域之间的传输。对于多个子目录有多个证书并不真正有效。

你想要做的是创建一个返回令牌的登录服务。然后,您使用该令牌来管理服务器端的会话,并且客户端将其与每个后续请求一起使用,以访问和执行可用服务。 (这个令牌是否可以访问这个web服务?t/f)

你将不得不让客户端访问某种凭证。无论是证书交换还是用户/通行证,您都必须弄清楚客户实际上是谁。