1. 程式人生 > >http認證方式

http認證方式

在URL前加https://字首表明是用SSL加密的。 你的電腦與伺服器之間收發的資訊傳輸將更加安全。

Web伺服器啟用SSL需要獲得一個伺服器證書並將該證書與要使用SSL的伺服器繫結。
http和https使用的是完全不同的連線方式,用的埠也不一樣,前者是80,後者是443。http的連線很簡單,是無狀態的,...

HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網路協議
要比http協議安全

HTTP認證方式
HTTP請求報頭: Authorization HTTP響應報頭: WWW-Authenticate HTTP認證 基於 質詢 /迴應( challenge/response)的認證模式。 ◆ 基本認證 basic authentication
   ← HTTP1.0提出的認證方法     客戶端對於每一個realm,通過提供使用者名稱和密碼來進行認證的方式。     ※ 包含密碼的明文傳遞     基本認證步驟:      1. 客戶端訪問一個受http基本認證保護的資源。      2. 伺服器返回401狀態,要求客戶端提供使用者名稱和密碼進行認證。            401 Unauthorized            WWW-Authenticate: Basic realm="WallyWorld"      3. 客戶端將輸入的使用者名稱密碼用Base64進行編碼後,採用非加密的明文方式傳送給伺服器。            Authorization: Basic xxxxxxxxxx.      4. 如果認證成功,則返回相應的資源。如果認證失敗,則仍返回401狀態,要求重新進行認證。     特記事項:
     1. Http是無狀態的,同一個客戶端對同一個realm內資源的每一個訪問會被要求進行認證。      2. 客戶端通常會快取使用者名稱和密碼,並和authentication realm一起儲存,所以,一般不需要你重新輸入使用者名稱和密碼。      3. 以非加密的明文方式傳輸,雖然轉換成了不易被人直接識別的字串,但是無法防止使用者名稱密碼被惡意盜用。 ◆ 摘要認證 digest authentication   ← HTTP1.1提出的基本認證的替代方法     伺服器端以nonce進行質詢,客戶端以使用者名稱,密碼,nonce,HTTP方法,請求的URI等資訊為基礎產生的response資訊進行認證的方式。     ※ 不包含密碼的明文傳遞     摘要認證步驟:
     1. 客戶端訪問一個受http摘要認證保護的資源。      2. 伺服器返回401狀態以及nonce等資訊,要求客戶端進行認證。 HTTP/1.1 401 Unauthorized WWW-Authenticate: Digest realm="[email protected]", qop="auth,auth-int", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", opaque="5ccc069c403ebaf9f0171e9517f40e41"      3. 客戶端將以使用者名稱,密碼,nonce值,HTTP方法, 和被請求的URI為校驗值基礎而加密(預設為MD5演算法)的摘要資訊返回給伺服器。            認證必須的五個情報:      ・ realm : 響應中包含資訊      ・ nonce : 響應中包含資訊      ・ username : 使用者名稱      ・ digest-uri : 請求的URI      ・ response : 以上面四個資訊加上密碼資訊,使用MD5演算法得出的字串。 Authorization: Digest  username="Mufasa",  ← 客戶端已知資訊 realm="[email protected]",   ← 伺服器端質詢響應資訊 nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093",  ← 伺服器端質詢響應資訊 uri="/dir/index.html", ← 客戶端已知資訊 qop=auth,   ← 伺服器端質詢響應資訊 nc=00000001, ← 客戶端計算出的資訊 cnonce="0a4f113b", ← 客戶端計算出的客戶端nonce response="6629fae49393a05397450978507c4ef1", ← 最終的摘要資訊 ha3 opaque="5ccc069c403ebaf9f0171e9517f40e41"  ← 伺服器端質詢響應資訊      4. 如果認證成功,則返回相應的資源。如果認證失敗,則仍返回401狀態,要求重新進行認證。     特記事項:      1. 避免將密碼作為明文在網路上傳遞,相對提高了HTTP認證的安全性。      2. 當用戶為某個realm首次設定密碼時,伺服器儲存的是以使用者名稱,realm,密碼為基礎計算出的雜湊值(ha1),而非密碼本身。      3. 如果qop=auth-int,在計算ha2時,除了包括HTTP方法,URI路徑外,還包括請求實體主體,從而防止PUT和POST請求表示被人篡改。      4. 但是因為nonce本身可以被用來進行摘要認證,所以也無法確保認證後傳遞過來的資料的安全性。    ※ nonce:隨機字串,每次返回401響應的時候都會返回一個不同的nonce。     ※ nounce:隨機字串,每個請求都得到一個不同的nounce。        ※ MD5(Message Digest algorithm 5,資訊摘要演算法)          ① 使用者名稱:realm:密碼 ⇒ ha1          ② HTTP方法:URI ⇒ ha2          ③ ha1:nonce:nc:cnonce:qop:ha2 ⇒ ha3 ◆ WSSE(WS-Security)認證  ← 擴充套件HTTP認證    WSSE UsernameToken     伺服器端以nonce進行質詢,客戶端以使用者名稱,密碼,nonce,HTTP方法,請求的URI等資訊為基礎產生的response資訊進行認證的方式。     ※ 不包含密碼的明文傳遞     WSSE認證步驟:      1. 客戶端訪問一個受WSSE認證保護的資源。      2. 伺服器返回401狀態,要求客戶端進行認證。 HTTP/1.1 401 Unauthorized WWW-Authenticate: WSSE realm="[email protected]", profile="UsernameToken" ← 伺服器期望你用UsernameToken規則生成迴應 ※ UsernameToken規則:客戶端生成一個nonce,然後根據該nonce,密碼和當前日時來算出雜湊值。      3. 客戶端將生成一個nonce值,並以該nonce值,密碼,當前日時為基礎,算出雜湊值返回給伺服器。 Authorization: WSSE profile="UsernameToken" X-WSSE:UsernameToken username="Mufasa", PasswordDigest="Z2Y......", Nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", Created="2010-01-01T09:00:00Z"      4. 如果認證成功,則返回相應的資源。如果認證失敗,則仍返回401狀態,要求重新進行認證。     特記事項:      1. 避免將密碼作為明文在網路上傳遞。      2. 不需要在伺服器端作設定。      3. 伺服器端必須儲存密碼本身,否則無法進行身份驗證。

