OS: macOS Big Sur 11.1
Ballerina Version: slalpha4
For the listener side to enable SSL via certs and keys, we should provide the configurations keyFile
and certFile
. Ballerina supports key files in the format of pkcs8
Commands:
1. openssl req -x509 -newkey rsa:4096 -out cert.pem
2. copy-paste the content appearing in the terminal starting with -----BEGIN ENCRYPTED PRIVATE KEY----- and ending with -----END ENCRYPTED PRIVATE KEY----- to a file named privkey.pem
3. openssl pkcs8 -topk8 -nocrypt -in privkey.pem -out pkcs8_key.pem
Sample https_listener.bal file.
import ballerina/http;
http:ListenerConfiguration helloWorldEPConfig = {
secureSocket: {
key: {
certFile: "../path/to/cert.pem",
keyFile: "../path/to/pkcs8_key.pem"
}
}
};
listener http:Listener helloWorldEP = new (9095, helloWorldEPConfig);
service /hello on helloWorldEP {
resource function get .() returns string {
return "Hello World!";
}
}
Run the ballerina file as follows.
suhan@Suhan httpslistener % bal run https_listener.bal
Compiling source
https_listener.bal
Running executable
[ballerina/http] started HTTPS/WSS listener 0.0.0.0:9095
Issue a cURL command as follows.
suhan@Suhan httpslistener % curl -k https://localhost:9095/hello
Hello World!%
No comments:
Post a Comment