コード例 #1
0
 public async Task <SignOutResponse> SignOutAsync(SignOutRequest request)
 {
     try {
         var session  = DeserializeJson <SessionInfo>(await DecryptSecretAsync(request.SessionToken));
         var document = new Document {
             ["PK"]   = session.Username.ToLowerInvariant(),
             ["SK"]   = "ACCOUNT",
             ["Salt"] = Guid.NewGuid().ToString("N").ToUpperInvariant()
         };
         await _table.UpdateItemAsync(document, new UpdateItemOperationConfig {
             ConditionalExpression = new Expression {
                 ExpressionStatement       = "Salt = :salt",
                 ExpressionAttributeValues = new Dictionary <string, DynamoDBEntry> {
                     [":salt"] = session.Salt
                 }
             }
         });
     } catch (ConditionalCheckFailedException) {
         LogInfo("update condition failed");
         throw AbortBadRequest("invalid session token");
     } catch (Exception e) {
         LogErrorAsInfo(e, "unable to recover the session info");
         throw AbortBadRequest("invalid session token");
     }
     return(new SignOutResponse {
     });
 }
コード例 #2
0
ファイル: MockWebService.cs プロジェクト: Redth/crisischeckin
		public async Task<SignOutResponse> SignOutAsync (SignOutRequest request)
		{
			await Task.Delay (2000);

			return new SignOutResponse {
				Succeeded = true,
				Result = true
			};
		}
コード例 #3
0
 public SignOutResult SignOut(SignOutRequest request)
 {
     return(new SignOutResult
     {
         Result = new ServiceResult <bool>
         {
             Data = true
         }
     });
 }
コード例 #4
0
        // DELETE: api/SignIn/5
        public HttpResponseMessage Delete([FromBody] SignOutRequest credentials)
        {
            HttpResponseMessage response;

            if (dbConnection.logOut(credentials))
            {
                response = Request.CreateResponse(HttpStatusCode.OK, "Log Out realizado satisfactoriamente!");
                return(response);
            }
            response = Request.CreateResponse(HttpStatusCode.NotFound, "ID no encontrado");
            return(response);
        }
コード例 #5
0
        public static void Disconnect()
        {
            if (!IsConnected)
            {
                return;
            }

            Request disconnectRequest = new SignOutRequest();

            DataTransferHelper.SendRequestToServer(Client, disconnectRequest);
            Client?.Close();

            IsConnected = false;
        }
コード例 #6
0
        public async Task SignOut(SignOutRequest request, CancellationToken cancellationToken = default)
        {
            Check.NotNull(request, nameof(request));

            request.EnsureIsValid();

            var signOutRequest = new GlobalSignOutRequest
            {
                AccessToken = request.AccessToken
            };

            try
            {
                await base.CreateDefaultRetryAsyncPolicy().ExecuteAsync(async() =>
                                                                        await CognitoidentityProvider.GlobalSignOutAsync(signOutRequest, cancellationToken));
            }
            catch (Exception ex)
            {
                throw CatchException(ex);
            }
        }
コード例 #7
0
ファイル: handler.cs プロジェクト: KevM/dovetail-bootstrap
        public FubuContinuation Execute(SignOutRequest request)
        {
            _authenticationService.SignOut();

            return(FubuContinuation.RedirectTo <HomeRequest>());
        }
コード例 #8
0
        public static async Task RaiseLogoutEventAsync(this IEventService events,
                                                       ClaimsPrincipal subject, string signOutId, SignOutRequest signOutMessage)
        {
            var evt = new Event <LogoutDetails>(
                EventConstants.Categories.Authentication,
                "Logout",
                EventTypes.Information,
                EventConstants.Ids.Logout,
                new LogoutDetails
            {
                SubjectId      = subject.GetSubjectId(),
                Name           = subject.Identity.Name,
                SignOutId      = signOutId,
                SignOutMessage = signOutMessage
            });

            await events.RaiseEventAsync(evt);
        }
コード例 #9
0
ファイル: BlogService.cs プロジェクト: GataullinRR/BlogV2
 public async Task <SignOutResponse> SignOutAsync(SignOutRequest request)
 {
     return(await MakeRequestAsync <SignOutRequest, SignOutResponse>(HttpMethod.Post, BlogServiceEndpoints.SignOut, request));
 }
コード例 #10
0
        private void SignOut()
        {
            SignOutRequest signOutRequest = new SignOutRequest();

            DataTransferHelper.SendRequestToServer(MainWindowViewModel.Client, signOutRequest);
        }
コード例 #11
0
        public async Task <IActionResult> SignOut(SignOutRequest request)
        {
#warning Implement!
            return(Ok(new SignOutResponse()));
        }
コード例 #12
0
 public void SignOut(SignOutRequest request)
 {
     context.SignOut(request.Token);
 }
コード例 #13
0
 public SignOutResult SignOut(SignOutRequest request)
 {
     return new SignOutResult
     {
         Result = new ServiceResult<bool>
         {
             Data = true
         }
     };
 }
コード例 #14
0
ファイル: handler.cs プロジェクト: skopp/dovetail-bootstrap
        public FubuContinuation Execute(SignOutRequest request)
        {
            _signOutService.SignOut();

            return FubuContinuation.RedirectTo<HomeRequest>();
        }