Ejemplo n.º 1
0
        public static void CreateSigningRequest(VMCAServerDTO serverDTO)
        {
            MMCActionHelper.CheckedExec(delegate()
            {
                TypeDescriptor.AddAttributes(typeof(PrivateKeyDTO), new EditorAttribute
                                                 (typeof(PrivateKeyEditor), typeof(UITypeEditor)));
                TypeDescriptor.AddAttributes(typeof(PrivateKeyDTO), new CategoryAttribute("Security"));
                var dto           = new CertRequestDTO();
                var frm           = new GenericInputForm("Fill Signing Request", "Create", dto);
                frm.Icon          = VMCASnapInEnvironment.Instance.GetIconResource(VMCAIconIndex.cert);
                frm.ApplyDelegate = MiscUtilsService.ApproveCertRequestHandler;
                if (MMCDlgHelper.ShowForm(frm))
                {
                    using (var request = new VMCARequest(serverDTO.VMCAClient))
                    {
                        dto.FillRequest(request);
                        string csr = request.GetCSR(dto.PrivateKey.ToString());

                        serverDTO.SigningRequests.Add(new SigningRequestDTO {
                            CSR = csr, CreatedDateTime = DateTime.Now
                        });
                        MMCDlgHelper.ShowMessage(csr);
                    }
                }
            });
        }
        public static bool CreateSelfSignedCert(VMCAServerDTO serverDTO)
        {
            bool bResult = false;

            MMCActionHelper.CheckedExec(delegate()
            {
                TypeDescriptor.AddAttributes(typeof(PrivateKeyDTO), new EditorAttribute
                                                 (typeof(PrivateKeyEditor), typeof(UITypeEditor)));
                TypeDescriptor.AddAttributes(typeof(PrivateKeyDTO), new CategoryAttribute("Security"));

                var dto           = new CertRequestDTO();
                var frm           = new GenericInputForm("Fill Certificate Request", "Create", dto);
                frm.Icon          = VMCASnapInEnvironment.Instance.GetIconResource(VMCAIconIndex.cert);
                frm.ApplyDelegate = MiscUtilsService.ApproveCertRequestHandler;
                if (!MMCDlgHelper.ShowForm(frm))
                {
                    return;
                }

                var request = new VMCARequest(serverDTO.VMCAClient);
                dto.FillRequest(request);
                var vmcaCert = request.GetSelfSignedCertificate(dto.PrivateKey.ToString(), dto.NotBefore, dto.NotAfter);
                var cert     = vmcaCert.GetX509Certificate2();
                X509Certificate2UI.DisplayCertificate(cert);

                var localCertDTO = new PrivateCertificateDTO
                {
                    Certificate = Convert.ToBase64String(cert.RawData)
                };
                serverDTO.PrivateCertificates.Add(localCertDTO);
                bResult = true;
            });
            return(bResult);
        }
Ejemplo n.º 3
0
        public VMCAPersonalNode(VMCAServerDTO dto) : base(dto)
        {
            DisplayName = "Personal";
            Tag         = -1;

            InitNode();
        }
Ejemplo n.º 4
0
        public VMCACSRNode(VMCAServerDTO dto) : base(dto)
        {
            DisplayName = "Signing Requests";

            this.EnabledStandardVerbs = StandardVerbs.Refresh;
            ImageIndex = SelectedImageIndex = (int)VMCAImageIndex.Certificate;
            InitNode();
        }
Ejemplo n.º 5
0
 public VMCAServerNode(VMCAServerDTO dto) : base(dto)
 {
     this.DisplayName = dto.Server;
     IsLoggedIn       = false;
     ActiveCertsList  = new List <X509Certificate2> ();
     RevokedCertsList = new List <X509Certificate2> ();
     ExpiredCertsList = new List <X509Certificate2> ();
 }
