前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >BizTalk自定义证书加密/解密pipeline组件开发

BizTalk自定义证书加密/解密pipeline组件开发

作者头像
阿新
发布2018-04-12 19:17:16
6400
发布2018-04-12 19:17:16
举报
文章被收录于专栏:c#开发者c#开发者

    BizTalk自带有证书加密/签名的pipeline组件(MIME/SMIME),感觉配置比较复杂,而且不知道如何通过自己开发的客户端实现这种标准的加密/签名算法和BizTalk进行整合;

    如果有朋友做过相关的技术,能否共享一下;

    这次自己写了一下用.net 2.0自带的SignedXml,EncryptedXml,很容易就实现了这些功能,同时发现http://www.google.com/codesearch 非常不错,很多代码都可以找到;我就是从上面抄了一些;

    类似实现下面的弹出式对话框,和下拉列表框的功能,只需要加上下面的几句话就可以了;

[Editor(typeof(MyCertificateEditor), typeof(UITypeEditor))]

public string EncryptionThumbprint

        {

            get

            {

                if (_EncryptionThumbprint.IndexOf(" ") >= 0)

                    return _EncryptionThumbprint.Replace(" ", "");

                else

                    return _EncryptionThumbprint;

            }

            set

            {

                _EncryptionThumbprint = value;

            }

        }

选择证书的界面

弹出式编辑界面

下面是代码

代码语言:javascript
复制
internal class CertificateEditor : UITypeEditor

    {

        public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)

        {

            if (null == context) return value;

            if (null == provider) return value;



            IWindowsFormsEditorService service = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));

            if (null == service) return null;



            string orginalthumbprint = (value == null ? "" : value.ToString());

            CertificateEditorUI control = new CertificateEditorUI(service, orginalthumbprint,

                 System.Security.Cryptography.X509Certificates.StoreName.AddressBook,

                 System.Security.Cryptography.X509Certificates.StoreLocation.LocalMachine);

            service.DropDownControl(control);

            if (control.SelectThumbprint != null)

            {

                return control.SelectThumbprint;

            }

            return value;

        }





        public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)

        {

            return UITypeEditorEditStyle.DropDown;

        }

    }

代码:

http://files.cnblogs.com/neozhu/Solution_.rar

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2007-11-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档