Skip to content

Support pulling application.properties configuration and secrets from AWS SSM#1388

Merged
labkey-jeckels merged 9 commits into
developfrom
fb_secretservice
May 29, 2026
Merged

Support pulling application.properties configuration and secrets from AWS SSM#1388
labkey-jeckels merged 9 commits into
developfrom
fb_secretservice

Conversation

@labkey-jeckels
Copy link
Copy Markdown
Contributor

Rationale

We can simplify configuration of cloud servers by pulling their config and secrets directly from AWS SSM.

Related Pull Requests

Changes

  • New ssm: syntax to tell a property to pull value directly from SSM
  • Support for JSON and flat values in SSM
  • context.awsParameterStore.prefix and context.awsParameterStore.secretsPrefix and support for relative SSM paths

{
return SsmClient.builder()
.region(region)
.credentialsProvider(DefaultCredentialsProvider.create())
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is our deployment plan to inject the AWS credentials in production?

@labkey-gokhano
Copy link
Copy Markdown

labkey-gokhano commented May 29, 2026 via email

@labkey-jeckels
Copy link
Copy Markdown
Contributor Author

The downside of this approach to support pulling configuration from AWS SSM is that it pulls in a bunch of transitive dependencies via the AWS SDK.

Baseline set of JARs:

https://teamcity.labkey.org/buildConfiguration/LabKey_Trunk_Premium_Installers/4016022?buildTab=artifacts#%2Flims_starter%2FLabKey26.6-SNAPSHOT-3588-lims_starter.tar.gz;%2Flims_starter%2FLabKey26.6-SNAPSHOT-3588-lims_starter.tar.gz!%2FLabKey26.6-SNAPSHOT-3588-lims_starter%2FlabkeyServer.jar;%2Flims_starter%2FLabKey26.6-SNAPSHOT-3588-lims_starter.tar.gz!%2FLabKey26.6-SNAPSHOT-3588-lims_starter%2FlabkeyServer.jar!%2FMETA-INF;%2Flims_starter%2FLabKey26.6-SNAPSHOT-3588-lims_starter.tar.gz!%2FLabKey26.6-SNAPSHOT-3588-lims_starter%2FlabkeyServer.jar!%2FBOOT-INF%2Flib

Expanded set:

https://teamcity.labkey.org/buildConfiguration/LabKey_Trunk_Premium_InstallersCustom/4015399?buildTab=artifacts#%2Flims_starter%2FLabKey26.6-SNAPSHOT-286-lims_starter.tar.gz;%2Flims_starter%2FLabKey26.6-SNAPSHOT-286-lims_starter.tar.gz!%2FLabKey26.6-SNAPSHOT-286-lims_starter%2FlabkeyServer.jar;%2Flims_starter%2FLabKey26.6-SNAPSHOT-286-lims_starter.tar.gz!%2FLabKey26.6-SNAPSHOT-286-lims_starter%2FlabkeyServer.jar!%2Flabkey;%2Flims_starter%2FLabKey26.6-SNAPSHOT-286-lims_starter.tar.gz!%2FLabKey26.6-SNAPSHOT-286-lims_starter%2FlabkeyServer.jar!%2FBOOT-INF%2Flib

It also made me update the embedded project's build to ensure it picks up our forced version of Netty to fix CVEs. The good news is that the OWASP checker flagged the usage of the older version.

@labkey-susanh I'd appreciate a quick check on the change here:

1aceabb

@labkey-susanh
Copy link
Copy Markdown
Contributor

Change in that commit looks good to me.

@labkey-jeckels labkey-jeckels merged commit 3c3e480 into develop May 29, 2026
8 checks passed
@labkey-jeckels labkey-jeckels deleted the fb_secretservice branch May 29, 2026 20:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants