Я изучаю AWS CloudHSM. До сих пор у меня есть < /p>
экземпляр EC2 с DataCenter DataCenter < /strong> eC2 Server 2019, как OS < /li>
Создал орган сертификации (root ca) на этом сервере с именем Dintingued " cn = myservername-ca1 < /strong>" (https://docs.aws.amazon.com/cloudhsm/la ... setup.html)
При подключении к экземпляру EC2 через RDP, я могу войти в свою учетную запись HSM и может управлять пользователями, создавать новые ключи и т. Д. CA: < /p>
Провайдер: RSA#Cavium Key Provider < /li>
Длина ключа: 2048 < /li>
Хэш-алгоритм: sha256 < /li>
distinguding nelive: cn = myservername-ca1 < /li> Журнал базы данных: C: \ Windows \ System32 \ certlog < /li>
< /ul>
Теперь я разработал приложение .NET WebAPI, которое должно отправить запрос CSR в мой CA, а CA должен вернуть подписанный сертификат в запрашивающий. This application is hosted as a web app on IIS on the same EC2 instance.
}
if (certificateSigningResponse == null)
{
certificateSigningResponse = PopulateCertificateSigningResponse(string.Empty, "Certificate signing process failed.");
}
return certificateSigningResponse;
}
// this method creates a request string properly when
private async Task CreateCertificateSigningRequest(CertificateSigningRequest csr)
{
// Create all the objects that will be required
CX509CertificateRequestPkcs10 objPkcs10 = new CX509CertificateRequestPkcs10Class();
CX509PrivateKey objPrivateKey = new CX509PrivateKeyClass();
CCspInformation objCSP = new CCspInformationClass();
CCspInformations objCSPs = new CCspInformationsClass();
CX500DistinguishedName objDN = new CX500DistinguishedNameClass();
CX509Enrollment objEnroll = new CX509EnrollmentClass();
CObjectIds objObjectIds = new CObjectIdsClass();
CObjectId objObjectId = new CObjectIdClass();
CX509ExtensionKeyUsage objExtensionKeyUsage = new CX509ExtensionKeyUsageClass();
CX509ExtensionEnhancedKeyUsage objX509ExtensionEnhancedKeyUsage = new CX509ExtensionEnhancedKeyUsageClass();
string strRequest;
try
{
// Initialize the csp object using the desired Cryptograhic Service Provider (CSP)
Я изучаю AWS CloudHSM. До сих пор у меня есть < /p>
[list] [*] экземпляр EC2 с DataCenter DataCenter < /strong> eC2 Server 2019, как OS < /li> Создал орган сертификации (root ca) на этом сервере с именем Dintingued " cn = myservername-ca1 < /strong>" (https://docs.aws.amazon.com/cloudhsm/latest/userguide/win-ca-setup.html) [*] При подключении к экземпляру EC2 через RDP, я могу войти в свою учетную запись HSM и может управлять пользователями, создавать новые ключи и т. Д. CA: < /p>
Провайдер: RSA#Cavium Key Provider < /li> Длина ключа: 2048 < /li> Хэш-алгоритм: sha256 < /li> distinguding nelive: cn = myservername-ca1 < /li> Журнал базы данных: C: \ Windows \ System32 \ certlog < /li> < /ul>
Теперь я разработал приложение .NET WebAPI, которое должно отправить запрос CSR в мой CA, а CA должен вернуть подписанный сертификат в запрашивающий. This application is hosted as a web app on IIS on the same EC2 instance.
} if (certificateSigningResponse == null) { certificateSigningResponse = PopulateCertificateSigningResponse(string.Empty, "Certificate signing process failed."); } return certificateSigningResponse; }
// this method creates a request string properly when private async Task CreateCertificateSigningRequest(CertificateSigningRequest csr) { // Create all the objects that will be required
CX509CertificateRequestPkcs10 objPkcs10 = new CX509CertificateRequestPkcs10Class();
CX509PrivateKey objPrivateKey = new CX509PrivateKeyClass();
CCspInformation objCSP = new CCspInformationClass();
CCspInformations objCSPs = new CCspInformationsClass();
CX500DistinguishedName objDN = new CX500DistinguishedNameClass();
CX509Enrollment objEnroll = new CX509EnrollmentClass();
CObjectIds objObjectIds = new CObjectIdsClass();
CObjectId objObjectId = new CObjectIdClass();
CX509ExtensionKeyUsage objExtensionKeyUsage = new CX509ExtensionKeyUsageClass();
CX509ExtensionEnhancedKeyUsage objX509ExtensionEnhancedKeyUsage = new CX509ExtensionEnhancedKeyUsageClass();
string strRequest;
try
{ // Initialize the csp object using the desired Cryptograhic Service Provider (CSP)
, когда " поставщик хранения ключей Cavium < /strong>" или " RSA#Cavium Key Storage visted < /strong> r" используется для инициализированного objcsp, «vider> provided < /strong> r». (Исключение из HRESULT: 0x80090013) «Исключение отбрасывается [*] , когда« Microsoft Enhanced Cryptographic Provider v1.0 [/b] »используется для инициализации objcsp,« ccertequeStest :: reper: rpc -сервер on unavailable. 0x800706ba «Исключение выдвинуто [/list]
Для решения проблемы« Сервер RPC недоступен », я следовал шагам https://itworldjd.wordpress.com/2015/10/21/pki-certificates-troubleshooting-certificate-enrollment-rpc-server-is-unvailable/, но не повезло.
создал экземпляр EC2 с Windows Server 2019 Datacenter в качестве ОС на этом сервере создан центр сертификации (корневой центр сертификации) с ярким именем « CN=myservername-CA1 » (...
создал экземпляр EC2 с Windows Server 2019 Datacenter в качестве ОС создал центр сертификации (корневой центр сертификации) на этом сервере с ярким именем « CN=myservername-CA1 » (...