问题标签 [github-oauth]

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 投票
0 回答
84 浏览

django - Django 上的社交网络登录失败,回调 url 不匹配

我在附加社交登录时遇到问题。我在本地尝试了谷歌登录,很好。但是当我尝试部署时,不支持非公共域。我不确定 *.link 是非公共域,但由于某种原因它不起作用。所以我正在尝试进行 github 登录,但出现以下错误。回调 URL 不匹配,但我不知道应该使用哪个 URL。

我在 Github 上使用这个 URL:https ://taeheejo.link/user/githubin/github/login/callback/

网址.py

授权/urls.py

这是一个错误..

在此处输入图像描述

我也添加了管理面板站点名称和应用程序..

有人可以告诉我我错过了哪一部分吗?

0 投票
0 回答
32 浏览

ruby-on-rails-4 - 如何模拟 github oauth rails4 的黄瓜失败?

我正在尝试使用 OmniAuth for github 完成注册/登录/注销行为。所有其他 cucumber 和 rspec 测试通过所有其他行为。

当使用无效凭据发出omniauth请求时,我正在尝试进行黄瓜测试以遵循会话控制器中的失败路线:

但它没有这样做,而是返回并启动注册/登录过程(然后由于验证错误而失败)。

我的 OmniAuth 初始化程序是:

我的会话代码是:

我想我可以通过将 features/support/env.rb 设置为:

但这只是后来在我的会话create方法中失败了

我还发现很难找到一个合理的位置来放置断点,因为所有操作都发生在中间件中。

根据维基:

默认情况下,Omniauth 将在开发和测试环境中引发无效凭据异常。如果您希望在这些环境中被重定向到 /auth/failure 端点,请包含以下代码:

但完全不清楚这段代码的去向,或者如何env获得它的价值。到目前为止,我尝试过的任何东西都没有任何效果。

谢谢!

0 投票
0 回答
20 浏览

github - GitHub 分支保护是否适用于具有读写访问权限的集成应用程序?

我正在研究集成一个自动化服务,该服务通过将他们的应用程序与我的 GitHub Repo 集成来工作。在设置期间,应用程序请求读/写访问权限:

对 GitHub 的读写访问请求

它是OAuth 范围的 GitHub 文档,看起来这被称为public_repo

限制对公共存储库的访问。这包括对公共存储库和组织的代码、提交状态、存储库项目、协作者和部署状态的读/写访问。还需要为公共存储库加注星标。

我正在集成的应用程序解释了他们如何使用此访问权限:

此访问权限允许我们安装只读 SSH 密钥、设置 webhook 并将提交状态写入公共存储库。

这是否意味着应用程序可以在不使用拉取请求的情况下将任何内容写入您的存储库?我问的原因是,我的 repo 有分支保护规则,可以防止强制推送,并且需要 2 个批准的 PR 才能合并任何内容。理想情况下,我想确保应用程序想要进行的任何更改都需要首先获得批准。

0 投票
0 回答
321 浏览

github-api - 如何使用 Github Oauth access_token 对 Octokit 进行身份验证

我正在构建一个 GitHub Oauth 应用程序,并且我正在尝试使用access_token用户单击时获得的 Oauth 对 Octokit 进行身份验证sign in with Github

我正在使用的access_token可以访问repo范围,但是当我尝试使用此令牌对 Octokit 进行身份验证时,我得到:HttpError: A JSON web token could not be decoded

这是我的代码:

我也尝试过像这样进行身份验证:

但是当我这样做时,我尝试使用 octokit 删除一个问题,我得到一个HttpError: Not Found错误。

0 投票
1 回答
39 浏览

github-api - 如何为用户即服务器 oAuth 实例化 Octokit?

我希望我的 GitHub 应用代表用户执行操作,例如创建问题。

我以这种方式验证我的用户:

看来我得到的令牌不错。

现在的问题是当我稍后在我的代码中尝试创建一个 Octokit 时,这不起作用

创建 Octokit 实例的正确方法是什么?

谢谢 !

0 投票
0 回答
55 浏览

google-apps-script - 从 Google Apps 脚本访问 github API 范围

我正在尝试使用apps-script-oauth2库来访问 Google Apps 脚本中的 GitHub API。我正在创建这样的服务:

我可以启动身份验证端点并获取有效的访问令牌。但是我得到的令牌似乎没有被授权用于任何范围。我可以记录令牌并尝试在 curl 请求中使用它:

这样做的结果是,我对需要授权范围的资源的任何请求要么失败,要么返回一个空列表。特别是,即使我在上面的服务配置中指定了范围,/org/{org-name}/repos端点也会返回。[]repo

