temporalio / temporalio/temporal

Certificate-filters in self-hosted version of Temporal

Open
#6,529 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Go
Stars
23.2k
Forks
1.9k
Avg merge
2d 8h
Merged PRs (30d)
228

Description

Is your feature request related to a problem? Please describe.
Currently, certificate-filters only work with the cloud version of Temporal. It would be beneficial to have this functionality available in the self-hosted version as well, as it's frustrating for users running on-prem environments to lack similar security features.

Describe the solution you'd like
A potential solution could be implementing a custom myClaimMapper.go, which would read from a certificate-filters file and use it as a claim mapper to enforce restrictions based on certificate attributes.

Describe alternatives you've considered
An alternative approach could involve using an nginx gRPC proxy that applies certificate-based access control at the network level, though this might add additional complexity compared to a native Temporal solution.

Additional context
Providing a solution that works similarly in both cloud and self-hosted environments will help maintain feature parity and improve security for self-hosted users.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the referenced samples-server extensibility/authorizer/myClaimMapper.go and compare its claim-mapping approach with the certificate-filters behavior in Temporal Cloud. Evaluate whether a native self-hosted implementation or the proposed nginx gRPC proxy fits the project, and define done as certificate attributes enforcing equivalent access restrictions for self-hosted deployments.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, grpc, nginx
Domain
authentication, authorization, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.