Example #1
0
        public MicrosoftCertificateAuthorityOptions GetPrivateCertificateAuthorityOptions(HashAlgorithm hash)
        {
            PrivateCertificateAuthorityConfig caConfig = this.GetPrivateCertificateAuthorityConfigByHash(hash);

            ActiveDirectoryMetadata idp = this.Get <ActiveDirectoryMetadata>(caConfig.IdentityProviderId);

            MicrosoftCertificateAuthorityAuthenticationType authType;

            if (idp.ActiveDirectoryMetadataType == Entities.Enumerations.ActiveDirectoryMetadataType.ActiveDirectoryBasic)
            {
                authType = MicrosoftCertificateAuthorityAuthenticationType.UsernamePassword;
            }
            else
            {
                authType = MicrosoftCertificateAuthorityAuthenticationType.WindowsKerberos;
            }

            MicrosoftCertificateAuthorityOptions options = new MicrosoftCertificateAuthorityOptions()
            {
                AuthenticationRealm = idp.Domain,
                AuthenticationType  = authType,
                HashAlgorithm       = hash,
                CommonName          = caConfig.CommonName,
                ServerName          = caConfig.ServerName,
                Id       = caConfig.Id,
                Password = idp.Password,
                Username = idp.Username
            };

            return(options);
        }
Example #2
0
        public MicrosoftCertificateAuthority GetPrivateCertificateAuthority(HashAlgorithm hash)
        {
            MicrosoftCertificateAuthorityOptions options = this.GetPrivateCertificateAuthorityOptions(hash);

            return(new MicrosoftCertificateAuthority(options));
        }