zoukankan      html  css  js  c++  java
  • OAuth2.0服务器端的实现

    authorize 授权关系存储表
    字段 备注
    appid 应用ID
    userid 用户ID
    addtime 添加时间
    …… 其他
    表3 access_token 访问令牌存储表
    字段 备注
    access_token 访问令牌
    addtime 添加时间
    …… 其他

    一个OAuth2.0服务器端的实现
    全部代码见附件.

    数据库是这样的:
    (没有必要用数据库,access_token是临时的,放在内存中就可以了)
    create database auth;
    use auth;

    create table access_token ( 
    id bigint,
    access_token varchar(255) NOT NULL,
    token_type varchar(255),
    expires varchar(255),
    refresh_token varchar(255),
    username varchar(255),
    client_id varchar(255),
    createdtime datetime,
    modifiedtime datetime
    );

    create table user ( 
    uid bigint,
    username varchar(255) NOT NULL,
    password varchar(255) NOT NULL
    );

    create table client (
    id bigint,
    client_id varchar(255) NOT NULL, 
    client_secret varchar(255) 
    );


    OAuth2.0协议主要是用access_token代替密码.
    授权服务器保管用户密码并向第三方应用发放access_token,第三方应用接触不到用户
    的密码.
    资源服务器保管需要授权才能访问的资源(其实就是服务器提供的API),第三方应用凭
    access_token访问资源服务器.(资源服务器还要问一下授权服务器这个access_token是
    不是真的)

    授权服务器做两件事:
    1. 发放access_token的servlet
    2. 向资源服务器提供一个验证access_token真伪的WebService

  • 相关阅读:
    checkbox的checked事件的javascript使用方法
    JSTL标签API(c)的使用
    radios控件的使用
    验证方法判斷input是否为空
    软件课设Day5
    软件课设Day4
    软件课设Day3
    软件课设Day2
    软件课设Day1
    2019/08/23最新进展
  • 原文地址:https://www.cnblogs.com/fx2008/p/3282774.html
Copyright © 2011-2022 走看看