zoukankan      html  css  js  c++  java
  • WebService在关闭匿名访问状态下的调用

    问题的起由是项目的需要重写了SPS的文档库的一些操作发布为WebService,由于要访问SPS对象模型,因此WebService必须发布在SPS站点之下,这样发布的WebService默认就关闭了匿名访问,而WebService客户端代理默认是不继承运行WebService客户端代理应用程序的安全上下文凭证的,因此如果不对WebService客户端代理加上安全凭证信息的访问都是没有授权的.

    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;

    注意第二种验证方式服务端和客户端在同一台机器时会出现一些权限问题,分开程序即可
  • 相关阅读:
    算法习题---3.11换抵挡装置(UVa1588)
    这不是bug,而是语言特性
    Makefile 11——支持头文件目录指定
    Makefile 10——打造更专业的编译环境-huge项目
    Makefile 9——为依赖关系文件建立依赖关系
    Makefile 8——使用依赖关系文件
    FreeRTOS——1
    Makefile 7——自动生成依赖关系 三颗星
    Makefile学习之路6——让编译环境更加有序
    RCC—使用 HSE/HSI 配置时钟 ---时钟树
  • 原文地址:https://www.cnblogs.com/xqyi/p/62342.html
Copyright © 2011-2022 走看看