Skip to content

Conversation

danielfrankcom
Copy link
Contributor

Summary

This PR adds user documentation and associated examples for using the AWS Aurora DSQL IAM authentication plugin.

This accompanies the change in #1477, which adds the dsql plugin implementation and tests.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@danielfrankcom danielfrankcom force-pushed the dev/frankcom/dsql-docs branch from cf70258 to 96d089f Compare July 16, 2025 21:25
@danielfrankcom
Copy link
Contributor Author

Update 96d089f adds references to the new docs/samples to the top-level documentation which I missed in the initial push.

The diff for the example table update is a little messy because the table cells are not aligned on main. Most of the lines are just whitespace changes, but I add 3 new rows:

  • A reference to the DSQL DriverManager example
  • A reference to the DSQL DataSource example
  • A reference to the existing DataSource example which was missing from the table

@danielfrankcom
Copy link
Contributor Author

Update to 7f0d46e changes the dsql plugin name to iamDsql.

@danielfrankcom danielfrankcom force-pushed the dev/frankcom/dsql-docs branch from 7f0d46e to 71a809e Compare July 17, 2025 21:18
@danielfrankcom
Copy link
Contributor Author

Change to 71a809e updates the wording around iamRegion, and gives a bit more detail about when it is required.

@danielfrankcom danielfrankcom force-pushed the dev/frankcom/dsql-docs branch from 71a809e to c79cadd Compare July 21, 2025 17:47
@danielfrankcom
Copy link
Contributor Author

Update to c79cadd is a simple rebase, mostly to trigger CI jobs.

@danielfrankcom danielfrankcom force-pushed the dev/frankcom/dsql-docs branch from c79cadd to ebcf5d8 Compare July 24, 2025 23:56
@danielfrankcom
Copy link
Contributor Author

danielfrankcom commented Jul 24, 2025

Update to ebcf5d8 improves some of the messaging in the main README.md file to point out the modularity of plugins, and indicate which database types are relevant for which plugins.


| Parameter | Value | Required | Description | Example Value |
|-------------------|:-------:|:--------:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------|
| `iamHost` | String | No | This property will override the default hostname that is used to generate the IAM token. The default hostname is derived from the connection string. | `cluster-identifier.dsql.us-east-1.on.aws` |
Copy link
Contributor

Choose a reason for hiding this comment

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

Based on the conversation above where IP and Custom Endpoints are not accepted during connection, does it make sense to mention iamHost in the docs right now?

|-------------------|:-------:|:--------:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------|
| `iamHost` | String | No | This property will override the default hostname that is used to generate the IAM token. The default hostname is derived from the connection string. | `cluster-identifier.dsql.us-east-1.on.aws` |
| `iamRegion` | String | No | This property will override the default region that is used to generate the IAM token. The default region is parsed from the connection string where possible. Some connection string formats may not be supported, and the `iamRegion` must be provided in these cases. | `us-east-2` |
| `iamExpiration` | Integer | No | This property determines how long an IAM token is kept in the driver cache before a new one is generated. The default expiration time is set to be 14 minutes and 30 seconds. Note that IAM database authentication tokens have a lifetime of 15 minutes. | `600` |
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this accurate given DSQL allows you to set server sided token lifetime


// This file shows how to establish an Aurora DSQL connection using HikariCP datasource and the Aurora DSQL IAM
// authentication plugin.
public class AwsAuroraDsqlIamAuthenticationDatasourceExample {
Copy link
Contributor

Choose a reason for hiding this comment

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

What do you think of creating a new submodule for DSQL sample codes to reduce noise for DSQL customers

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