You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jul 31, 2024. It is now read-only.
LogoutMessage.Parameters is type of NameValueCollection, so EndSessionResult -> ExecuteAsync() -> _logoutMessageStore.WriteAsync(msg) -> ObjectSerializer.ToString(message) will lose the NameValueCollection`s Value, causing loss of data. For example, {"Parameters":["name" : "test"]} will be serialized to {"Parameters":["name"]}.
At the same time, LogoutMessage.Parameters is read-only, so it will be ignored when deserializing in DefaultIdentityServerInteractionService.GetLogoutContextAsync(). This causes the LogoutRequest.Parameters to always be empty.
publicclassEndSessionResult:IEndpointResult{
...publicasync Task ExecuteAsync(HttpContextcontext){
...
id =await _logoutMessageStore.WriteAsync(msg);}}publicclassProtectedDataMessageStore<TModel>:IMessageStore<TModel>{
...publicvirtualTask<string>ReadAsync(Message<TModel>message){
...//
var json = Encoding.UTF8.GetString(bytes);// LogoutMessage.Parameters is read-only, so it will be ignored.result= ObjectSerializer.FromString<Message<TModel>>(json);
...}publicvirtualTask<string>WriteAsync(Message<TModel>message){// lost NameValueCollection data varjson= ObjectSerializer.ToString(message);
...}}
The text was updated successfully, but these errors were encountered:
LogoutMessage.Parameters
is type of NameValueCollection, soEndSessionResult
->ExecuteAsync()
->_logoutMessageStore.WriteAsync(msg)
->ObjectSerializer.ToString(message)
will lose the NameValueCollection`s Value, causing loss of data. For example, {"Parameters":["name" : "test"]} will be serialized to {"Parameters":["name"]}.At the same time,
LogoutMessage.Parameters
is read-only, so it will be ignored when deserializing inDefaultIdentityServerInteractionService.GetLogoutContextAsync()
. This causes theLogoutRequest.Parameters
to always be empty.The text was updated successfully, but these errors were encountered: