2

我在我的项目中使用 asp.net mvc 控制器而不是 Web 服务。

当我从客户端应用程序调用控制器时,会出现身份验证问题。如果我使用 Web 服务,我可以使用 SOAP 标头,但现在在 asp.net mvc 中,没有肥皂标头。

请帮忙。

我真的对网络安全略知一二。

4

3 回答 3

0

你有几个选择。

  1. 使用请求标头来包含一些安全令牌。
  2. 在您在请求正文中发送的消息中包含安全令牌。
  3. 如果您的应用程序使用类似 Forms Authentication 的东西,您可以要求消费者调用登录操作,然后获取 Forms Auth cookie 并将该 cookie 包含在后续调用中。
于 2012-05-22T05:40:36.270 回答
0

当您使用 http 服务时,执行此操作的正常方法是以以下格式在授权标头中传递它(如果您正在执行来自提琴手的请求)

Authorization: Basic user123:pass123

user123:pass123字符串通常是 base64 编码的,您必须在服务器端对其进行解码,对照用户存储检查它并验证用户。一个例子可以在这里找到

于 2012-05-22T05:44:49.557 回答
0

因为你没有使用肥皂。您可以使用简单的http方式。这意味着您启动一个 HttpRequest 并通过 HttpResponse 处理结果。因此,您必须将身份验证操作模拟为从 Web 浏览器登录。

您需要从响应中获取安全令牌或 cookie。并将它们放入您的以下请求中。因此,您的控制器将识别请求的身份。

于 2012-05-22T05:44:51.150 回答