/// <summary> /// Performs the back-channel logout for a single client. /// </summary> /// <param name="client"></param> protected virtual async Task SendLogoutNotificationAsync(BackChannelLogoutModel client) { var data = await CreateFormPostPayloadAsync(client); await HttpClient.PostAsync(client.LogoutUri, data); }
/// <summary> /// Creates the form-url-encoded payload (as a dictionary) to send to the client. /// </summary> /// <param name="client"></param> /// <returns></returns> protected async Task <Dictionary <string, string> > CreateFormPostPayloadAsync(BackChannelLogoutModel client) { var token = await CreateTokenAsync(client); var data = new Dictionary <string, string> { { OidcConstants.BackChannelLogoutRequest.LogoutToken, token } }; return(data); }