feat: parametrize user claim identifiers using env vars and add user association service provider factory
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 fromUSER_ID_CLAIM_FOR_SDMS
-
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 variableUSER_ASSOCIATION_SVC_PROVIDER
is set toslb-ccm-internal
, the associated implementation of the user-association-svc interaction can be used by the consumer.