Thanks to visit codestin.com
Credit goes to github.com

Skip to content

RBAC with Kubernetes Impersonation & Header Injection #63

@aslafy-z

Description

@aslafy-z

Summary

Implement RBAC for Velero UI (VUI) by leveraging Kubernetes impersonation capabilities and enabling upstream proxies to inject authentication headers for fine-grained access control.

Implementation Details

1. Kubernetes Impersonation Support

  • Utilize native Kubernetes user RBAC mechanisms to enforce permissions on Velero resources (list, get, create, edit)
  • Ensure users can only perform actions permitted by their assigned Kubernetes roles
  • Validate all operations against user's RBAC profile before execution

2. Header Injection for Upstream Authentication

  • Accept and process standard authentication headers from ingress controllers and authentication proxies:

    • Impersonate-User: User to impersonate
    • Impersonate-Group: Groups to impersonate
    • Authorization: Bearer token (if direct authentication is used)
  • Support integration with common authentication proxies:

    • oauth2-proxy
    • Heimdall
    • NGINX Ingress Controller with auth modules
    • Other OIDC/OAuth2 compatible solutions
  • Enable tenant-specific access control based on the injected headers

  • Support multi-tenant environments where external identity providers determine user permissions

Reference Implementations

Use Cases

  • Secure multi-tenant Velero environments by restricting users to specific backup resources
  • Seamlessly integrate with existing authentication/authorization infrastructures
  • Support enterprise environments with complex identity management requirements
  • Enable granular permissions without requiring modifications to Kubernetes clusters

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions