sql >> データベース >  >> RDS >> PostgreSQL

.netコアWebAPIのSSL証明書を使用したNpgsql接続

    私はこれに対する解決策を得て、同様の問題に直面している他の人を助けるかもしれないここにそれを投稿することを考えました。

    .pemファイルでは機能しませんでした。以下のコマンドを使用して.pfxファイルに変換しましたが、正常に動作し始めました。

    openssl pkcs12 -inkey C:\Certs\client-key.pem -in C:\Certs\client-cert.pem -export -out C:\Certs\client-cert.pfx
    

    参照:証明書認証のサポート

    編集

    物理的なpfxファイルを作成する代わりに、2つのpemファイルを組み合わせて機能させることができました。将来の参考のために、コードスニペットを以下に示します。

    public X509Certificate2 GetCombinedCertificateAndKey(string certificatePath, string privateKeyPath)
        {
            using var publicKey = new X509Certificate2(certificatePath);
    
            var privateKeyText = System.IO.File.ReadAllText(privateKeyPath);
            var privateKeyBlocks = privateKeyText.Split("-", StringSplitOptions.RemoveEmptyEntries);
            var privateKeyBytes = Convert.FromBase64String(privateKeyBlocks[1]);
            using var rsa = RSA.Create();
    
            if (privateKeyBlocks[0] == "BEGIN PRIVATE KEY")
            {
                rsa.ImportPkcs8PrivateKey(privateKeyBytes, out _);
            }
            else if (privateKeyBlocks[0] == "BEGIN RSA PRIVATE KEY")
            {
                rsa.ImportRSAPrivateKey(privateKeyBytes, out _);
            }
    
            var keyPair = publicKey.CopyWithPrivateKey(rsa);
            var Certificate = new X509Certificate2(keyPair.Export(X509ContentType.Pfx));
            return Certificate;
        }
    



    1. フィールドの連結を行うためのトリガーを作成する方法

    2. ResultSetはUPDATEからのものです。データなし

    3. JetShowPlan:入門書

    4. Oracle SQL DeveloperでBLOB(JSONを含む)を編集するにはどうすればよいですか?