WebService代理类有一个凭证属性用来为WebService调用提供凭证,基本语法如下:
//Assigning DefaultCredentials to the Credentials property
//of the Web service client proxy (myProxy).
myProxy.Credentials= System.Net.CredentialCache.DefaultCredentials;
通常有两种凭证信息可以使用:一是运行WebService客户端代理的应用程序的安全上下文凭证.二是可以自己创建一个用户帐号以提供凭证.
以下代码创建一个用户凭证,将这个凭证赋给WebService代理类的凭证属性即可用该帐号访问WebService了,这种用法通常用来处理WebService内部操作和帐号没有关系的情况.
System.Net.NetworkCredential credentials=new NetworkCredential("UserName","UserPWD","Domain"

以下代码使用运行WebService客户端代理的应用程序的安全上下文凭证运行WebService,对于C/S架构的客户端程序,该帐号默认是Window凭证,即运行客户端程序的用户、密码、域。对于ASP.NET应用程序,默认是 ASP.NET 辅助进程的标识的用户凭据,如果启用了Web.Config中的用户模拟属性,这该帐号是客户端当前Window帐号。
myProxy.Credentials= System.Net.CredentialCache.DefaultCredentials;
注意第二种验证方式服务端和客户端在同一台机器时会出现一些权限问题,分开程序即可