Ejemplo n.º 6
0
 public static void Validate(VMCAServerDTO serverDTO, string cert)
 {
     try {
         VMCACertificate.Validate(cert);
     } catch (Exception e) {
         throw e;
     }
 }
        private bool CreateCASignedCert(VMCAServerDTO ServerDTO)
        {
            var res = CertRequest((x, y) =>
            {
                return(ServerDTO.VMCAClient.GetVMCASignedCertificate(x.GetRequestData(), y.PrivateKey.ToString(), y.NotBefore, y.NotAfter));
            }, ServerDTO);

            return(res);
        }
Ejemplo n.º 8
0
 public static void RevokeCertificate(X509Certificate2 cert, VMCAServerDTO dto)
 {
     try {
         var vmcaCert = new VMCACertificate(dto.VMCAClient, cert);
         vmcaCert.Revoke();
     } catch (Exception e) {
         throw e;
     }
 }
Ejemplo n.º 9
0
        public VMCAKeyPairNode(VMCAServerDTO dto)
            : base(dto)
        {
            DisplayName = "Key Pairs";
            Tag         = -1;

            this.EnabledStandardVerbs = StandardVerbs.Refresh;
            ImageIndex = SelectedImageIndex = (int)VMCAImageIndex.KeyPairs;
            InitNode();
        }
Ejemplo n.º 10
0
        public VMCAServerNode(VMCAServerDTO dto) : base(dto)
        {
            this.DisplayName          = dto.Server;
            this.EnabledStandardVerbs = StandardVerbs.Delete;

            this.ActionsPaneItems.Add(new Microsoft.ManagementConsole.Action("Login",
                                                                             "Login", -1, ACTION_LOGIN));
            ImageIndex = SelectedImageIndex = (int)VMCAImageIndex.Server;
            PopulateChildren();
        }
        public bool CreateSelfSignedCert(VMCAServerDTO serverDTO)
        {
            var res = CertRequest((x, y) =>
            {
                var vmcaCert = x.GetSelfSignedCertificate(y.PrivateKey.ToString(), y.NotBefore, y.NotAfter);
                return(vmcaCert.GetX509Certificate2());
            }, serverDTO);

            return(res);
        }
        public VMCAPersonalCertificatesNode(VMCAServerDTO dto)
            : base(dto)
        {
            DisplayName = "Certificates";
            Tag         = -1;

            this.EnabledStandardVerbs = StandardVerbs.Refresh;
            ImageIndex = SelectedImageIndex = (int)VMCAImageIndex.Certificate;

            InitNode();
        }
Ejemplo n.º 13
0
 public void RefreshMethod(VMCAServerDTO dto)
 {
     if (dto == null)
     {
         RefreshAll();
     }
     else
     {
         AddServerNode(dto);
     }
 }
Ejemplo n.º 14
0
        public static string GetVersion(VMCAServerDTO dto)
        {
            string version = "";

            try {
                version = dto.VMCAClient.GetServerVersion();
            } catch (Exception e) {
                throw e;
            }
            return(version);
        }
Ejemplo n.º 15
0
 public void RemoveServer(VMCAServerDTO dto)
 {
     for (int i = 0; i < SerializableList.Count; i++)
     {
         VMCAServerDTO item = ServerQueue.Dequeue();
         if (!string.Equals(item.Server, dto.Server))
         {
             ServerQueue.Enqueue(item);
         }
     }
     SerializableList.Remove(dto);
 }
Ejemplo n.º 16
0
        public void Initialise(string server)
        {
            this.Server = server;
            //check if server is present in persistence and load the DTO
            VMCAServerDTO dto = VMCAAppEnvironment.Instance.LocalData.GetServerDTO(Server);

            if (dto == null)
            {
                dto = VMCAServerDTO.CreateInstance();
            }
            Servernode = new VMCAServerNode(dto);
        }
