问题标签 [xamarin.auth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3792 浏览

cookies - Xamarin.Auth,Android 上的 WebView 清除 Cookie

关于使用 Xamarin.Auth 清除 Android WebView 的 cookie,我可能已经尝试了所有可以在网上找到的方法。Auth 库不暴露 Android WebView;我不能使用它的 WebSettings 也不能清除该 WebView 对象上的缓存。

Xamarin.Auth 公开了一种清除 cookie 的方法:

这似乎对 cookie 没有影响。我可以在通过 Chrome 进行调试时看到 cookie,并在那里清除它确实会删除所有 cookie。

我已经尝试过CookieManager.Instance.RemoveAllCookies(null);CookieManager.Instance.RemoveSessionCookies(null);在 Xamarin.Auth 创建自己的实例之前创建一个新的 WebView,将 SetAcceptCookies 设置为 false,清除 WebViewStorage,并删除“webview.db”和“webviewCache.db”。但所有的 cookie 仍然存在。

我看了很多荒谬的建议和答案。

使用 Xamarin.Auth v1.5.0.3 并在 S4 Mini、S7、LG G3 Beat 上进行测试。

*编辑
由于 CookieManager.Instance.Sync() 异步运行,可能是这没有及时完成还是根本没有运行?

0 投票
0 回答
434 浏览

c# - Xamarin.Auth 身份验证问题

我有一个Xamarin.Android项目和一个ASP.NET MVC 5网站,ASP.NET Identity and OAuth用于帐户管理和登录。

我已使用 Visual Studio 中的 Xamarin 组件添加Xamarin.Auth到项目中。Android

这是在StartActivity.

现在Completed事件处理程序:

然后我启动身份验证器:

登录页面按预期显示,我输入凭据并Completed触发事件,并且 AuthenticatorIsAuthenticated值为true,如预期的那样。

当我使用args.Account(用户名为空且我不知道为什么但设置了令牌)发出请求时,ASP.NET 网站无法进行身份验证,我不知道为什么。主体的身份未经过身份验证,但当身份验证器调用重定向 url 时,主体已通过身份验证。

Swift用于OAuth2Swift身份验证的 iOS 应用程序OAuth运行良好。

0 投票
2 回答
1021 浏览

xamarin - 身份验证错误 e.Message = OAuth 错误 = 权限 + 错误

我在我的 xamarin.android 和 xamarin.ios (PCL) 项目中使用 Xamarin.Auth 版本 1.5.0.3 使用 facebook 的 OAuth API 进行应用程序身份验证/登录。当我点击“Not now”链接后,问题就出现了(看下面的截图)。我收到以下错误对话框:

身份验证错误 e.Message = OAuth 错误 = 权限 + 错误

有什么方法可以禁用此链接或以某种方式修复它?或者有人知道为什么会这样吗?

在此处输入图像描述

在此处输入图像描述

iOS代码(现在可以使用):

但它仍然无法在 Android 上运行。所有代码都是相同的,除了在 iOS 上我覆盖了“ViewDidAppear”方法,在 android 上覆盖了“OnElementChanged”方法。最后,我在 iOS 上调用“PresentViewController”,在 Android 上调用“activity.StartActivity”。

我在这里遵循了一些说明:如何在 Xamarin.Forms 中登录 facebook

0 投票
1 回答
2446 浏览

android - Xamarin.Auth (Android) - Chrome 自定义选项卡不会在重定向时关闭

我已经实现了 Xamarin.Auth示例代码,以便在 Android 上使用 google 的身份提供者进行身份验证。我已使用设备的 Chrome 浏览器成功导航到 Google 登录页面,我可以在其中输入我的凭据。我成功地向 Google 授权,但 Chrome 自定义选项卡在重定向回我的应用程序时没有关闭,也就是说,我只能在 chrome 浏览器中查看 google 搜索。如果我关闭浏览器,我可以再次看到我的应用程序,并显示从谷歌身份提供者返回的用户详细信息。

为什么 Chrome 的自定义选项卡不会在来自 Google 身份提供商的重定向时关闭,如何使用 Xamarin Forms 和 Xamarin.Auth 关闭它?

0 投票
1 回答
954 浏览

ios - xamarin 形式的钥匙串配置

我正在使用 xamarin 表单我正在尝试使用 xamarin.Auth 在数据库中保存一些信息...当我在 android 中执行此操作时一切正常...但在 ios 中我收到此错误...

我在后面的 pcl 代码中使用这些行:

在此处输入图像描述

这就是我所做的一切......我搜索了很多,但我不知道如何打开钥匙串,或者我所做的一切是否正确......请,如果可以,请帮助我!

在此处输入图像描述

没有地方可以启用

0 投票
1 回答
1775 浏览

xamarin - Azure AD 令牌端点不返回 access_token(只是一个 id_token 和一个 refresh_token)

我正在使用 Xamarin.Auth 在基于 Xamarin Forms 的移动应用程序中针对 Google 和 Azure AD 对用户进行身份验证。虽然谷歌一切正常,但我无法使用 Azure AD 获得 access_token:

  • 授权按预期工作,提供代码和状态
  • Token 返回一个 id_token 和一个 refresh_token,但没有 access_token。

我可以在 Postman 中重播这个场景,所以这似乎不是由 Xamarin.Auth 引起的,更有可能归咎于我无法正确解释 Microsoft 的文档......

您的帮助将不胜感激!

在此处输入图像描述

0 投票
1 回答
506 浏览

android - Xamarin 身份验证 - Facebook 和 GooglePlus

我目前正在开始工作,Xamarin.Auth我面临着 2 个问题,自 1 天半以来我一直在解决这些问题。

我有这段代码:

所以,我正在使用这个类:

但是,问题来了。首先,GooglePlus 可以工作,但是我在我的 android 手机上收到了一条警报,上面写着“Chrome 自定义选项卡不关闭 ...”,所以应用程序崩溃并显示一个空的堆栈跟踪...我在网上搜索,我唯一得到的就是将 的最后一个参数设置为 false new OAuth2Authenticator();,这不起作用,因为谷歌不允许从 webview...

所以我想,好的,我的代码有效,我得到了用户信息 blablabla,如果它在本机浏览器中有效,让我们尝试使用 facebook。但是,我找不到参数 URL...

  • 范围似乎是public_profile
  • AuthorizationUrl将是https://m.facebook.com/dialog/oauth/

但是另外两个呢?我有它们用于 Google+。

我真的被困住了,我觉得,每一秒过去,我都会越来越沮丧……

感谢 !


编辑

我的实际值:

0 投票
1 回答
2900 浏览

oauth-2.0 - 无法使 Xamarin.Auth 重定向回设备

我按照本教程使用 Azure AD 对我的 Azure 移动服务进行身份验证,但我无法使 URL 重定向正常工作。也许我误解了,但这就是我尝试过的......

在 iOS 项目中 ,我将此 URL 方案添加到 info.plist:com.spike.Xamarin.OAuth:/oauth2redirect 我覆盖了AppDelegate.OpenUrl方法(两个重载)并实现了教程中的代码

在 PCL 项目 中,我将身份验证 URL 作为https://(my service).azurewebsites.net/.auth/login/aad重定向 URL 传递,并将相同的 URL(如上)传递给Xamarin.Auth.OAuth2Authenticatorctor。我为事件添加了一个事件处理程序Xamarin.Auth.OAuth2Authenticator.Completed,以获取访问令牌等。

在我受保护的 Azure 移动服务(AAD / Express)中,我将上述 URL 注册OAuth.Xamarin.spike.com:/oauth2redirect为“允许的外部重定向 URL”。

结果

发生的事情是我进入登录页面,并且能够按预期填写我的凭据。但最终重定向永远不会命中 AppDelegate.OpenUrl 方法。相反,iOS Safari 似乎最终以https://(my service).azurewebsites.net/.auth/login/aad/callback.

我在这里做错了什么?

0 投票
1 回答
274 浏览

azure - Xamarin MobileServiceClient RefreshUserAsync 与 Google 403

我正在使用 Azure 的 MobileServiceClient sdk 对我的服务器进行身份验证。随着升级到 4.x 版本,我还使用 Xamarin.Auth 通过 Google 和 Facebook 对用户进行身份验证。当响应从谷歌返回时,我得到了一个刷新令牌。然后我像这样调用移动服务 sdk:

这项工作非常好。不起作用的是对 client.RefreshUserAsync() 的调用。每次说刷新令牌已过期或不再有效时都会抛出 403,即使我在登录后立即调用该方法也是如此。我根本没有看到很多使用 MobileServiceClient 4.x sdk 的示例,而且没有一个有如何使用刷新令牌的示例。

我也尝试在 zumo 有效负载中发送它,但它不起作用。我尝试在 Google 上使我的用户无效(我正在获取刷新令牌),尝试通过浏览器登录并转到 auth/me,但刷新令牌不存在。任何帮助都会很棒!

0 投票
1 回答
593 浏览

xamarin - Xamarin.Auth Facebook 给出 NullReferenceException 2

我正在关注此页面以及来自 Xamarin.Auth github 存储库的一些示例,因此设置了 facebook 登录。我创建了以下登录功能:

但我在最后一行收到以下异常:

有什么想法我可能做错了吗?