小编Aru*_*run的帖子

用于替换signtool.exe的API /库

Windows SDK附带了一个名为signtool.exe的工具,可让您使用证书对文件进行签名.我需要做同样的事情,但在后台服务,所以我正在寻找一个库(最好是托管代码,但COM会做),做同样的事情.有任何想法吗?

找到了答案.以下是如何使用X.509证书在.NET中签名文件:

CmsSigner signer = new CmsSigner();
signer.Certificate = new X509Certificate2(certificate);

SignedCms content = new SignedCms(new ContentInfo(File.ReadAllBytes(fileToSign)));
content.ComputeSignature(signer, true);
byte[] signedFile = content.Encode();

string signedFileName = fileToSign + ".signed";
File.WriteAllBytes(signedFileName, signedFile);

Console.WriteLine("Signed file: " + signedFileName);
Run Code Online (Sandbox Code Playgroud)

这里,certificate是包含证书的.pfx文件的路径,fileToSign是要签名的文件.

.net signing certificate

11
推荐指数
1
解决办法
3620
查看次数

在WCF服务之间共享会话

我一直致力于拆分Web应用程序的应用层和Web层.在应用层中,我设法将业务逻辑分离为使用WCF代理公开的一堆服务.问题是这些服务与另一个使用大型CLR对象作为其主要通信方式的遗留应用程序进行通信.为了保持快速,我在第一次创建对象后,一直在会话中保留此对象的副本.现在我知道WCF可以进行会话,但是会话存储是按服务进行的,而我的业务逻辑现在被分成多个服务(应该是这样).

现在的问题是:

  1. 有没有办法在同一主机上托管的WCF服务之间共享会话存储?
  2. 这甚至是我应该做的事情吗?
  3. 如果没有,那么这里的最佳做法是什么?

这可能不是第一次有人在服务器上拥有大型业务对象.不幸的是,我确实需要为每个用户缓存此对象(因此会话).

答案很明显,我只是没有看到它.请帮忙!

wcf

8
推荐指数
1
解决办法
1万
查看次数

从Windows服务调用Web服务

我确信这个问题有一个优雅的解决方案,但我无法理解它.我试图从Windows服务中调用Web服务.Web服务是安全的(使用Windows身份验证).运行Windows服务的帐户确实有权调用Web服务,但我无法弄清楚如何获取这些凭据并将其发送到Web服务.Web服务是WCF,并与Windows服务托管在同一台计算机上(在IIS中).

.net c# web-services windows-services

3
推荐指数
1
解决办法
4661
查看次数

标签 统计

.net ×2

c# ×1

certificate ×1

signing ×1

wcf ×1

web-services ×1

windows-services ×1