Ejemplo n.º 17
0
        public void AddServer(VMCAServerDTO dto)
        {
            var match = SerializableList.FirstOrDefault(listElement => string.Equals(listElement.Server, dto.Server));

            if (match == null)
            {
                if (ServerQueue.Count >= CacheSize)
                {
                    VMCAServerDTO item = ServerQueue.Dequeue();
                    SerializableList.Remove(item);
                }
                ServerQueue.Enqueue(dto);
                SerializableList.Add(dto);
            }
        }
Ejemplo n.º 18
0
        public VMCAServerNode(VMCAServerDTO dto) : base(dto)
        {
            this.DisplayName          = dto.Server;
            this.EnabledStandardVerbs = StandardVerbs.Delete | StandardVerbs.Refresh;

            this.ActionsPaneItems.Add(new Microsoft.ManagementConsole.Action("Login",
                                                                             "Login", -1, ACTION_LOGIN));
            ImageIndex = SelectedImageIndex = (int)VMCAImageIndex.Server;
            var lvd = new MmcListViewDescription();

            lvd.DisplayName = "dto.Server";
            lvd.ViewType    = typeof(MmcListView);
            this.ViewDescriptions.Add(lvd);
            this.ViewDescriptions.DefaultIndex = 0;
            PopulateChildren();
        }
Ejemplo n.º 19
0
        async void AddServer()
        {
            try
            {
                var ServerDTO = VMCAServerDTO.CreateInstance();
                ServerDTO.Server = "";
                var node = new VMCAServerNode(ServerDTO);
                await node.DoLogin();

                if (node.ServerDTO.IsLoggedIn)
                {
                    VMCASnapInEnvironment.Instance.LocalData.AddServer(node.ServerDTO);
                    this.Children.Add(node);
                }
            }
            catch (Exception e)
            {
                MMCDlgHelper.ShowException(e);
            }
        }
Ejemplo n.º 20
0
 public ChildScopeNode(VMCAServerDTO dto)
 {
     this.ServerDTO = dto;
 }
Ejemplo n.º 21
0
 public PrivateCertsListView(List <PrivateCertificateDTO> certList, VMCAServerDTO dto, int state)
 {
     Entries          = certList;
     ServerDto        = dto;
     CertificateState = state;
 }
Ejemplo n.º 22
0
 public VMCACertsNode(VMCAServerDTO dto) : base(dto)
 {
     this.EnabledStandardVerbs = StandardVerbs.Delete | StandardVerbs.Refresh;
 }
Ejemplo n.º 23
0
 public NodesListView(List <ScopeNode> nodesList, VMCAServerDTO dto)
 {
     Entries   = nodesList;
     ServerDTO = dto;
 }
Ejemplo n.º 24
0
 public CertificateDetailsListView(List <X509Certificate2> certList, VMCAServerDTO dto, int state)
 {
     Entries          = certList;
     ServerDto        = dto;
     CertificateState = state;
 }
Ejemplo n.º 25
0
        public ChildScopeNode(VMCAServerDTO dto)
        {
            ServerDTO = dto;

            this.EnabledStandardVerbs = StandardVerbs.Refresh;
        }
Ejemplo n.º 26
0
 public VMCACertsNode(VMCAServerDTO dto) : base(dto)
 {
 }
Ejemplo n.º 27
0
 public VMCAPersonalCertificatesNode(VMCAServerDTO dto)
     : base(dto)
 {
     DisplayName = "Certificates";
     Tag         = -1;
 }
Ejemplo n.º 28
0
        void AddServerNode(VMCAServerDTO dto)
        {
            var node = new VMCAServerNode(dto);

            this.Children.Add(node);
        }
Ejemplo n.º 29
0
 public VMCACSRNode(VMCAServerDTO dto) : base(dto)
 {
     DisplayName = "Signing Requests";
 }
Ejemplo n.º 30
0
 public CSRDetailListView(List <SigningRequestDTO> nodesList, VMCAServerDTO dto)
 {
     _entries = nodesList;
     this.dto = dto;
 }