Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filter exposed DynamoDB tables #969

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

konz-rs
Copy link

@konz-rs konz-rs commented Jan 17, 2023

Issue #606

Description of changes:
Follow-up on the previous PR #607 which was not finished, I implemented this in a simple and backward compatible way.

If the environment variable which is exposed as stack parameter is set, only this listed tables are included. If unset, all tables are exposed to Athena like before.

The tables are matched on a lower-cased basis, because of #15, although I'm not sure about the reasons for this behaviour.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@m-melis
Copy link

m-melis commented Mar 15, 2023

This functionality is strongly missing from the connector. Hopefully, this MR will be merged soon.

@ibliskavka
Copy link

Can we get this merged in?

I love this tool, but I don't want to give it read access to all tables in the account, and their associated encryption keys.

I want to be able to deploy this connector with a role that has access to specific tables and specific KMS keys.

Currently, the connector attempts to infer the schemas on all tables. If it does not have access to a specific encryption key, in schema inference fails and you get nothing.

Copy link

@ibliskavka ibliskavka left a comment

Choose a reason for hiding this comment

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

This looks good to me.

A possible suggestion is to use the IncludedDynamoDBTables directly so that we don't need a dynamodb:ListTables action on *.

Wrap the DescribeTable call in a try/catch and skip the table if it does not exist.

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.

3 participants