Beispiel #1
0
        public IActionResult ExternalProviderSignIn(ValueWrapperDto <string> provider)
        {
            var redirectUrl = Url.Action("ExternalProviderSignInCallback", "User");
            var properties  = accountService.ConfigureSignInWithExternalProvider(provider.Value, redirectUrl);

            return(new ChallengeResult(provider.Value, properties));
        }
Beispiel #2
0
 public Task <ValueWrapperDto <string> > GetConsentScreenUrl(
     ValueWrapperDto <string> provider,
     Toast toast)
 {
     return(httpClientService.Post <ValueWrapperDto <string>, ValueWrapperDto <string> >(
                "api/user/ExternalProviderSignIn",
                provider,
                toast));
 }
Beispiel #3
0
 public async Task <ActionResult <TokenPairDto> > RefreshTokens([FromBody] ValueWrapperDto <string> refreshInfo)
 {
     try
     {
         return(Ok(await accountService.RefreshTokens(refreshInfo.Value, User.GetUserId().Value, User.Claims)));
     }
     catch (System.Exception)
     {
         return(Unauthorized());
     }
 }
Beispiel #4
0
        public async Task RefreshTokens(
            ValueWrapperDto <string> refreshToken,
            Toast toast = default(Toast))
        {
            var result = await httpClientService.Post <ValueWrapperDto <string>, TokenPairDto>(
                "api/user/RefreshTokens",
                refreshToken,
                toast);

            if (result is not null)
            {
                try
                {
                    await authenticationStateProvider.MarkUserAsSignedIn(result.AccessToken, result.RefreshToken);
                }
                catch (System.Exception)
                {
                    await authenticationStateProvider.MarkUserAsSignedOut();

                    navigationManager.NavigateTo("SignIn/");
                }
            }
        }