一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

OAuth2 單點(diǎn)登錄

 昵稱71011036 2020-08-10

簡介:OAuth(Open Authorization)是一個(gè)開放標(biāo)準(zhǔn),允許用戶授權(quán)第三方應(yīng)用訪問他們存儲(chǔ)在另外的服務(wù)提供者上的信息,而不需要將用戶名和密碼提供給第三方應(yīng)用。OAuth2是OAuth協(xié)議的延續(xù)版本,OAuth1已經(jīng)被廢棄,現(xiàn)在OAuth2是用于授權(quán)的行業(yè)標(biāo)準(zhǔn)協(xié)議。

1. 四個(gè)角色

  A. 客戶端(client):本身不存儲(chǔ)資源,需要通過資源擁有者的授權(quán)去請求資源服務(wù)器的資源,比如瀏覽器或內(nèi)部服務(wù);

  B. 資源擁有者(Resource Owner):通常為用戶,也可以是應(yīng)用程序,他有訪問資源的賬號(hào)和秘鑰;

  C. 認(rèn)證服務(wù)器(Authorization Server):用于服務(wù)提供商對資源擁有的身份進(jìn)行認(rèn)證、對訪問資源進(jìn)行授權(quán),認(rèn)證成功后會(huì)給客戶端發(fā)放令牌access_token,作為客戶端訪問資源服務(wù)器的憑據(jù);

  D. 資源服務(wù)器(Resource  Server):擁有受保護(hù)的資源,如果請求包含正確的令牌,那就可以訪問資源,比如提供客戶端API的服務(wù)。

  注意:服務(wù)提供商給接入方的身份憑據(jù)是:client_id(客戶端標(biāo)識(shí)) + client_secret(客戶端秘鑰),用于不能隨便一個(gè)請求就能認(rèn)證授權(quán)。

2. 運(yùn)行流程

  A. 客戶端請求第三方授權(quán);

  B. 資源擁有者同意給客戶端授權(quán);

  C. 客戶端獲取到授權(quán)碼,請求認(rèn)證服務(wù)器申請令牌;

  D. 認(rèn)證服務(wù)器認(rèn)證授權(quán)碼無誤,同意向客戶端發(fā)放令牌;

  E. 客戶端使用令牌請求資源服務(wù)器的資源;

  F. 資源服務(wù)器認(rèn)證令牌無誤,同意開放受保護(hù)的資源。

3. 授權(quán)模式

  A. 授權(quán)碼模式(Authorization Code)

    流程:

      第一步:用戶訪問客戶端,將會(huì)跳轉(zhuǎn)到授權(quán)服務(wù)器;

      第二步:用戶給予是否給客戶端授權(quán);

      第三步:若授權(quán)的話,授權(quán)服務(wù)器將跳轉(zhuǎn)到客戶端指定的URI,并同時(shí)提供授權(quán)碼;

      第四步:客戶端收到授權(quán)碼,通過返回的URI,向認(rèn)證服務(wù)器申請令牌;

      第五步:認(rèn)證服務(wù)器比對授權(quán)碼和重定向URI,認(rèn)證無誤后,向客戶端發(fā)送訪問令牌和更新令牌。

    使用場景:該模式是OAuth2最安全最完善的一種模式,可以實(shí)現(xiàn)服務(wù)之間的調(diào)用,比如微信,QQ等第三方登錄。

  B. 密碼模式(Resource Owner Password Credentials)

    流程:

      第一步:將用戶名和密碼提供給客戶端;

      第二步:客戶端攜帶用戶名和密碼發(fā)送給認(rèn)證服務(wù)器申請令牌;

      第三步:認(rèn)證服務(wù)器認(rèn)證無誤,向客戶端提供訪問令牌。

    使用場景:客戶端不得存儲(chǔ)密碼,通常用在用戶對客戶端高度信任情況下。

  C. 簡化模式(Implicit)

 

  D. 客戶端模式(Client Credentials)

    流程:

      第一步:客戶端(服務(wù),非用戶)向認(rèn)證服務(wù)器進(jìn)行身份驗(yàn)證,申請令牌;

      第二部:認(rèn)證服務(wù)器認(rèn)證無誤,向客戶端提供訪問令牌。

    使用場景:A服務(wù)本身需要B服務(wù)資源,與用戶無關(guān)。