相關推薦

http認證方式

在URL前加https://字首表明是用SSL加密的。 你的電腦與伺服器之間收發的資訊傳輸將更加安全。Web伺服器啟用SSL需要獲得一個伺服器證書並將該證書與要使用SSL的伺服器繫結。http和https使用的是完全不同的連線方式,用的埠也不一樣,前者是80,後者是443。http的連線很簡單,是無狀態的,

api介面對於客戶端的身份認證方式以及安全措施 基於http協議的api介面對於客戶端的身份認證方式以及安全措施

轉載 基於http協議的api介面對於客戶端的身份認證方式以及安全措施  由於http是無狀態的,所以正常情況下在瀏覽器瀏覽網頁,伺服器都是通過訪問者的cookie(cookie中儲存的jsessionid)來辨別客戶端的身份的,當客戶端進行登入伺服器也會將登入資訊存放在伺服器並與客戶端的coo

使用者認證方式HTTP+HTTPS

1 mkdir /usr/local/maomao 2 echo this is maomao > /usr/local/maomao/index.html 3 vim /etc/httpd/conf.d/vhosts.conf <Directory /usr

http 方式請求pos請求和get請求,認證方式 使用者名稱密碼

利用apache包請求get和post請求,使用者名稱和密碼認證,使用者名稱密碼填則認證,不填測不認證 利用maven構建專案 需要匯入一個包   <dependency> <groupId>org.apache.httpcomponents&l

Http認證Http的四種認證方式

一、Http Basic Authentication 基本認證 將認證的資訊填寫到請求頭,參考部落格文章: 二、Http Digest Authentication Digest認證 以上這兩種認證方式都是一種無狀態的認證方式,就是不需要伺服器端

HTTP Basic Authentication認證方式和AFNetworking的header的設定

第一:什麼是 HTTP Basic Authentication?        HTTP Basic Authentication 是一種用來允許Web瀏覽器或其他客戶端程式在請求時提供以使用者名稱

HttpClient 三種 Http Basic Authentication 認證方式,你瞭解了嗎?

