Create a new AuthenticationStrategy interface that will allow us to abstract the authentication flow. The interface should
take a CredentialProvider and Conjur account as inputs, as well as any other arguments that are needed to authenticate,
such as service_id for LDAP. The interface should have a authenticate method which returns a Conjur auth token. All details of authentication should be handled by the AuthenticationStrategy interface.
Include unit tests and update existing unit and integration tests.
Implemented Changes
Added AuthenticationStrategyInterface to abstract authentication logic
Added AuthnAuthenticationStrategy which implements the interface for the default authn strategy
Updated the Api class to use the interface to implement authentication
Note: To see implementation in the CLI, see https://github.com/cyberark/cyberark-conjur-cli/pull/410
Desired Outcome
Create a new
AuthenticationStrategy
interface that will allow us to abstract the authentication flow. The interface should take aCredentialProvider
and Conjur account as inputs, as well as any other arguments that are needed to authenticate, such asservice_id
for LDAP. The interface should have aauthenticate
method which returns a Conjur auth token. All details of authentication should be handled by theAuthenticationStrategy
interface. Include unit tests and update existing unit and integration tests.Implemented Changes
AuthenticationStrategyInterface
to abstract authentication logicAuthnAuthenticationStrategy
which implements the interface for the default authn strategyConnected Issue/Story
CyberArk internal issue link: ONYX-20429
Changelog
Test coverage
Documentation
README
s) were updated in this PRBehavior
Security