Open开发平台,认证,授权,计费

1.申请appid和appkey
http://wiki.connect.qq.com/%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C_oauth2-0

appid:应用的唯一标识。在OAuth2.0认证过程中,appid的值即为oauth_consumer_key的值。
appkey:appid对应的密钥,访问用户资源时用来验证应用的合法性。在OAuth2.0认证过程中,appkey的值即为oauth_consumer_secret的值。

注意:申请appid时,登录的开发账号将与申请到的appid绑定,后续维护均需要使用该号码。
注意: 对appid和appkey信息进行保密,不要随意泄漏。

2. 获取Authorization Code(即server-side模式,又称Web Server Flow)
http://wiki.connect.qq.com/%E4%BD%BF%E7%94%A8authorization_code%E8%8E%B7%E5%8F%96access_token

注意:此code会在10分钟内过期

3. 通过Authorization Code获取Access Token
http://wiki.connect.qq.com/%E4%BD%BF%E7%94%A8authorization_code%E8%8E%B7%E5%8F%96access_token
注意:Access_Token的有效期默认是3个月,过期后需要用户重新授权才能获得新的Access_Token。可手动续期

4.移动端应用,无server时,可以直接获得AccessToken(即client-side模式,又称User-Agent Flow)
http://wiki.connect.qq.com/%E4%BD%BF%E7%94%A8implicit_grant%E6%96%B9%E5%BC%8F%E8%8E%B7%E5%8F%96access_token


5.根据access_token获得对应用户身份的openid
http://wiki.connect.qq.com/%E8%8E%B7%E5%8F%96%E7%94%A8%E6%88%B7openid_oauth2-0

6.调用OpenAPI获取和修改资源
http://wiki.connect.qq.com/openapi%E8%B0%83%E7%94%A8%E8%AF%B4%E6%98%8E_oauth2-0

7.绑定账号

http://wiki.open.qq.com/wiki/website/%E5%B8%90%E5%8F%B7%E7%BB%91%E5%AE%9A

8.大众用户登录平台后,使用第三方开发商应用时,第三方调用户的API或系统API
CanvasURL也称之为应用开发地址,当登录用户从腾讯平台(朋友/QQ空间/微博等)进入应用时,平台会调用应用的CanvasURL并在CanvasURL后带上OpenID及OpenKey等参
http://wiki.open.qq.com/wiki/%E6%A6%82%E5%BF%B5%E5%92%8C%E6%9C%AF%E8%AF%AD#1.1_AppID
http://wiki.open.qq.com/wiki/%E5%BA%94%E7%94%A8%E7%AE%A1%E7%90%86#2._.E6.9F.A5.E7.9C.8B.E5.BA.94.E7.94.A8.E5.B1.9E.E6.80.A7
http://wiki.open.qq.com/wiki/API3.0%E6%96%87%E6%A1%A3
http://wiki.open.qq.com/wiki/API%E5%88%97%E8%A1%A8

应用场景
第三方应用开发商 调用 平台接口时--如何判断调用是否合法:
进行 1 2 3 或者 1 4 根据 Access Token 与权限的对应关系(可能是2,4申请,然后用户授予,如QQ,也可以是 和开发者账号绑定,平台授予的,如微信)

第三方应用开发商 调用 获取平台大众用户信息的接口,---如何安全的让用户授权给第三方开发商
进行 1 2 3 5 6 或者 1 4 5 6 根据appid 和 openid 确认双方身份 Access Token 判断权限对应关系

大众用户登录平台后,使用第三方开发商的API或应用
进行 8 根据 第三方openid openkey 实现 认证和授权调用用户的API(私有API,临时授权), 第三方根据 appid 和 appkey调用平台的API(公开API,一直授权)

平台上的第三方应用开发商 只平台上租用 接口API后 --如何安全调用
进行1,给第三方应用开发商 颁发 appid appkey 用于识别
进行(2和3) 或 4 ,返回Access Token前,判断,用户正常则返回
通过Access Token,申请 该API的apiid(接口标识) apikey 附加后即可,判断租用关系正常,无欠费,则返回
当后台发生欠费,关停事件时,直接注销apikey ,则即无法访问

原文地址:https://www.cnblogs.com/xuybin/p/4409113.html