原文:构建安全的Xml Web Service系列之wse之证书存储位置

我们在前几天对xml web service的安全性提出了一些建议,大家可以通过以下地址访问:

构建安全的Xml Web Service系列之初探使用Soap头

构建安全的Xml Web Service系列之如何察看SoapMessage

构建安全的Xml Web Service系列之SSL篇

我曾经在上面几篇文章中承诺过要写一些有关wse3.0的,可一直没有时间,自身对wse3.0的认识也是非常有限,所以一直没有实现诺言,很是愧疚,今天我就一个小问题作为wse的引子,希望大家继续关注和支持我。

第一次使用windows live writer,难免有排版和疏漏,见谅

今天发生了一件十分郁闷的事情,好多天前我用wse3证书验证方式架设了一个web service,另外又多此一举的加上了SSL,并在本地安装根证书和用于wse验证证书,在本地创建的客户端是一个web application,在vs 2005里面调试一直没有问题,好长时间了,我还以为一切顺利呢,给合作方也写了文档说明,发给了人家,结果今天对方报告说将网站发布在开发机上后,无法访问,错误为在指定存储位置找不到x.509证书,我在本机测试了下,你说郁闷不?在vs2005里面调试中运行的好好的页面,发布到IIS中就有这个问题,我将证书存储在CurrentUser的My下面了,我开始就怀疑network services 不能访问这个存储位置造成这个错误,但是为何在vs2005中调试就没有问题呢?细想,原来在vs2005的虚拟IIS是不是运行在network service账户下的,因为我每次调试,并没有看到w3wp进程启动,network services账户是不能访问当前用户存储下的证书的,这个是一个wse访问证书因为权限问题最常见的问题,而windows应用程序因为运行在当前账户上却可以访问。而network service能够访问本地计算机存储位置下的证书,于是我将证书重新导入到本地计算机-个人,然后将<x509 storeLocation="CurrentUser"更改为<x509 storeLocation="LocalMachine",重新打开网页,程序就可以了。

通过今天这个小小的问题,我总结出三条经验:

1)当我们遇到同样环境下,同一个程序一个能运行,一个不能运行,我们首先可以考虑的是权限的问题,我们程序运行的账户是否有权限访问某个资源。

2)vs2005中虚拟的IIS和IIS存在着些许的差异,不要图一时方便,用这个作为程序正常的标准,最好还是在iis里面调试和运行程序,可以少一些麻烦。

3 )  当您的应用程序为运行在iis的应用程序的时候,如果不采用模拟,您的应用程序是不能访问位于当前用户下的证书的,包括用于SSL的证书,这个问题更典型,如果您在ie中能访问https的页面,在程序中却不能的话,那问题可能就出在这里。ie是运行在当前用户的,所以能访问当前用户下证书,而iis中的程序是运行在network services的,不能访问,您必须将证书存放在本地计算机才可以。

构建安全的Xml Web Service系列之wse之证书存储位置的更多相关文章

  1. 构建安全的Xml Web Service系列之wse之错误代码详解

    原文:构建安全的Xml Web Service系列之wse之错误代码详解 WSE3.0现在还没有中文版的可以下载,使用英文版的过程中,难免会遇到各种各样的错误,而面对一堆毫无头绪的错误异常,常常会感到 ...

  2. 构建安全的Xml Web Service系列之SSL篇

    原文:构建安全的Xml Web Service系列之SSL篇 首先介绍一下SSL, SSL 的英文全称是 "Secure Sockets Layer" ,中文名为 "安全 ...

  3. 构建安全的Xml Web Service系列之初探使用Soap头

    原文:构建安全的Xml Web Service系列之初探使用Soap头 Xml Web Service 从诞生那天就说自己都么都么好,还津津乐道的说internet也会因此而进入一个新纪元,可5年多来 ...

  4. 构建安全的Xml Web Service系列之如何察看SoapMessage

    原文:构建安全的Xml Web Service系列之如何察看SoapMessage 上一篇文章地址:构建安全的Xml Web Service系列一之初探使用Soap头 (5-22 12:53)     ...

  5. C# 开发XML Web Service与Java开发WebService

    一.web service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量 ...

  6. 深入学习Web Service系列----异步开发模式

    概述 在本篇随笔中,通过一些简单的示例来说一下Web Service中的异步调用模式.调用Web Service方法有两种方式,同步调用和异步调用.同步调用是程序继续执行前等候调用的完成,而异步调用在 ...

  7. XML Web Service架构图

  8. Web Service简介 内部资料 请勿转载 谢谢合作

    1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求, ...

  9. Web Service 的工作原理

    Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的 ...

随机推荐

  1. httpd的简单配置(转)

    一般网站都采用httpd作web服务器提供web页面,本文主要介绍下几个httpd中常用的配置属性和配置方式,当然具体应用更具具体需求来定. 代理模块配置: 由于网页动态化,网页的生成基本代理到后端服 ...

  2. Android菜鸟的成长笔记(27)——ViewPager的使用

    ViewPager是Android 3.0以上能够使用的API. 一.ViewPager能干什么? 1.微信5.0中连带滑动用ViewPager能够轻松实现. 2.实现相似于新浪微博的导航引导界面. ...

  3. 你真的了解mysql的varchar字段的长度有多少吗?

    今天在设计系统字段的时候, 发现自己对varchar还不够了解.我设了一个字段.类型为VARCHER,然后我就往里面测试性了写了东西.发现没有多少就满了.我觉得奇怪,5.5版本以上的MYSQL不是有6 ...

  4. zabbix监控nginx连接状态(转)

    zabbix监控nginx zabbix可以监控nginx的状态,关于一个服务的状态可以查看服务本身的状态(版本号.是否开启),还应该关注服务能力(例如以nginx的负载效果:连接数.请求数和句柄数) ...

  5. 提供一个好用的Oracle Database 11g 下载地址

    提供一个好用的Oracle Database 11g 下载地址,在windows xp 操作系统下,测试通过. http://download.oracle.com/otn/nt/oracle11g/ ...

  6. hdu1159 LCS模板题

    题目分析 pid=1159">原题地址 最简单的最长公共子序列(LCS)问题的模板题了.不解释. ------------------------------------------- ...

  7. 处理json中影响解析的多余引號

    在xml中,敏感字符是尖括号,在json中,敏感字符是引號,上文中我们介绍了怎样处理xml中的敏感字符.本文说说怎样处理json中的敏感字符. 思路与上文同样,不再赘述.直接上代码: json–> ...

  8. Webserver管理系列:1、安装Windows Server 2008

    简单了解下server: 1U: 2U: 3U: 在安装Windows Server 2008之前我们先了解下Windows Server 2008: Windows Server 2008是微软一个 ...

  9. SQLserver2012 tcp/ip 1433port问题解决方法

    非常多MSSQL安装完毕后,调用1433(默认port)是失败的,这边具体介绍下解决方法. 一..我们须要在电脑上开启telnet服务,定位问题须要.在cmd下使用telnet,假设报命令不存在说明没 ...

  10. 八月份 CUGBACM_Summer_Tranning 题解

    CUGBACM_Summer_Tranning4 比赛链接:http://vjudge.net/contest/view.action?cid=52230#overview 题解链接: F . HDU ...