我正在尝试为Xamarin.Forms POC项目实施OAuth身份验证。在iOS项目中,当我按“登录”按钮时,App重定向到SSO页面并加载“登录”页面,但我收到以下警告消息。如下
“方案=具有http [s]模式的https本机UI!重定向URL将被加载到本机UI中!OAuth数据解析可能会失败!”
这里是URL的
clientId: "company ClientID",
clientSecret: "company Secret",
scope: "company profile",
authorizeUrl: new Uri("https://sso.companyname.com/sso/oauth2/authorize"),
redirectUrl: new Uri("dev.company.com"),
accessTokenUrl: new Uri("https://sso.companyname.com/sso/oauth2/access_token"),
我在info.plist中添加的URL方案是“ dev.company.com”。
这是什么意思,我该如何解决?
您的重定向URI不正确-通常使用com.mycompany.myapp:/ callback之类的值-这是一个自定义URI方案,还应作为OAuth客户端在授权服务器中注册。
也应该没有客户端机密-您应该使用授权码流(PKCE)。
用于移动应用的OAuth非常棘手-AppAuth示例是开始了解设置的好地方。我的博客上有几篇文章描述了如何运行它们: