Open InbalZilberman opened 5 years ago
Hi,
This looks good! A few comments:
CONJUR_AUTHN_SUFFIX
rather than CONJUR_AUTH_SUFFIX
as we use authn
all around.retrieveIDToken()
is against the OIDC provider right? We succeeded to do this against OKTA in the script but it's not generic. Not sure how feasible this will be. If it's not possible, we can create an IDToken object with an id_token string as an input from the user (env var?).Also, a question - what do you mean by Lets find a generic way to provide this support in the SDK
? Is this generic between different SDKs? Generic between authenticators?
Feature Overview & Customer Need The customer, would like to use OIDC authenticator while developing his application using Conjur SDKs (JAVA and Python for each one we will have a different user story). The user, a developer of an application, would like to use the SDK to connect to Conjur, authenticate using OIDC authenticator and retrieve secrets.
Important Lets find a generic way to provide this support in the SDK while taking into account all authenticators will use the practice we will decide upon. Generic between different SDKs and generic between authenticators.
JAVA SDK Flow The JAVA application developer, Fay, would like to use Conjur SDK and use OIDC authenticator
Failure Scenarios Failure Scenarios should be document and reviewed. Scenarios:
Invalid env var - new case here is related to CONJUR_AUTHN_SUFFIX if the value is not reaching a valid authenticator a log should be written to the output of the sdk logs,
All other failure scenarios oidc authenticator has should be propagated to the SDK.
As we know that OIDC authenticator is not supported before a certain version if the connection is done to an old Conjur it would be nice if we can give a good message for this case.
Documentation This change in SDK should be documented together with:
DOD