daml/ledger/ledger-api-auth
pbatko-da f2b7902c68
[User management] Add CreateUserResponse and GetUserResponse gRPC response wrappers [DPP-854] (#12682)
changelog_begin
Ledger API Specification: CreateUser and GetUser endpoints of UserManagementService now return the CreateUserResponse or GetUserResponse messages, whereas previously they were returning the User message).
changelog_end
2022-02-08 12:29:57 +01:00
..
src [User management] Add CreateUserResponse and GetUserResponse gRPC response wrappers [DPP-854] (#12682) 2022-02-08 12:29:57 +01:00
BUILD.bazel [User management] Terminate ongoing streams when user state has changed [DPP-830] (#12437) 2022-01-28 16:44:39 +01:00
README.md Move AuthService (#3272) 2019-10-29 15:46:43 +00:00

Ledger API authorization

General authorization in gRPC

An Interceptor reads HTTP headers, and stores relevant information (e.g., claims) in a Context.

GRPC services read the stored data from the Context in order to validate the requests.

Authorization in the ledger API

The AuthService defines an interface for decoding HTTP headers into Claims.

The ledger API server takes an AuthService implementation as an argument.

The ledger API server uses a call interceptor and the given AuthService implementation to to store decoded Claims in the gRPC Context.

All ledger API services use the Claims to validate their requests.