The identity an adapter runs as

Table of Contents

1. Summary

An adapter runs as a system service. It has a service identity, and that identity holds no tenant and no party. The market data service authenticates the adapter by its service token, and the adapter learns nothing about the parties it serves. A person never starts an adapter on behalf of a party.

2. Detail

2.1. Three questions, three owners

Question Owner When it is asked
May this process be an adapter? IAM, from the service identity At announce
Which ids must it publish? The market data service At each demand request
Which party gets a value? The market data service At ingest, from the routes

The adapter answers none of the last two. This is what keeps a tick free of tenant and party.

2.2. What a restart restores

The state of an adapter is its connection and its demand set. Neither is stored in the adapter. After a restart the adapter announces again. The service then sends the current demand set, and the adapter serves it. A restart needs no person and no stored consent.

2.3. The simulator

The simulator reads public fixings from the market data service to start and calibrate its generators. It reads them as the system tenant, with a service identity. No per-collection grant exists. Authoring a generator is a separate act of a person with the permission of the system tenant. See Generators belong to the system tenant and the system party.

2.4. Why no run grant

A run grant records that a person agreed that something acts in a tenant and party. An adapter acts in none, so there is nothing to agree.

3. Patterns used

4. See also

Emacs 29.3 (Org mode 9.6.15)