Owin, passe parâmetros de consulta personalizados na solicitação de autenticação
Nós temos nosso próprio provedor OpenID Connect. Queremos passar o parâmetro de consulta personalizado na solicitação de autenticação usando o middleware Owin. E não conseguimos encontrar a maneira de implementar isso usandoMicrosoft.Owin.Security.OpenIdConnect montagem. Mesmo não conseguimos descobrir como adicionar um parâmetro de solicitação padrão à Solicitação de autenticação (por exemplo, "login_hint parâmetro").
Por exemplo, o Google tem "login_hint"e"hd"parâmetros (https://developers.google.com/accounts/docs/OAuth2Login#sendauthrequest) e queremos ter quase os mesmos parâmetros. Mas nem conseguimos encontrar como enviar esses parâmetros para o Google usando Owin. Tentei este código:
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();
}
Mas o URL da solicitação de autenticação será gerado sem "login_hint"e"hd"parâmetros.
Ficarei muito grato por qualquer ajuda para resolver esse problema.