Skip to content

Commit c4ed388

Browse files
author
AWS
committed
Amazon Redshift Update: Added GetIdentityCenterAuthToken API to retrieve encrypted authentication tokens for Identity Center integrated applications. This API enables programmatic access to secure Identity Center tokens with proper error handling and parameter validation across supported SDK languages.
1 parent 0d4d045 commit c4ed388

File tree

2 files changed

+68
-0
lines changed

2 files changed

+68
-0
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "Amazon Redshift",
4+
"contributor": "",
5+
"description": "Added GetIdentityCenterAuthToken API to retrieve encrypted authentication tokens for Identity Center integrated applications. This API enables programmatic access to secure Identity Center tokens with proper error handling and parameter validation across supported SDK languages."
6+
}

services/redshift/src/main/resources/codegen-resources/service-2.json

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1780,6 +1780,25 @@
17801780
],
17811781
"documentation":"<p>Returns a database user name and temporary password with temporary authorization to log in to an Amazon Redshift database. The database user is mapped 1:1 to the source Identity and Access Management (IAM) identity. For more information about IAM identities, see <a href=\"https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html\">IAM Identities (users, user groups, and roles)</a> in the Amazon Web Services Identity and Access Management User Guide.</p> <p>The Identity and Access Management (IAM) identity that runs this operation must have an IAM policy attached that allows access to all necessary actions and resources. For more information about permissions, see <a href=\"https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html\">Using identity-based policies (IAM policies)</a> in the Amazon Redshift Cluster Management Guide. </p>"
17821782
},
1783+
"GetIdentityCenterAuthToken":{
1784+
"name":"GetIdentityCenterAuthToken",
1785+
"http":{
1786+
"method":"POST",
1787+
"requestUri":"/"
1788+
},
1789+
"input":{"shape":"GetIdentityCenterAuthTokenRequest"},
1790+
"output":{
1791+
"shape":"GetIdentityCenterAuthTokenResponse",
1792+
"resultWrapper":"GetIdentityCenterAuthTokenResult"
1793+
},
1794+
"errors":[
1795+
{"shape":"ClusterNotFoundFault"},
1796+
{"shape":"InvalidClusterStateFault"},
1797+
{"shape":"UnsupportedOperationFault"},
1798+
{"shape":"RedshiftInvalidParameterFault"}
1799+
],
1800+
"documentation":"<p>Generates an encrypted authentication token that propagates the caller's Amazon Web Services IAM Identity Center identity to Amazon Redshift clusters. This API extracts the Amazon Web Services IAM Identity Center identity from enhanced credentials and creates a secure token that Amazon Redshift drivers can use for authentication.</p> <p>The token is encrypted using Key Management Service (KMS) and can only be decrypted by the specified Amazon Redshift clusters. The token contains the caller's Amazon Web Services IAM Identity Center identity information and is valid for a limited time period.</p> <p>This API is exclusively for use with Amazon Web Services IAM Identity Center enhanced credentials. If the caller is not using enhanced credentials with embedded Amazon Web Services IAM Identity Center identity, the API will return an error.</p>"
1801+
},
17831802
"GetReservedNodeExchangeConfigurationOptions":{
17841803
"name":"GetReservedNodeExchangeConfigurationOptions",
17851804
"http":{
@@ -3543,6 +3562,13 @@
35433562
"locationName":"ClusterIamRole"
35443563
}
35453564
},
3565+
"ClusterIdentifierList":{
3566+
"type":"list",
3567+
"member":{
3568+
"shape":"String",
3569+
"locationName":"ClusterIdentifier"
3570+
}
3571+
},
35463572
"ClusterList":{
35473573
"type":"list",
35483574
"member":{
@@ -7215,6 +7241,31 @@
72157241
}
72167242
}
72177243
},
7244+
"GetIdentityCenterAuthTokenRequest":{
7245+
"type":"structure",
7246+
"required":["ClusterIds"],
7247+
"members":{
7248+
"ClusterIds":{
7249+
"shape":"ClusterIdentifierList",
7250+
"documentation":"<p>A list of cluster identifiers that the generated token can be used with. The token will be scoped to only allow authentication to the specified clusters.</p> <p>Constraints:</p> <ul> <li> <p> <code>ClusterIds</code> must contain at least 1 cluster identifier.</p> </li> <li> <p> <code>ClusterIds</code> can hold a maximum of 20 cluster identifiers.</p> </li> <li> <p>Cluster identifiers must be 1 to 63 characters in length.</p> </li> <li> <p>The characters accepted for cluster identifiers are the following:</p> <ul> <li> <p>Alphanumeric characters</p> </li> <li> <p>Hyphens</p> </li> </ul> </li> <li> <p>Cluster identifiers must start with a letter.</p> </li> <li> <p>Cluster identifiers can't end with a hyphen or contain two consecutive hyphens.</p> </li> </ul>"
7251+
}
7252+
},
7253+
"documentation":"<p>The request parameters for <code>GetIdentityCenterAuthToken</code>.</p>"
7254+
},
7255+
"GetIdentityCenterAuthTokenResponse":{
7256+
"type":"structure",
7257+
"members":{
7258+
"Token":{
7259+
"shape":"SensitiveString",
7260+
"documentation":"<p>The encrypted authentication token containing the caller's Amazon Web Services IAM Identity Center identity information. This token is encrypted using Key Management Service and can only be decrypted by the specified Amazon Redshift clusters. Use this token with Amazon Redshift drivers to authenticate using your Amazon Web Services IAM Identity Center identity.</p>"
7261+
},
7262+
"ExpirationTime":{
7263+
"shape":"TStamp",
7264+
"documentation":"<p>The time (UTC) when the token expires. After this timestamp, the token will no longer be valid for authentication.</p>"
7265+
}
7266+
},
7267+
"documentation":"<p>The response from GetIdentityCenterAuthToken containing the encrypted authentication token and expiration time.</p>"
7268+
},
72187269
"GetReservedNodeExchangeConfigurationOptionsInputMessage":{
72197270
"type":"structure",
72207271
"required":["ActionType"],
@@ -9709,6 +9760,17 @@
97099760
},
97109761
"exception":true
97119762
},
9763+
"RedshiftInvalidParameterFault":{
9764+
"type":"structure",
9765+
"members":{},
9766+
"documentation":"<p>The request contains one or more invalid parameters. This error occurs when required parameters are missing, parameter values are outside acceptable ranges, or parameter formats are incorrect.</p>",
9767+
"error":{
9768+
"code":"RedshiftInvalidParameter",
9769+
"httpStatusCode":400,
9770+
"senderFault":true
9771+
},
9772+
"exception":true
9773+
},
97129774
"ReferenceLink":{
97139775
"type":"structure",
97149776
"members":{

0 commit comments

Comments
 (0)