Http Basic 簡介 HTTP 提供一個用於許可權控制和認證的通用框架。最常用的 HTTP 認證方案是 HTTP Basic authentication。Http Basic 認證是一種用來允許網頁瀏覽器或其他客戶端程式在請求時提供使用者名稱和口令形式的身份憑證的一種登入驗證方式。 優點 基本認證的

js學習總結----ajax中的http請求方式及同步編程和異步編程

功能 依然 interval 需要 發送請求 console dom 屬於 相關 一、請求方式 var xhr = createXHR(); xhr.open("get","/getList?num=12",true); xhr.open("post","/getList

深入淺出:HTTP請求方式

網頁代碼 協議標準 通信速度 狀態碼 ie瀏覽器 實體 blog blank fff HTTP協議(HyperText Transfer Protocol,超文本傳輸協議),HTTP協議位於應用層,由請求和響應構成。是用於從WWW服務器傳輸超文本到本地瀏覽器的傳輸協議。在

SSH 協議原理、組成、認證方式和過程[轉]

mac 因特網 一起 針對 包含 通訊 系統 計算 orm https://www.jianshu.com/p/8e5b7aea52b5 概述 SSH是(Secure SHell protocol) 的簡寫,安全外殼協議(SSH)是一種在不安全網絡上提供安全遠程登錄及其

不同操作系統上屏蔽oracle的操作系統認證方式

sans may window port 修改 one services 1.0 pri windows系統上>如果不想用戶通過操作系統驗證方式登錄,可以修改 sqlnet.ora文件,把 SQLNET.AUTHENTICATION_SERVICES=NTS 前面加#

[2018-05-27]配置VSTS認證方式使用Personal Access Token

如何 使用 ice 控制面板 img pes pin windows系統 用戶 本文介紹下如何配置VSTS(visual studio team service,其實就是微軟SaaS版的TFS)通過Personal Access Token訪問其下的Git代碼庫。 問題

SIP 認證方式

wid border isp ges idt spl 之間 過程 一般來說 SIP認證是繼承了HTTP的認證方式。HTTP的認證方案主要有Basic Authentication Scheme和Digest Access Authentication Scheme兩

HTTP請求方式中8種請求方法

副作用 可用 獲取 其他 代理服 實現 mod 擴展 tp服務器 HTTP請求的方法: HTTP/1.1協議中共定義了八種方法(有時也叫“動作”),來表明Request-URL指定的資源不同的操作方式 HTTP1.0定義了三種請求方法: GET, POST 和 HEAD方法

接口認證方式:Bearer Token

開放 正文 獲得 ner sha 目前 通過 過期 hash散列算法 因為HTTP協議是開放的,可以任人調用。所以,如果接口不希望被隨意調用,就需要做訪問權限的控制,認證是好的用戶,才允許調用API。 目前主流的訪問權限控制/認證模式有以下幾種: 1),Bearer T

Jenkins - SSH認證方式拉取Git代碼

appium cimage fop rsa 2nf ica continue d+ same 1、本地生成密鑰 [root@root ~] ssh-keygen -t rsa Generating public/private rsa key pair. Enter fil

常用HTTP請求方式

狀態 獲取 align web服務器 發送 上傳文件 行處理 get請求 itl HTTP請求的方法: HTTP/1.1協議中共定義了八種方法(有時也叫“動作”), 來表明Request-URL指定的資源不同的操作方式 1、OPTIONS 返回服務器針對特定資源

[轉載] Nginx中使用htpasswd配置Http認證

·轉載· Nginx中使用htpasswd配置Http認證   轉載博主的版權申明: 版權宣告:本文為博主原創文章,轉載請註明出處。如有錯誤,歡迎大家批評指正。 https://blog.csdn.net/a_bang/article/details/72630578 為了

ssh兩種認證方式的原理介紹

SSH是一種加密的網路傳輸協議,可在不安全的網路中為網路服務提供安全的傳輸環境。SSH通過在網路中建立安全隧道來實現SSH客戶端與伺服器之間的連線。雖然任何網路服務都可以通過SSH實現安全傳輸,SSH最常見的用途是遠端登入系統,人們通常利用SSH來傳輸命令列介面和遠端執行命令。ssh 協議互

spring-security專案使用ldap認證方式

package com.case.config; import java.util.Arrays; import java.util.Collection; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.s