cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

ThingWorx Navigate is now Windchill Navigate Learn More

Translate the entire conversation x

How to Create a Custom Extension to Connect to Redshift using IAM Authentication

CZ_9645217
15-Moonstone

How to Create a Custom Extension to Connect to Redshift using IAM Authentication

Dear PTC Support,

 

We are currently developing a custom extension to connect ThingWorx to an Amazon Redshift database. Due to our company’s security policy, we are required to use IAM authentication to access Redshift, which makes it impossible to use the standard JDBC Extension provided by ThingWorx, as it only supports username and password authentication.

We have reviewed the technical article CS293064, which describes how to connect to Redshift using standard JDBC methods. However, this approach does not meet our security requirements, as it relies on static credentials rather than IAM-based authentication.

We would like to develop an extension that can connect to Redshift using IAM authentication and functions similarly to a DBThing, specifically being able to use SQLQuery, SQLCommand, and other typical database interaction services within ThingWorx.

Could you please provide guidance or documentation on:

  1. How to properly develop such an extension that supports IAM-based authentication for Redshift.

  2. Whether there are existing SDKs or examples for creating custom database connection templates in ThingWorx.

  3. Best practices for securely managing IAM credentials or tokens in a ThingWorx environment.

  4. Any alternatives or suggestions you might recommend for this requirement.

Thank you for your support!

ACCEPTED SOLUTION

Accepted Solutions
CZ_9645217
15-Moonstone
(To:slangley)

CZ_9645217_0-1747032832463.png

CZ_9645217_1-1747033089370.png

 

I created a ThingTemplate to connect to Redshift using IAM permissions, put the information needed to connect on the Configuration Tab page.

And I wrote two services, one is SQLQuey, which is used to query the data and return infotable, and one is SQLCommand, which is used to update or delete the data, the input parameter of both methods is a SQL statement, the user can call the service of the Thing and enter the SQL, thank you!

View solution in original post

6 REPLIES 6

FYI this is not "PTC Support", this is a community forum.

CZ_9645217
15-Moonstone
(To:Rocko)

I understand that this is a community forum, not official PTC support. I'm just here looking for answers.

slangley
23-Emerald II
(To:CZ_9645217)

Hi @CZ_9645217 

 

I think a case may be needed for this.

 

As a partner, have you reached out to Tech Support with your company?  If they are unable to assist, they will open a case with PTC so that one of our experts can work with you.

 

Regards.

 

--Sharon  

CZ_9645217
15-Moonstone
(To:slangley)

Thanks to you guys, I've developed it successfully.

slangley
23-Emerald II
(To:CZ_9645217)

Hi @CZ_9645217 

 

Can you please provide some details regarding your fix to the community?  

 

Regards.

 

--Sharon

CZ_9645217
15-Moonstone
(To:slangley)

CZ_9645217_0-1747032832463.png

CZ_9645217_1-1747033089370.png

 

I created a ThingTemplate to connect to Redshift using IAM permissions, put the information needed to connect on the Configuration Tab page.

And I wrote two services, one is SQLQuey, which is used to query the data and return infotable, and one is SQLCommand, which is used to update or delete the data, the input parameter of both methods is a SQL statement, the user can call the service of the Thing and enter the SQL, thank you!

Announcements


Top Tags