This MR accomplishes the following
Introduces the ability to pass principal identifiers via environment variables. For invoking entitlements-svc APIs, this principal identifier is read from the environment variable
USER_ID_CLAIM_FOR_ENTITLEMENTS_SVC and for all others it is read from
Provides an ability to obtain user-association-service-provider using a factory. Using typescript decorators and corresponding identifiers, user-association-svc-providers can now be extended. The runtime using the environment variable
USER_ASSOCIATION_SVC_PROVIDER can instantiate the right provider. For instance, when the environment variable
USER_ASSOCIATION_SVC_PROVIDER is set to
slb-ccm-internal, the associated implementation of the user-association-svc interaction can be used by the consumer.