4. sql語句

-- used in tests that use HSQL
create table oauth_client_details (
  client_id VARCHAR(256) PRIMARY KEY,
  resource_ids VARCHAR(256),
  client_secret VARCHAR(256),
  scope VARCHAR(256),
  authorized_grant_types VARCHAR(256),
  web_server_redirect_uri VARCHAR(256),
  authorities VARCHAR(256),
  access_token_validity INTEGER,
  refresh_token_validity INTEGER,
  additional_information VARCHAR(4096),
  autoapprove VARCHAR(256)
);

create table oauth_client_token (
  token_id VARCHAR(256),
  token LONGVARBINARY,
  authentication_id VARCHAR(256) PRIMARY KEY,
  user_name VARCHAR(256),
  client_id VARCHAR(256)
);

create table oauth_access_token (
  token_id VARCHAR(256),
  token LONGVARBINARY,
  authentication_id VARCHAR(256) PRIMARY KEY,
  user_name VARCHAR(256),
  client_id VARCHAR(256),
  authentication LONGVARBINARY,
  refresh_token VARCHAR(256)
);

create table oauth_refresh_token (
  token_id VARCHAR(256),
  token LONGVARBINARY,
  authentication LONGVARBINARY
);

create table oauth_code (
  code VARCHAR(256), authentication LONGVARBINARY
);

create table oauth_approvals (
    userId VARCHAR(256),
    clientId VARCHAR(256),
    scope VARCHAR(256),
    status VARCHAR(10),
    expiresAt TIMESTAMP,
    lastModifiedAt TIMESTAMP
);


-- customized oauth_client_details table
create table ClientDetails (
  appId VARCHAR(256) PRIMARY KEY,
  resourceIds VARCHAR(256),
  appSecret VARCHAR(256),
  scope VARCHAR(256),
  grantTypes VARCHAR(256),
  redirectUrl VARCHAR(256),
  authorities VARCHAR(256),
  access_token_validity INTEGER,
  refresh_token_validity INTEGER,
  additionalInformation VARCHAR(4096),
  autoApproveScopes VARCHAR(256)
);

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    高潮少妇高潮久久精品99| 亚洲男女性生活免费视频| 国产一区二区三区免费福利| 老司机精品线观看86| 一区二区三区日本高清| 日本一区二区三区久久娇喘| 日韩夫妻午夜性生活视频| 国产精品一区二区丝袜| 国产高清三级视频在线观看| 亚洲专区一区中文字幕| 微拍一区二区三区福利| 99国产成人免费一区二区| 男女午夜在线免费观看视频 | 亚洲午夜福利视频在线| 久久精品国产99国产免费| 黄片免费在线观看日韩| 久久热这里只有精品视频| 污污黄黄的成年亚洲毛片| 亚洲色图欧美另类人妻| 久久99青青精品免费| 久久精品蜜桃一区二区av| 免费黄色一区二区三区| 人人妻人人澡人人夜夜| 欧美区一区二区在线观看| 亚洲黄香蕉视频免费看| 福利在线午夜绝顶三级| 国产亚洲欧美自拍中文自拍| 熟女一区二区三区国产| 国产成人人人97超碰熟女| 中文字幕一区久久综合| 欧美91精品国产自产| 国产精品一区日韩欧美| 成年人免费看国产视频| 黑鬼糟蹋少妇资源在线观看| 伊人网免费在线观看高清版| 欧美偷拍一区二区三区四区| 亚洲熟女国产熟女二区三区| 亚洲中文字幕免费人妻| 亚洲一级在线免费观看| 最近最新中文字幕免费| 日韩不卡一区二区在线|