(更新:我的组织只有私有存储库;如果我为具有公共存储库的组织请求此端点,我会得到一个可用的存储库列表。显然我需要repo获取私有存储库的范围。)

我要求这样的回购列表:

在可能相关的一点上,是否应该有某种方法将 OAuth2 请求中使用的范围名称与您可以在 GitHub 开发人员设置页面中授予应用程序的权限相关联?我完全不确定我是否已授予 GitHub 应用程序正确的权限集,以便能够repo在身份验证请求中请求范围,但似乎根本没有任何文档说明两者之间的关系。

0 投票
0 回答
43 浏览

java - 春季Github认证

我一直在尝试自学更多关于后端开发的知识,因此我选择了 spring/java/kotlin 作为我的工具。从教程中,我尝试通过 github 设置 oauth2,但它似乎无法正常工作。

我的要求:

  1. 创建一个网站,在誓言登录后包含一些页面:比如说/about/index.html是无需登录即可访问的页面

  2. 特定页面上的 cta x(比如“登录查看”按钮/market)将打开 github 登录页面,成功登录后,我们将用户重定向到页面y(比如/marketmarket-unlocked

  3. 我可以将某种令牌或其他标识符存储在我的数据库中,这样下次打开该页面时,我不会向他们显示 github 登录名,而是直接打开它。这也必须为 rest apis 完成,例如/user/{id}端点返回 userinfo ,因此应该在使用 github 登录后访问(我们将发送身份验证令牌作为标头,对吗?)


这是我尝试过的代码:

我的 applications.properties 文件:

我的 application.kt 文件

我的 securityconfigadapter.kt 文件:

我的登录 apis 控制器文件:

我的 github 配置: 在此处输入图像描述

现在的情况:

  1. 我能够使“/”、“/error”、“/payments”等端点无需登录即可访问,其他路径可通过登录访问
  2. 对于登录,在打开中提到的端点后,它并没有真正给出任何令牌AuthApi.kt
  3. github api 还限制 github 应用程序和属性中的重定向 url 都相同。我不想要这样的限制,并想确定每个登录请求的重定向 url
  4. 整个登录无法正常工作

有人可以帮助我了解如何解决这些问题吗?非常感谢。

0 投票
0 回答
13 浏览

oauth-2.0 - 为什么谷歌要求一个人在每台设备上和注销后授权一个应用程序,而 Github 却没有

在授权 3rd 方应用程序时,使用 Google 登录与使用 Github 登录是有区别的。

在 Github 中,一个人只需要授权一次。在其他设备上或注销后,不会要求用户授权 3d 派对应用程序,但会自动登录。

在 Google 中,一个人需要在每台设备/注销时重新授权第 3 方应用程序。

我个人认为Github的体验要好很多。

不同行为的原因是什么?

查看OAuth2 规范,我没有看到任何关于何时重新授权的提及。

0 投票
0 回答
12 浏览

oauth-2.0 - github oauth无法使用网守

我正在使用 react-social-login 扩展来通过 GitHub 进行身份验证。但是,在 Github 的重定向之后,返回一个错误: net::ERR_CONNECTION_REFUSED

在这里附上我的代码(代码是用 react 编写的,但它不应该打扰你)-

连接成功后,我将触发一个函数以从网守那里获取令牌:

正如我之前所说,响应是: 响应错误

我该如何解决这个问题?很高兴得到任何帮助:)

反应社交登录: https ://www.npmjs.com/package/react-social-login

0 投票
2 回答
70 浏览

database - 我应该如何使用自己的身份验证系统存储 OAuth?

我有一个现有的注册/登录系统:用户输入电子邮件和密码。密码经过哈希处理。我将它存储在数据库中。

当用户登录时,他们会填写完整的电子邮件和密码。密码经过哈希处理,我在数据库中查找电子邮件并检查电子邮件是否匹配。如果是,则他们已登录。

我想添加一个系统让用户使用 3rd 方 OAuth 登录,例如 GitHub。我有那个设置,但我不确定要在我的数据库中存储哪些数据。

我在想我将他们的 GitHub 电子邮件作为电子邮件,然后使用他们 GitHub 的访问令牌作为密码(所以我会对其进行哈希处理并存储它。)

我认为这可行,但我担心访问令牌可能会改变,这意味着它们将被锁定在他们的帐户之外。

如果我不应该使用访问令牌作为密码,我应该使用什么?我需要将用户的电子邮件存储在我的数据库中,但目前需要密码,如果他们使用 GitHub 登录,我无法获得密码。

(请注意,当用户登录时,我会调用我的后端来生成一个访问令牌 (JWT),我可以使用它来要求他们的用户详细信息,然后将其存储在本地存储中。我希望然后能够做同样的事情与 GitHub 或其他什么有关。)