Make it easier to inject CSP-specific authentication logic
The authenticateOsdu method found here returns a concrete class. This is causing issues for CSP-specific authentication logic.
I suggest that the class be changed so that a new private auto-wired variable of type IAuthenticate is used instead. Each CSP will have to provide their own implementation of that interface if they choose to do so. Otherwise, a default implementation of the interface is injected into the variable.