首页 新闻 会员 周边 捐助

C# 证书权限问题

0
悬赏园豆:10 [已关闭问题] 关闭于 2017-02-04 16:17

问题:如何用代码的形式给数字证书添加 Everyone 角色

目前已经能将证书安装完成,但是只是用可视化的操作添加权限角色,现在希望用代码自动添加,在网上找了很多相关内容,但是没有合适的解决方案。 哪位兄弟知道这方面内容的话方便告知一下。感谢。

问题补充:
storee = new X509Store(StoreName.My, StoreLocation.LocalMachine);
                storee.Open(OpenFlags.MaxAllowed);
                X509Certificate2 myX509Certificate2 =
                new X509Certificate2(
                  path,    //证书路径
                  pwd,     //证书的私钥保护密码
                  X509KeyStorageFlags.Exportable  | X509KeyStorageFlags.MachineKeySet //表示此证书的私钥以后还可以导出|私钥储存在本地计算机
                );
            
                //myX509Certificate2.Archived = true;//是否存档
                RSACryptoServiceProvider rsa = myX509Certificate2.PrivateKey as RSACryptoServiceProvider;
                CryptoKeyAccessRule rule = new CryptoKeyAccessRule("Everyone", CryptoKeyRights.FullControl, AccessControlType.Allow);
                rsa.CspKeyContainerInfo.CryptoKeySecurity.AddAccessRule(rule); //添加权限

                AuthorizationRuleCollection au = rsa.CspKeyContainerInfo.CryptoKeySecurity.GetAccessRules(true, true, typeof(System.Security.Principal.SecurityIdentifier));//查看所有权限

添加权限的操作是没有问题,但是查看所有权限的时候却没有显示,而且实际控制台中也没有显示。

JO的美好时光的主页 JO的美好时光 | 初学一级 | 园豆:14
提问于:2017-01-18 15:43
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册