You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
During tenanted Admin GraphQL requests, the server should leverage the existing http-signature signing scheme to determine if the requester is a particular tenant. This should be achieved through the following:
GraphQL requests should be augmented with a tenantId in the header.
This middleware should then construct a signature with the apiSecret it retrieved and either accept or reject the request based on if the signature is valid.
If the request is accepted, the subsequent business logic should use the tenantId provided in the header as part of its input.
We might want to also allow signatures generated using the ADMIN_API_SECRET environment variable to be used as valid authentication, as way for operators to identify themselves.
Update Admin API middleware to expect tenantId in header during request
Update Admin API middleware to call signature verification method that constructs signature from a tenant's apiSecret, throw if invalid
njlie
changed the title
Create API Key or long-lived session token for Admin API
[Multi-Tenant] Create API Key or long-lived session token for Admin API
Nov 19, 2024
njlie
changed the title
[Multi-Tenant] Create API Key or long-lived session token for Admin API
[Multi-Tenant] Use http-signatures to determine tenant identity during requests
Nov 19, 2024
During tenanted Admin GraphQL requests, the server should leverage the existing
http-signature
signing scheme to determine if the requester is a particular tenant. This should be achieved through the following:tenantId
in the header.apiSecret
on the associated entry in the tenants table.apiSecret
it retrieved and either accept or reject the request based on if the signature is valid.tenantId
provided in the header as part of its input.We might want to also allow signatures generated using the
ADMIN_API_SECRET
environment variable to be used as valid authentication, as way for operators to identify themselves.tenantId
in header during requestapiSecret
, throw if invalidPrerequisites:
backend
tenants table #3103The text was updated successfully, but these errors were encountered: