public void PrivateCertificateProcessing_CreateCertificate_CngRsa2048_ClientServerAuth_ReturnedX509Certificate2HasClientServerAuthKeyUsage()
        {
            KeyUsage expected = KeyUsage.ServerAuthentication | KeyUsage.ClientAuthentication;

            CreatePrivateCertificateModel model = new CreatePrivateCertificateModel()
            {
                CipherAlgorithm            = CipherAlgorithm.RSA,
                KeyUsage                   = expected.ToString(),
                HashAlgorithm              = HashAlgorithm.SHA256,
                KeySize                    = 2048,
                Provider                   = WindowsApi.Cng,
                SubjectAlternativeNamesRaw = "integrationtestdomain.com,integrationtestdomain",
                SubjectCity                = "Seattle",
                SubjectCommonName          = "integrationtestdomain",
                SubjectCountry             = "US",
                SubjectDepartment          = "Engineering",
                SubjectState               = "WA",
                SubjectOrganization        = "IntegrationTestingCorp"
            };


            PrivateCertificateProcessing   processor = new PrivateCertificateProcessing(certDb, configDb, certProvider, GetAuthorizationLogic_Allow(), templateLogic, GetAuditLogic());
            CreatePrivateCertificateResult result    = processor.CreateCertificateWithPrivateKey(model, user.Object);

            X509Certificate2 cert = new X509Certificate2(result.PfxByte, result.Password);

            KeyUsage actualKeyUsage = x509Normalization.GetKeyUsage(cert);

            Assert.AreEqual(expected, actualKeyUsage);
        }
Exemplo n.º 2
0
        public void X509Normalization_GetKeyUsage_NullCertificate_ThrowArgumentNullException()
        {
            X509Normalization x509Normalization = new X509Normalization();

            X509Certificate2 cert = null;

            x509Normalization.GetKeyUsage(cert);
        }
Exemplo n.º 3
0
        public void X509Normalization_GetKeyUsage_NoKeyUsage_ReturnNoneKeyUsage()
        {
            KeyUsage expectedKeyUsage = KeyUsage.None;

            X509Normalization x509Normalization = new X509Normalization();

            X509Certificate2 cert = GetNoKeyUsageCapiRsaTestCertificate();

            KeyUsage actualKeyUsage = x509Normalization.GetKeyUsage(cert);

            Assert.AreEqual(expectedKeyUsage, actualKeyUsage);
        }
Exemplo n.º 4
0
        public void X509Normalization_GetKeyUsage_CertificateAuthority_ReturnCertificateAuthorityKeyUsage()
        {
            var test = GetTestCertificatePath();

            KeyUsage expectedKeyUsage = KeyUsage.CertificateAuthority;

            X509Normalization x509Normalization = new X509Normalization();

            X509Certificate2 cert = GetCertificateAuthorityCngEcdsaTestCertificate();

            KeyUsage actualKeyUsage = x509Normalization.GetKeyUsage(cert);

            Assert.AreEqual(expectedKeyUsage, actualKeyUsage);
        }
Exemplo n.º 5
0
        public void X509Normalization_GetKeyUsage_ServerOid_ReturnServerAuthenticationKeyUsage()
        {
            var test = GetTestCertificatePath();

            KeyUsage expectedKeyUsage = KeyUsage.ServerAuthentication;

            X509Normalization x509Normalization = new X509Normalization();

            X509Certificate2 cert = GetServerAuthenticationCngRsaTestCertificate();

            KeyUsage actualKeyUsage = x509Normalization.GetKeyUsage(cert);

            Assert.AreEqual(expectedKeyUsage, actualKeyUsage);
        }