public override void Context()
            {
                base.Context();
                keyLocation = dotNetPath.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "Microsoft", "Crypto", "RSA", "MachineKeys");

                groups = new List <string>
                {
                    WellKnownSecurityRoles.Users
                };

                PhysicalServer server = new DeploymentServer("localhost");

                task        = new GrantReadCertificatePrivateKeyTask(server, groups, thumbprint, StoreName.My, StoreLocation.LocalMachine, dotNetPath);
                certificate = BaseSecurityCertificatePermissionsTask.FindCertificateBy(thumbprint, StoreName.My, StoreLocation.LocalMachine, server, result);
            }
Example #2
0
        private static DeploymentResult GrantCertificatePermissions(string[] args)
        {
            var result = new DeploymentResult();

            var perm             = args[1];
            var groupArray       = args[2];
            var thumbprint       = args[3];
            var storeNameArg     = args[4];
            var storeLocationArg = args[5];

            var groups = groupArray.Split(new[] { "|" }, StringSplitOptions.RemoveEmptyEntries);

            var storeName     = (StoreName)Enum.Parse(typeof(StoreName), storeNameArg, true);
            var storeLocation = (StoreLocation)Enum.Parse(typeof(StoreLocation), storeLocationArg, true);

            switch (perm)
            {
            case "r":
                result = new GrantReadCertificatePrivateKeyTask(_server, groups, thumbprint, storeName, storeLocation, new DotNetPath()).Execute();
                break;
            }

            return(result);
        }
Example #3
0
        public override void RegisterRealTasks(PhysicalServer server)
        {
            var task = new GrantReadCertificatePrivateKeyTask(server, _groups, _thumbprint, _storeName, _storeLocation, _dotnetPath);

            server.AddTask(task);
        }