0%

GitHub的OAuth App的使用

Github的App有两种,一种是普通的App,一般用以制作自动化机器人,另一种是利用用户登录的App,它可以操作登录用户的Github里面的API定义的操作,包括:用户信息获取,仓库信息修改,用户信息修改,等等。

OAuth2的定义

OAuth(开放授权)是一个开放标准,允许用户授权第三方移动应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享他们数据的所有内容,OAuth2.0 是 OAuth 协议的延续版本,但不向后兼容 OAuth 1.0,即完全废止了 OAuth1.0。

Github OAuth App

通过 OAuth2 协议可以让外部应用不用输入用户密码的情况下获取 GitHub 帐号的隐私信息,在 OAuth App 下的应用使用 GitHub 作为唯一标识。比起传统的简单认证方式来说,这种方式的认证具有更大的优势,因为对于token来说,它限制了数据类型,同时token也可以被用户随时撤销。

一个 OAuth App 运行起来就像一个已认证的用户,OAuth App 适合创建复杂的流程,而 OAuth App 通常是被部署到某个站点下面,在认证中会重定向到这个站点并附加一些参数,用于验证流程进行一些复杂的操作。

关于 Github OAuth App 的更多介绍可以查看这里

Github上创建 OAuth App

创建 Github App 很简单,只需要等陆 Github,在设置里面进行,它允许创建 Github App 和 Github OAuth App,这里我们创建的是 Github OAuth App。

登陆个人设置页面创建 App

在个人设置的左侧的导航栏的下方,有一个 Developer settings 的选项。

settings

在下一步中,我们创建了一个 OAuth App,并给它起名 blogchat

oa_app

创建完 OAuth App 后,我们可以查看它的一些必要信息,比如:Client IDClient secrets,等等。

还可以在其中对 App 进行一些信息的修改,例如:logo图片。

oa_app_cb1

在 App 的设置页面里面有很多的项目设定,其中有两项比较重要的设定,一个是 App 的主页的 URL,还有一个是认证的重定向回调 URL。

oa_app_cb2

重定向回调URL用于在认证的时候传入 codecode 是用于后续的向 Github 获取 access_token 而需要的

在个人设置里面,对于 OAuth App 的设置到这里基本完成了,我们需要使用工具对 App 进行测试调通,如果可行的话,那么就说明我们的 App 是没有问题的,进而才可以进行后续的开发。

使用 Postman 进行调通测试

pm1
pm2
pm3

欢迎关注我的其它发布渠道