Articles of oauth 2.0

如果使用webview进行身份validation,如何使用Intentfilter处理OAuth URL回调?

我正在开发一个使用OAuth进行身份validation的应用,但我在处理OAuth回调时遇到了一些问题。 认证 我的应用程序有一个webview作为登录屏幕,我有一个URL来加载我的webview中的身份validation表单 。 让我们说url是: https://myoauthhost.com/oauth/auth?response_type=code&client_id=XXXXXXX&redirect_uri=YYYYYYYY&scope=ZZZZZZZZZZ 在auth活动(AuthActivity.java)中,我有以下内容: String authURL = https://myoauthhost.com/oauth/auth?response_type=code&client_id=XXXXXXX&redirect_uri=YYYYYYYY&scope=ZZZZZZZZZZ myWebView.loadUrl(authURL); 在manifest.xml中,我有以下oauth回调处理: 问题 在webview中使用此url(使用loadURL()方法)会重定向到包含REAL OAUTH WEB FROM的另一个url(应该在webview中加载)。 问题是此重定向会自动启动Android中的意图选择 :由于URL应由Web浏览器处理,因此Android允许您选择手机上可用的Web浏览器之一来打开该URL。 由于这不是我想要的,我必须包含以下代码,以便在webview中处理重定向但不启动Web浏览器(或其他): myWebView.setWebViewClient(new WebViewClient()); 因此,使用此代码,重定向将在“webview”中处理,并显示登录屏幕。 然后我可以输入凭证(例如:通过Twitter的oauth),但是当validation完成后,收到回叫,但是后续处理回调的活动(配置为接收清单中的回调的AuthActivity)不会启动。 相反,我让webview显示一条消息,说明无法findurl回调(在我们的例子中:authprovider:// auth / XXX?xxx = yyy,如清单中所配置)。 原因可能是以下代码: myWebView.setWebViewClient(new WebViewClient()); 前面介绍过,告诉Android webview处理所有事情。 所以现在,由于回调url不是url,因此无法处理它,甚至无法启动可以处理它的意图。 问题 我怎么解决这个问题 ? 我应该能够让活动处理回调,但不要让webview尝试加载它。 任何帮助,将不胜感激 提前致谢

在Android上获取OAuth2令牌时UNREGISTERED_ON_API_CONSOLE

我们在Android(Jellybean及更高版本)下,我们有一个应用需要使用OAuth2与Google进行身份validation。 我简化了登录活动,但它看起来像这样: AccountManager mAccountManager; // […] Account account = new Account(“myEmail@gmail.com”, “com.google”); // same with professional email managed by Google as myEmail@myDomain.com // real code recovers accounts with mAccountManager.getAccountsByType(“com.google”) mAccountManager = AccountManager.get(getBaseContext()); mAccountManager.getAuthToken(account, “oauth2:https://www.googleapis.com/auth/userinfo.email”, null, MyActivity.this, new AccountManagerCallback() { @Override public void run(AccountManagerFuture accountManagerFuture) { try { String token = accountManagerFuture.getResult().getString(AccountManager.KEY_AUTHTOKEN); // exception occurs here […]

Android中的LinkedIn的Oauth 2.0授权

即使没有来自linkedIn的这种特定于android的sdk(如facebook和twitter sdk for android)。使用Oauth 1.0设置linkedIn授权仍然很容易使用: 划线的java 适用于Android的Social-auth 。 以及这里的工具列表。 但与Oauth2.0的授权不一样。 没有太多有用的库或Android特定的例子。 我试过用这些: Android Oauth-client tnj 。 我已经读过Oauth 2.0比1.0更容易实现。 我仍然无法这样做。 在Android中为LinkedIn实现Oauth2.0的任何指示?

Android Firebase Rest API身份validation

我目前正在使用Firebase Realtime数据库开发应用程序,但是我选择省略使用SDK从数据库中检索数据。 原因是我不希望我的代码与FireBase紧密相关,因为一旦构建应用程序,api本身将转移到基于自定义rest的api。 我根据文档使用REST和Firebase实现了api调用,没有问题 – POST,GET,DELETE等。 我遇到的问题是,如果我在数据库上启用任何types的身份validation,根据我需要发送带有请求的“access_token”的文档,但是我不知道从哪里检索它。 firebaseUser.getToken(true)返回看起来像JWT令牌的内容,如果我将其作为”access_token”发送,则无法识别该令牌。 我得到401 Unauthorized 我还按照说明设置了一个服务帐户,该帐户似乎生成了一个有效的令牌,但它并没有唯一地标识用户。 所以我的问题是,任何人都可以指出我如何获得所需的访问令牌,以识别哪个用户正在访问该API? 我的Firebase项目支持的登录选项是Google,Facebook和Twitter。

