Skip to content

RAM

CloudMock emulates AWS Resource Access Manager (RAM), supporting resource share management, associations, invitations, and tagging.

OperationStatusNotes
CreateResourceShareSupportedCreates a resource share
GetResourceSharesSupportedLists resource shares
UpdateResourceShareSupportedUpdates a resource share
DeleteResourceShareSupportedDeletes a resource share
AssociateResourceShareSupportedAssociates resources or principals
DisassociateResourceShareSupportedDisassociates resources or principals
GetResourceShareAssociationsSupportedLists resource share associations
GetResourceShareInvitationsSupportedLists pending invitations
AcceptResourceShareInvitationSupportedAccepts an invitation
RejectResourceShareInvitationSupportedRejects an invitation
TagResourceSupportedAdds tags to a resource share
UntagResourceSupportedRemoves tags from a resource share
ListTagsForResourceSupportedLists tags for a resource share
import { RAMClient, CreateResourceShareCommand } from '@aws-sdk/client-ram';
const client = new RAMClient({
endpoint: 'http://localhost:4566',
region: 'us-east-1',
credentials: { accessKeyId: 'test', secretAccessKey: 'test' },
});
const { resourceShare } = await client.send(new CreateResourceShareCommand({
name: 'my-share',
resourceArns: ['arn:aws:ec2:us-east-1:000000000000:subnet/subnet-12345'],
}));
console.log(resourceShare.resourceShareArn);
import boto3
client = boto3.client('ram',
endpoint_url='http://localhost:4566',
region_name='us-east-1',
aws_access_key_id='test',
aws_secret_access_key='test')
response = client.create_resource_share(
name='my-share',
resourceArns=['arn:aws:ec2:us-east-1:000000000000:subnet/subnet-12345'])
print(response['resourceShare']['resourceShareArn'])
cloudmock.yml
services:
ram:
enabled: true
  • Shared resources are not actually accessible from other accounts
  • Invitations are tracked but cross-account access is not enforced
  • Resource share associations are metadata-only