You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: "View and use the cloud metadata values exposed in the RisingWave Cloud Console, including the IAM role ARN, external ID, account ID, VPC ID, and region for your project."
4
+
description: "View and use the cloud metadata values exposed in the RisingWave Cloud Console, including the IAM role ARN, PrivateLink Principal, and egress public IPs for your project."
5
5
---
6
6
7
7
RisingWave Cloud exposes a set of environment-specific metadata values for each project. These values are required when setting up cross-account access (IAM role assume) and PrivateLink connections. All values are read-only and are generated automatically when a project is created.
@@ -24,53 +24,35 @@ Cloud metadata is only available for projects on the **Standard** plan or above.
24
24
25
25
The AWS IAM role ARN that RisingWave Cloud uses to access AWS resources on behalf of this project. When you configure [IAM role assume](/cloud/iam-role-assume) (cross-account S3 access), you add this ARN as a trusted principal in your IAM role's trust policy.
A unique identifier for this project. Use it as the `sts:ExternalId` condition in your IAM trust policy to prevent [confused deputy attacks](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html). Including an external ID is strongly recommended for production setups.
33
+
The AWS principal associated with the RisingWave Cloud deployment that hosts your project. When you create a PrivateLink endpoint service in your AWS account, add this principal to the list of **Allowed principals** so that RisingWave Cloud can connect to your service.
34
34
35
-
### AWS account ID
35
+
### Egress public IPs
36
36
37
37
| Field | Example value |
38
38
|:------|:--------------|
39
-
|**AWS account ID**|`123456789012`|
39
+
|**Egress public IPs**|`203.0.113.10, 203.0.113.11`|
40
40
41
-
The AWS account ID associated with the RisingWave Cloud deployment that hosts your project. This is the account that issues `sts:AssumeRole` calls when assuming your IAM role.
42
-
43
-
### Region
44
-
45
-
| Field | Example value |
46
-
|:------|:--------------|
47
-
|**Region**|`us-east-1`|
48
-
49
-
The AWS region in which this project runs. When creating PrivateLink connections, your VPC and PrivateLink service must be in the same region as the project.
50
-
51
-
### VPC ID
52
-
53
-
| Field | Example value |
54
-
|:------|:--------------|
55
-
|**VPC ID**|`vpc-0abc123def456gh78`|
56
-
57
-
The VPC ID of the network associated with this project. Some PrivateLink endpoint service configurations (for example, when restricting which VPCs can connect) require this value.
41
+
The public IP addresses from which outbound traffic from this project originates. Add these IPs to the allowlist of any firewall rules or security groups that restrict inbound access to your services (for example, a database or Kafka cluster that RisingWave connects to).
58
42
59
43
## Cloud metadata by platform
60
44
61
45
| Metadata field | AWS | GCP | Azure |
62
46
|:---------------|:----|:----|:------|
63
47
| IAM role ARN | ✅ | ✅ (service account email) | ✅ (managed identity resource ID) |
Copy file name to clipboardExpand all lines: cloud/create-a-connection.mdx
-9Lines changed: 0 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,15 +23,6 @@ You need to create a project with the Standard plan or Advanced plan in RisingWa
23
23
* See [Choose a project plan](/cloud/choose-a-project-plan/) for more information. Please note that Trial projects do not support PrivateLink connections.
24
24
* The VPC you want to connect to and your project must be in the same region. If your preferred region is not available when creating a project, contact our [support team](mailto:cloud-support@risingwave-labs.com) or [sales team](mailto:sales@risingwave-labs.com).
25
25
26
-
### Required cloud metadata
27
-
28
-
Before you set up PrivateLink, retrieve the following values from your project's [Cloud metadata](/cloud/cloud-metadata) page (**Settings** → **Cloud metadata**):
29
-
30
-
| Metadata field | Where it's used |
31
-
|:---------------|:----------------|
32
-
|**Region**| Confirm that your VPC and PrivateLink service are in the same region as the project |
33
-
|**VPC ID**| Required if your endpoint service restricts which VPCs can connect |
34
-
35
26
You need to set up a PrivateLink service in your VPC and make sure it runs properly. The following links might be helpful:
36
27
* For AWS, see [Share your services through AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-share-your-services.html).
37
28
* For GCP, see [GCP Published services](https://cloud.google.com/vpc/docs/about-vpc-hosted-services).
Copy file name to clipboardExpand all lines: cloud/iam-role-assume.mdx
+8-25Lines changed: 8 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,8 +29,6 @@ Before you begin, retrieve the following values from your project's [Cloud metad
29
29
| Metadata field | Where it's used |
30
30
|:---------------|:----------------|
31
31
|**IAM role ARN**| The `Principal.AWS` value in your IAM trust policy |
32
-
|**External ID**| The `sts:ExternalId` condition value in your IAM trust policy (recommended) |
33
-
|**AWS account ID**| Verify that `sts:AssumeRole` calls originate from the correct RisingWave Cloud account |
34
32
35
33
## Step-by-step setup
36
34
@@ -73,17 +71,16 @@ Create a policy that grants RisingWave the necessary permissions on your S3 buck
73
71
### Step 2 — Create an IAM role with the policy attached
74
72
75
73
1. In the [AWS IAM console](https://console.aws.amazon.com/iam/), create a new role.
76
-
2. Select **Another AWS account** as the trusted entity type.
77
-
3. Enter the **AWS account ID** from Cloud metadata as the trusted account.
78
-
4. Attach the S3 policy created in Step 1.
74
+
2. Select **Another AWS account** as the trusted entity type and enter the AWS account ID extracted from the **IAM role ARN** (the 12-digit number after `iam::`).
75
+
3. Attach the S3 policy created in Step 1.
79
76
80
77
### Step 3 — Configure the trust policy
81
78
82
-
After the role is created, update its trust policy to allow the specific RisingWave Cloud IAM role to assume it. Include the external ID as a condition.
79
+
After the role is created, update its trust policy to allow the specific RisingWave Cloud IAM role to assume it.
83
80
84
-
Replace `<iam-role-arn>` with the **IAM role ARN** from Cloud metadata, and `<external-id>` with the **External ID** from Cloud metadata.
81
+
Replace `<iam-role-arn>` with the **IAM role ARN** from Cloud metadata.
85
82
86
-
```json Example: Trust policy with external ID
83
+
```json Example: Trust policy
87
84
{
88
85
"Version": "2012-10-17",
89
86
"Statement": [
@@ -92,25 +89,12 @@ Replace `<iam-role-arn>` with the **IAM role ARN** from Cloud metadata, and `<ex
92
89
"Principal": {
93
90
"AWS": "<iam-role-arn>"
94
91
},
95
-
"Action": "sts:AssumeRole",
96
-
"Condition": {
97
-
"StringEquals": {
98
-
"sts:ExternalId": "<external-id>"
99
-
}
100
-
}
92
+
"Action": "sts:AssumeRole"
101
93
}
102
94
]
103
95
}
104
96
```
105
97
106
-
<Warning>
107
-
Always include the `sts:ExternalId` condition. Without it, any entity in the trusted account can assume your role — this is the [confused deputy problem](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html).
108
-
</Warning>
109
-
110
-
<Note>
111
-
The `sts:ExternalId` value is a project-specific string. If you delete and recreate your project or create a new project, update this value accordingly.
112
-
</Note>
113
-
114
98
### Step 4 — Use the role in RisingWave
115
99
116
100
Set `s3.assume_role` to the ARN of the role you created in Step 2 and set `enable_config_load = 'true'` (RisingWave Cloud only).
@@ -158,12 +142,11 @@ After creating the sink or source, run a quick sanity check:
158
142
|:------|:-------------|:----|
159
143
|`AccessDenied` when calling `AssumeRole`| The trust policy principal doesn't match the RisingWave Cloud IAM role ARN | Copy the exact IAM role ARN from Cloud metadata and update the trust policy |
160
144
|`AccessDenied` on S3 operations after assuming | The attached S3 policy is missing required actions | Add the missing S3 actions (see Step 1) |
161
-
|`InvalidClientTokenId`| Incorrect AWS account ID in the trust policy | Use the AWS account ID from Cloud metadata |
162
-
| External ID mismatch | The `sts:ExternalId` in the trust policy doesn't match Cloud metadata | Copy the exact External ID from Cloud metadata |
145
+
|`InvalidClientTokenId`| Incorrect IAM role ARN in the trust policy | Use the IAM role ARN from Cloud metadata |
163
146
164
147
## Related pages
165
148
166
-
-[Cloud metadata](/cloud/cloud-metadata) — retrieve the IAM role ARN and external ID for your project
149
+
-[Cloud metadata](/cloud/cloud-metadata) — retrieve the IAM role ARN for your project
167
150
-[PrivateLink connection configuration](/cloud/create-a-connection) — set up private network connectivity
168
151
-[Sink to Amazon Redshift](/integrations/destinations/redshift) — end-to-end example with S3 staging
169
152
-[Sink to Snowflake](/integrations/destinations/snowflake-v2) — end-to-end example with S3 staging
Copy file name to clipboardExpand all lines: cloud/privatelink-overview.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,5 +32,5 @@ On the **RisingWave Cloud** side, RisingWave Cloud will create an endpoint (spec
32
32
On the **Customer** side, you need to set up a PrivateLink service (specifically an AWS endpoint service, GCP published service, or Azure Private Link service) in your VPC network first.
33
33
34
34
<Tip>
35
-
Before you configure PrivateLink, retrieve your project's **Region** and**VPC ID** from the [Cloud metadata](/cloud/cloud-metadata) page. Your VPC and PrivateLink service must be in the same region as the project.
35
+
When setting up an AWS endpoint service, add the**PrivateLink Principal** from your project's [Cloud metadata](/cloud/cloud-metadata) page to the service's allowed principals list so that RisingWave Cloud can connect.
0 commit comments