Accessing the ROSA HCP API Server from a Different AWS Account
This content is authored by Red Hat experts, but has not yet been tested on every supported configuration.
Introduction
You can create a ROSA HCP cluster in one AWS account and configure it to allow access from a different AWS account using the oc command.
This guide walks you through the actual AWS setup.
Note: AWS environments vary, so consider this as one possible setup.
Prerequisites
A ROSA HCP cluster has been already deployed in AWS Account-A, and the following AWS resources are available.
ROSA HCP 4.19.0 was used for this guide.

Setup on AWS Account‑B
This section covers the steps in AWS Account-B

Prepare necessary tools on Bastion-B
On the EC2 bastion instance (bastion-B), install the required tools
Verify the installation
(Note: cluster connection is not yet possible.)
Create an IAM Policy
Create a policy file in json ( vpce-policy.json)
Create an IAM Policy from the json file
Create an IAM Role
Get your current IAMUser ARN
Create a trust relationship file (trust-policy.json)
Create an IAM Role
Attach the IAM Policy to the IAM Role
Configure AWS CLI to Assume the IAM Role
Add a new profile in
~/.aws/configto assume the IAM Role created in the previous step.
Setup on AWS Account‑A
Switch to AWS Account-A, where the ROSA cluster resides

Register the IAM Role with ROSA
Run On Bastion-A (or any rosa-enabled host) to set some environmental variables.
Get the VPC Endpoint Service Name for the ROSA hosted controlplane.
( Note: The service name is like
com.amazonaws.vpce.<Your AWS region>.vpce-svc-....)Fetch the API URL for ROSA Cluster
Expect something like:
https://api.rosahcp.<id>.openshiftapps.com:443
Back to AWS Account‑B
Continue in Account-B

Create a VPC Endpoint
Set some environment variables
Make sure the variables are set
Create a security group for the VPC Endpoint
Allow inbound traffic from the subnet
(Note: You can customize the rule depending your need. This is just an example.)
Create an interface endpoint, using the
myprofilerole(Note: You run the command with
--profile myprofileto assume the IAM Role you created in the previous step)If there are no errors, the VPC endpoint will be created. The request to connect the hosted control plane VPC service endpoint will be automatically accepted if the IAM role is configured correctly.

Create a Private DNS Zone in Route 53
Fetch the VPC endpoint DNS name
Extract the domain from the API URL
Set the AWS region of the AWS account-B
Make sure the variables are set before proceeding
Create a Route 53 private hosted zone
Create DNS records
The DNS records for
api.<DOMAIN>andoauth.<DOMAIN>are resovled to the VPC endpoint, and the traffic is routed to the Hosted Ccontrolplane managed by Red Hat SRE.
Verify Connection
Test access from bastion-B to the hosted controlplane