Open3

Ktor でオレオレ証明書を発行する

ろくおろくお

結果として出来上がったソースコード

インデントに関しては手元のデータでは問題ないため、ここでの見え方は考慮しない。

// Certificate
val keyStoreFile = File("build/keystore.jks")
val keystore = generateCertificate(
    file = keyStoreFile,
    keyAlias = "sampleAlias",
    keyPassword = "sample",
    jksPassword = "sample"
)
val env = applicationEngineEnvironment {
    log = LoggerFactory.getLogger("ktor.application")
    connector {
        port = 8080
    }
    sslConnector(
        keyStore = keystore,
        keyAlias = "sampleAlias",
        keyStorePassword = {"sample".toCharArray()},
        privateKeyPassword = {"sample".toCharArray()}
    ){
        port = 8443
        keyStorePath = keyStoreFile
    }

    module{
        configureRouting()
    }
}

embeddedServer(Netty, env).start(wait=true)
ろくおろくお

ちなみに変数envにあるmoduleには、もともとembeddedServerに記述していた内容を移した。

つまり修正前はこうなってた。

embeddedServer(Netty, 8080){
    configureRouting()
}.start(wait=true)