从React Native中的应用程序本身的webview重定向到移动应用程序

我正在构建一个Android应用程序,需要来自外部auth提供程序的身份validation。所以我使用react-native-oauth包来处理这个问题。 redirect_uri定义的是一个深层链接,理想情况下应该在成功validation后打开我的应用程序。但是WebView似乎没有处理这个重定向,我得到的响应是找不到404页面。 这是我为处理身份validation而编写的服务: const manager = new OAuthManager(”) manager.addProvider({ ‘provider’: { auth_version: ‘2.0’, authorize_url:”, access_token_url: ‘/token’, callback_url: ‘http://localhost/provider’, } }); manager.configure({ provider: { client_id: ”, client_secret: ”, redirect_uri: ” //DEEP LINK HERE } }); module.exports = { authManager: () => { manager.authorize(”) .then(resp => console.log(resp)) .catch(err => console.log(err)); } } 此外,我已经在Android文档中指定了如何声明应用程序的深层链接的 intent-filter。深度链接在使用应用程序组件中的Linking.openURL()打开时工作正常。 任何帮助都非常感谢。

在嵌入式Android设备上使用Google OAuth 2

我们有基于Android的嵌入式设备的应用程序,它使用WebView,在其中我们使用Google OAuth 2登录该应用程序。 不幸的是, 谷歌很快就会在WebView中阻止OAuth 2 ,我们有很多限制: 该设备没有安装Google服务,因此可能没有“官方”登录方式可行(或者如果没有Google服务,其中任何一种都可以使用?) 我们不能只是调用Android浏览器来登录,因为它显示地址栏,这将允许用户上网,我们不能允许 我们无法完全控制设备上安装的软件:无法安装Google服务,更新Android版本,安装Google Chrome等等,我们只需更新我们的应用即可。 我们还能做些什么限制呢?

适当的android Oauth2库/框架

我现在一直在日夜搜索一个适合我的Android应用程序使用的OAuth2库。 我遇到了很多,包括apache amber(正式leeloo)和android开发人员指定的一个( http://developer.android.com/training/id-auth/authenticate.html ),它似乎已经被欺骗了。 然而,它们都没有工作,甚至没有合并我的项目错误(即在jar子里丢失方法)。 因此,我的问题是,如果有任何适当的OAuth2库可以用于Android。 我只需要一个库,它允许我检索一个身份validation代码,然后是令牌调用,它将允许自动调整请求。 任何有趣项目(git或w / e)的链接都是最受欢迎的。

如何正确实现linkedIn登录?

我有一个andorid应用程序,我正在尝试在其中实现linkedIn登录。 LinkedIn SDK已成功集成,我也会收到用户信息以及电子邮件地址。 以下是我的应用程序如何适用于谷歌登录: 1)在移动设备上获取访问令牌 2)向服务器发送带有访问令牌的电子邮件地址 3)通过谷歌的webapi获取具有访问令牌的用户的详细信息。 4)如果响应电子邮件与从移动设备接收的电子邮件匹配,则检查该电子邮件地址是否存在。 如果没有创建帐户并登录其他明智的登录。 链接问题: 我收到的访问令牌属于移动sdk,我不能使用相同的令牌来发出REST API请求。 ( 根据文件 ) 移动与服务器端访问令牌 请务必注意,通过Mobile SDK获取的访问令牌仅可用于Mobile SDK,并且不能用于进行服务器端REST API调用。 同样,您已经从使用服务器端REST API调用进行身份validation的用户存储的访问令牌将无法与Mobile SDK一起使用。 那么如何validation我在网络服务器上面提到的步骤3)中的细节? 这是一场灾难吗? 我确信必须有一种方法可以做我想做的事情,因为有很多应用程序允许用户通过他们的移动应用程序登录。 因为如果它不可能,那么任何人都可以轻松地更改移动应用程序从linkedin收到后发送到网络服务器的电子邮件地址,我可以使用我想要的任何电子邮件地址登录。

使用XOauth的android中的Javamail api

我需要通过我的应用程序使用javamail API发送电子邮件(任何其他邮件服务,如果可用的话也会这样做)。 问题是我不想问用户他的username和password 。 1)是否可以将OAuth 2.0与JavaMail API /任何其他邮件API一起使用 2)如何获取OAuth令牌? 3)网上是否有可用的示例代码 提前致谢。 PS:我从未使用过邮件服务/ SMTP请求。

是否已有适用于Java / Android的OAuth2库?

我不想编码已经存在的东西……