1

certutil でデータベースを作成します

myproject/bin/pkcert
echo "dartdart" > pwdfile
certutil -N -d 'sql:./' -f pwdfile

次に、当局によって検証された証明書をインポートします

certutil -d "sql:./" -A -t "C,C,C" -n "my_cert" -i certificate.crt

私はそれが動作するかどうかを確認します

certutil -L -d 'sql:./'
Certificate Nickname                                         Trust Attributes
                                                             SSL,S/MIME,JAR/XPI

my_cert                                                      C,C,C

私のメインダーツ

library main;

import "dart:io";

void main() {
  var testPkcertDatabase = Platform.script.resolve('./pkcert')
                                   .toFilePath();
  SecureSocket.initialize(database: testPkcertDatabase,
                          password: 'dartdart');

  HttpServer
      .bindSecure(InternetAddress.ANY_IP_V6,
                  8443,
                  certificateName: 'my_cert')
      .then((server) {
        server.listen((HttpRequest request) {
          request.response.write('Hello, world!');
          request.response.close();
        });
      });
}

実行すると、次のエラーが発生します。

Uncaught Error: CertificateException: Cannot find server certificate by nickname: my_cert (OS Error: security library: read-only database., errno = -8126)

何かを見逃しましたか、それともバグを報告する必要がありますか?

ありがとうございました。

4

1 に答える 1