証明書を SQL Server データベースにインポートしました。
create certificate MyCertificate from file = 'c:\certificate.cer';
今、その証明書の公開鍵を取得したいと思います。どうやってするの ?
できます
select * from sys.certificates
しかし、公開鍵列はありません。
私はそれをディスクに保存できることを知っています
backup certificate MyCertificate to file = 'c:\MyCertificate.cer';
しかし、それは私が望むものではありません。公開鍵を教えたり、証明書全体を取得したりするためにデータベースが必要なだけですが、ファイルを使用したくありません。
編集:
SQL Server と証明書を使用して、データベース テーブル内の行のデジタル署名を検証したいと考えていました。ただし、関数VerifySignedByCertは証明書の有効期限をチェックしないため (このメモによると:暗号化と署名のための組み込み関数は証明書の有効期限をチェックしません。これらの関数のユーザーは、証明書の有効期限をいつチェックするかを決定する必要があります。http :/ /msdn.microsoft.com/en-US/library/ms187798%28v=SQL.90%29.aspx ) C# コードで手動で行う必要があります。
そのため、証明書の公開鍵と有効期限 (sys.certificates にあります) を取得したかったのです。しかし、証明書をテーブルの varbinary 列に格納するのが最善の選択肢のようです。または、これを達成するための他のより良い方法はありますか?
ご協力ありがとうございました