What is the purpose of IDfSessionManager.authenticate method?

A.
To get a user session when a custom authentication plugin is used
B.
To validate user credentials without getting a session
C.
To get a user session during single sign-on
D.
To validate user credentials when shared sessions are used