IAuthClient
public protocol IAuthClient
Protocol for dispatching requests to authentication Strivacity APIs.
-
Sends an authorization request to perform authorization flow See Strivacity APIs, Authentication APIs, Begin an OIDC Authorization Code Flow See OpenID Connect Core 1.0, Section 3.1
Declaration
Swift
func authorizeAuthCodeFlow(viewController: UIViewController, completion: @escaping (Result<AnyObject, Error>) -> Void)
Parameters
viewController
The UIViewController to present auth flow request.
completion
The callback to invoke upon request completion.
-
Sends an authorization request to perform hybrid flow See Strivacity APIs, Authentication APIs, Begin an OIDC Hybrid Flow See OpenID Connect Core 1.0, Section 3.3
Declaration
Swift
func authorizeHybridFlow(viewController: UIViewController, completion: @escaping (Result<AnyObject, Error>) -> Void)
Parameters
viewController
The UIViewController to present hybrid flow request.
completion
The callback to invoke upon request completion.
-
Sends request to obtain an id token from auth code See Strivacity Authentication APIs, Obtain an ID Token from an Authorization Code See OpenID Connect Core 1.0, Section 2 Note: The authorization code must already be obtained from [authorizeAuthCodeFlow] or [authorizeHybridFlow]
Declaration
Swift
func requestIdToken(completion: @escaping (Result<AnyObject, Error>) -> Void)
Parameters
completion
The callback to invoke upon request completion.
-
Sends request to obtain an access token via client credentials See Strivacity Authentication APIs, Obtain an Access Token via Client Credentials
Declaration
Swift
func requestAccessToken(viewController: UIViewController, completion: @escaping (Result<AnyObject, Error>) -> Void)
Parameters
completion
The callback to invoke upon request completion.
-
Sends request to perform logout See Strivacity Authentication APIs, Begin an OIDC Initiated Logout See OpenID Connect RP-Initiated Logout 1.0 - draft 01
Declaration
Swift
func logout(viewController: UIViewController, completion: @escaping (Result<Bool, Error>) -> Void)
Parameters
viewController
The UIViewController to present logout request.
completion
The callback to invoke upon request completion.
-
Gives actual authentication state
Declaration
Swift
func getAuthState() -> AnyObject?
Return Value
authentication state
-
Handles the redirect of the authorization response url.
Declaration
Swift
func proceedExternalUserAgentFlow(with url: URL) -> Bool
Parameters
url
authorization response url
Return Value
result of redirection, true on success, false on failure.