Guide to setup IAM roles for microservices
This document provides detailed instructions on setting up IAM roles for the microservices in the Raven platform. It covers both AWS IAM Roles for Service Accounts (IRSA) and GCP Workload Identity Federation, explaining how to assign IAM roles to Kubernetes service accounts using Helm charts. Additionally, it lists the necessary permissions for each microservice.
IRSA enables your Kubernetes pods to interact with AWS services using IAM roles. This eliminates the need to manage AWS credentials within pods, enhancing security and simplifying the management of permissions.
To set the service account roles in your Helm chart, you need to annotate the service account with the appropriate IAM role ARN.
Here’s an example of how to do this:
Replace <AWS_ACCOUNT_ID>
with your actual AWS account ID.
Workload Identity Federation allows your Kubernetes pods to authenticate to Google Cloud Platform services using GCP service accounts. This provides a secure way to access GCP resources without managing service account keys.
To set up Workload Identity in your Helm chart, you need to annotate the Kubernetes service account with the GCP service account email.
Here’s an example of how to do this:
Replace <GCP_SERVICE_ACCOUNT_EMAIL>
with your actual GCP service account email.
The upload-service
requires read/write access to the storage buckets. Below are the IAM policies for both cloud providers:
The ingestion-service
also requires read/write access to the storage buckets. Below are the IAM policies for both cloud providers:
Ensure you have created the IAM roles/service accounts with the above policies and have the role ARNs/service account emails. You can then set up your Helm chart as follows:
values.yaml
)For AWS:
For GCP:
Replace <AWS_ACCOUNT_ID>
, <GCP_PROJECT_ID>
, and the role/service account names with your actual values.
Setting up IAM roles/service accounts allows your microservices to securely interact with cloud services without managing credentials within the pods. By annotating your service accounts with the correct IAM role ARNs or GCP service account emails and ensuring the roles have the required permissions, you can effectively manage access control for your microservices. For further assistance, refer to the Raven Documentation or contact support.
Guide to setup IAM roles for microservices
This document provides detailed instructions on setting up IAM roles for the microservices in the Raven platform. It covers both AWS IAM Roles for Service Accounts (IRSA) and GCP Workload Identity Federation, explaining how to assign IAM roles to Kubernetes service accounts using Helm charts. Additionally, it lists the necessary permissions for each microservice.
IRSA enables your Kubernetes pods to interact with AWS services using IAM roles. This eliminates the need to manage AWS credentials within pods, enhancing security and simplifying the management of permissions.
To set the service account roles in your Helm chart, you need to annotate the service account with the appropriate IAM role ARN.
Here’s an example of how to do this:
Replace <AWS_ACCOUNT_ID>
with your actual AWS account ID.
Workload Identity Federation allows your Kubernetes pods to authenticate to Google Cloud Platform services using GCP service accounts. This provides a secure way to access GCP resources without managing service account keys.
To set up Workload Identity in your Helm chart, you need to annotate the Kubernetes service account with the GCP service account email.
Here’s an example of how to do this:
Replace <GCP_SERVICE_ACCOUNT_EMAIL>
with your actual GCP service account email.
The upload-service
requires read/write access to the storage buckets. Below are the IAM policies for both cloud providers:
The ingestion-service
also requires read/write access to the storage buckets. Below are the IAM policies for both cloud providers:
Ensure you have created the IAM roles/service accounts with the above policies and have the role ARNs/service account emails. You can then set up your Helm chart as follows:
values.yaml
)For AWS:
For GCP:
Replace <AWS_ACCOUNT_ID>
, <GCP_PROJECT_ID>
, and the role/service account names with your actual values.
Setting up IAM roles/service accounts allows your microservices to securely interact with cloud services without managing credentials within the pods. By annotating your service accounts with the correct IAM role ARNs or GCP service account emails and ensuring the roles have the required permissions, you can effectively manage access control for your microservices. For further assistance, refer to the Raven Documentation or contact support.