recursive.codes


The Personal Blog of Todd Sharp

Automatic Autonomous Wallet Download & Configuration with Micronaut

Posted By: Todd Sharp on 3/4/2021 3:54 GMT
Tagged: Cloud, Developers, Java

Back in September, we announced the Micronaut Oracle Cloud Infrastructure module to help developers easily integrate with the OCI SDK as well as use Micronaut for their serverless Oracle Functions. Today, I’m super excited to tell you about an enhancement to that module that is guaranteed to make your life easier and your application more secure when it’s time to connect your Micronaut applications with Autonomous Database - automatic wallet download. That’s right, you no longer have to manually download your wallet and worry about how to distribute it with your application. Just configure your application to use the OCI SDK module, provide your Autonomous DB OCID, DB username and password and Micronaut will download the wallet, store it in memory, and handle creating your connect string and connecting to the DB. Let’s look at a quick example.

Configure Micronaut OCI Module

To get started, include a dependency on the module in your build.gradle:

Now determine which type of auth provider you’ll use. Since I have the OCI CLI configured locally, I use a ConfigFileAuthenticationDetailsProvider, so I add the following to my src/main/resources/application.yml file.

When I deploy to the cloud, I use a InstancePrincipalsAuthenticationDetailsProvider by creating a file called src/main/resources/application-oraclecloud.yml which Micronaut is intelligent enough to use once I deploy to the Oracle Cloud.

Next, add a dependency on the ATP module:

And don’t forget your OJDBC drivers:

And something for connection pooling:

Finally, add a datasource. As mentioned above, you’ll need to provide the OCID for your DB, a schema user and password and a strong password that will be used to encrypt the keys in your wallet.

That’s it! Now start your app and you should notice an entry in the console output when the connection is configured:

Summary

In this post, we looked at how to configure a Micronaut application to securely connect to an Autonomous DB instance by automatically downloading, storing and configuring a wallet. To read more about this feature, please refer to the Micronaut documentation.

Photo by Almos Bechtold on Unsplash



Related Posts

Enterprise Messaging via Oracle Advanced Queuing with Autonomous DB & Micronaut

Enterprise Messaging via Oracle Advanced Queuing with Autonomous DB & Micronaut

I’ve written about messaging many, many times on this blog. And for good reason, too. It’s a popular subject that developers can’t seem to get enough of...

How to Securely Connect to Private Resources (for Free!) via the OCI Bastion Service

How to Securely Connect to Private Resources (for Free!) via the OCI Bastion Service

When working in the cloud, there are often times when your servers and services are not exposed to the public internet. Private virtual cloud networks ...

How To Set Up and Run a (Really Powerful) Free Minecraft Server in the Cloud

How To Set Up and Run a (Really Powerful) Free Minecraft Server in the Cloud

In this post, I’m going to show you how to set up and run your very own private, dedicated Minecraft server in the cloud. I have blogged about this before...

Note: Comments are currently closed on this blog. Disqus is simply too bloated to justify its use with the low volume of comments on this blog. Please visit my contact page if you have something to say!