Ejemplo n.º 1
0
    private void SetAuthenticator(PKCETokenResponse token)
    {
        // Set API authentification once recieved
        _pkceAuthenticator = new PKCEAuthenticator(_clientID, token);
        _pkceAuthenticator.TokenRefreshed += this.OnTokenRefreshed;

        OnAuthenticatorComplete?.Invoke(_pkceAuthenticator);
    }
Ejemplo n.º 2
0
    private async Task OnImplicitGrantReceived(object sender, ImplictGrantResponse response)
    {
        // Stop server
        await _server.Stop();

        _lastAuthToken = response;

        // Trigger complete with auth token
        OnAuthenticatorComplete?.Invoke(_lastAuthToken);
    }
Ejemplo n.º 3
0
    private void OnTokenRefreshed(object sender, PKCETokenResponse token)
    {
        DateTime expireDT = S4UUtility.GetTokenExpiry(token.CreatedAt, token.ExpiresIn);

        Debug.Log($"PKCE token refreshed | Expires at '{expireDT.ToLocalTime()}'");

        bool triggerEvent = _pkceToken.IsExpired && !token.IsExpired;

        _pkceToken = token;

        if (PKCEConfig != null)
        {
            SavePKCEToken(_pkceToken);
        }

        if (triggerEvent)
        {
            Debug.Log("PKCE: Success in refreshing expired token into new token");
            OnAuthenticatorComplete?.Invoke(_pkceAuthenticator);
        }
    }