Owin, übergeben Sie benutzerdefinierte Abfrageparameter in Authentifizierungsanforderung

Wir haben unseren eigenen OpenID Connect Provider. Wir möchten benutzerdefinierte Abfrageparameter in der Authentifizierungsanforderung mithilfe der Owin-Middleware übergeben. Und wir können nicht herausfinden, wie dies mithilfe von umgesetzt werden kannMicrosoft.Owin.Security.OpenIdConnect Versammlung. Es ist nicht möglich, einen Standardanforderungsparameter zur Authentifizierungsanforderung hinzuzufügen (z. B. "login_hint Parameter").

Zum Beispiel hat Google "login_hint" und "hd"parameter (https://developers.google.com/accounts/docs/OAuth2Login#sendauthrequest), und wir wollen fast die gleichen Parameter haben. Wir können jedoch nicht einmal herausfinden, wie wir diese Parameter mit Owin an Google senden können. Versuchte diesen Code:

var googleOptions = new GoogleOAuth2AuthenticationOptions()
{
    ClientId = "...",
    ClientSecret = "...",
};
app.UseGoogleAuthentication(googleOptions);

...

public ActionResult ExternalLogin(string provider)
{
    var ctx = Request.GetOwinContext();
    var properties = new AuthenticationProperties();
    properties.Dictionary.Add("login_hint ", "[email protected]");
    properties.Dictionary.Add("hd", "hd");
    ctx.Authentication.Challenge(properties, provider);
    return new HttpUnauthorizedResult();
}

Die URL der Authentifizierungsanforderung wird jedoch ohne "" generiert.login_hint" und "hd"parameter.

Für jede mögliche Hilfe sehr dankbar, um dieses Problem zu lösen.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage