单声道Web服务和基本身份验证

时间:2011-06-14 08:24:03

标签: c# web-services mono basic-authentication

我正在尝试向我的网络服务添加基本的真实性。我按照此article中的步骤操作,最后在我的web.config文件中输入:

<configuration>
<httpModules>
    <add name="BasicAuthenticationModule" 
     type="Mono.Http.Modules.BasicAuthenticationModule, Mono.Http, Version=2.0.0.0, PublicKeyToken=0738eb9f132ed756"/>
  </httpModules>
  <appSettings>
    <add key="Authentication" value="Basic" />
    <add key="Basic.Users" value="/home/vadmin/Projects/TestService/TestService/users.xml" />
    <add key="Basic.Realm" value="My Realm" />
  </appSettings>
</configuration>

我的users.xml如下所示:

<?xml version="1.0" encoding="utf-8"?>
<users>
<user name="adrian" password="adrian">
    <role name="user" />
</user>
</users>

当我运行xsp2然后转到

http://localhost:8080/TestService.asmx

出现

用户和密码提示。但在我输入正确的用户名和密码后,它一次又一次地问我。我非常确定users.xml文件的路径是正确的,尝试使用--verbose选项运行xsp2,希望得到一些没有运气的错误消息。

任何人都可以帮我调试这种情况吗?

1 个答案:

答案 0 :(得分:1)

如果在配置文件中指定以/开头的路径,则不会将其解释为文件系统的根目录,而是解释为网站的根目录 - 即/ home / vadmin / Projects / TestService / TestService。 / p>

因此,以/开头的路径应相对于网站根文件夹 - 如果users.xml文件位于项目文件夹中,则为“/users.xml”。