Skip to content

Add workspace isolation infrastructure for multi-tenant support - #2048

Closed
manaswini1920 wants to merge 1 commit into
opensearch-project:mainfrom
manaswini1920:feature/workspace-isolation-infrastructure
Closed

Add workspace isolation infrastructure for multi-tenant support#2048
manaswini1920 wants to merge 1 commit into
opensearch-project:mainfrom
manaswini1920:feature/workspace-isolation-infrastructure

Conversation

@manaswini1920

Copy link
Copy Markdown
Collaborator

Description

Add workspace isolation infrastructure for multi-tenant support

  • WorkspaceContext: immutable value object holding workspaceId and tenantId
  • TenancyContextExtractor: extracts workspace/tenant context from ThreadContext, no-op when isolation disabled
  • WorkspaceFilter: search filter injection, ownership verification, and workspace_id immutability guard. All methods are no-ops in plugin mode.
  • AlertingSettings: added WORKSPACE_ISOLATION_ENABLED setting (default false)
  • AlertingPlugin: registered new setting in getSettings()

This PR adds the workspace isolation layer that transport actions will use in follow-up PRs. Depends on opensearch-project/common-utils#916 for Monitor/Alert model changes.

Related Issues

Resolves

Check List

  • New functionality includes testing.
  • New functionality has been documented.
  • API changes companion pull request created.
  • Commits are signed per the DCO using --signoff.
  • Public documentation issue/PR created.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

- WorkspaceContext: immutable value object holding workspaceId and tenantId
- TenancyContextExtractor: extracts workspace/tenant context from ThreadContext,
  no-op when isolation disabled
- WorkspaceFilter: search filter injection, ownership verification, and
  workspace_id immutability guard. All methods are no-ops in plugin mode.
- AlertingSettings: added WORKSPACE_ISOLATION_ENABLED setting (default false)
- AlertingPlugin: registered new setting in getSettings()

Signed-off-by: Manaswini Ragamouni <ragamanu@amazon.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant