반응형
C #을 사용하여 프로그래밍 방식으로 로컬 컴퓨터 저장소에 인증서를 설치하려면 어떻게해야합니까?
MakeCert를 통해 생성 된 인증서가 있습니다. PeerTrust를 사용하는 WCF 메시지 보안에이 인증서를 사용하고 싶습니다. C # 또는 .NET을 사용하여 "신뢰할 수있는 사용자"로컬 컴퓨터 인증서 저장소에 인증서를 프로그래밍 방식으로 설치하려면 어떻게해야합니까?
CER 파일이 있지만 PFX도 만들 수 있습니다.
나는 이것이 옳다고 믿는다.
using (X509Store store = new X509Store(StoreName.TrustedPeople, StoreLocation.LocalMachine))
{
store.Open(OpenFlags.ReadWrite);
store.Add(cert); //where cert is an X509Certificate object
}
다음은 나에게 유용합니다.
private static void InstallCertificate(string cerFileName)
{
X509Certificate2 certificate = new X509Certificate2(cerFileName);
X509Store store = new X509Store(StoreName.TrustedPublisher, StoreLocation.LocalMachine);
store.Open(OpenFlags.ReadWrite);
store.Add(certificate);
store.Close();
}
높은 권한이 필요한 LocalMachine에 인증서를 설치하는 대신 "CurrentUser"(나에게 적합 함)에 추가 할 수 있습니다.
X509Store store = new X509Store(StoreName.TrustedPeople, StoreLocation.CurrentUser);
store.Open(OpenFlags.ReadWrite);
store.Add(cert); //where cert is an X509Certificate object
store.Close();
X509KeyStorageFlags를 사용해야했습니다. PersistKeySet | X509KeyStorageFlags. MachineKeySet 플래그 는 나중에 인증서를 사용하려고 시도 할 때 발생한 "키 세트가 존재하지 않습니다" 오류 를 해결 합니다.
X509Certificate2 certificate = new X509Certificate2(pfxPath, password, X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.MachineKeySet);
using (X509Store store = new X509Store(StoreName.My, StoreLocation.LocalMachine))
{
store.Open(OpenFlags.ReadWrite);
store.Add(certificate);
store.Close();
}
반응형
'programing' 카테고리의 다른 글
2개의 css 스타일파일(rtl, ltr) vue.display 간에 전환하는 방법 (0) | 2022.07.02 |
---|---|
SQL Server 에이전트 작업-존재 후 삭제 하시겠습니까? (0) | 2021.01.19 |
JarOutputStream을 사용하여 JAR 파일을 생성하는 방법은 무엇입니까? (0) | 2021.01.19 |
Eclipse Android 변경 API 레벨 (0) | 2021.01.19 |
브라우저 콘솔에서 모든 JavaScript 이벤트 모니터링 (0) | 2021.01.19 |