top
Loading...
5.8.7.5.SSLGRANT選項
5.8.7.5. SSL GRANT 選項

MySQL可以檢查X509證書的屬性和基于用戶名和密碼的通用鑒定方法。要想為MySQL賬戶指定SSL相關選項,使用GRANT語句的REQUIRE子句。參見13.5.1.3節,“GRANT和REVOKE語法”。

有多種可能來限制一個賬戶的連接類型:

·         如果賬戶沒有SSLX509需求,如果用戶名和密碼合法,允許未加密的連接。但是,如果客戶有正確的證書和密鑰文件,在客戶選項中可以使用加密連接。

·         REQUIRE SSL選項限制服務器只允許該賬戶的SSL加密連接。請注意如果有ACL記錄允許非SSL連接,該選項會被忽略。

·                  mysql> GRANT ALL PRIVILEGES ON test.* TO 'root'@'localhost'
·                     -> IDENTIFIED BY 'goodsecret' REQUIRE SSL;

·         REQUIRE X509表示客戶必須有合法證書但確切的證書、分發者和主體不重要。唯一的需求是應可以被某個CA認證機構驗證它的簽名。

·                mysql> GRANT ALL PRIVILEGES ON test.* TO 'root'@'localhost'
·                    -> IDENTIFIED BY 'goodsecret' REQUIRE X509;

·         REQUIRE ISSUER 'issuer'限制連接企圖,即客戶必須出示CA 'issuer'簽發的合法X509證書。如果客戶出示了一個合法證書,但是是由不同的分發者簽發,服務器拒絕連接。使用X509證書表示要加密,因此不需要SSL選項。

·                mysql> GRANT ALL PRIVILEGES ON test.* TO 'root'@'localhost'
·                    -> IDENTIFIED BY 'goodsecret'
·                    -> REQUIRE ISSUER '/C=FI/ST=Some-State/L=Helsinki/
·                       O=MySQL Finland AB/CN=Tonu Samuel/Email=tonu@example.com';

請注意ISSUER值應做為單一字符串輸入。

·         REQUIRE SUBJECT 'subject' 限制連接企圖,即客戶必須出示主題為'subject'的合法X509證書。如果客戶出示了一個合法證書,但是有不同的主題,服務器拒絕連接。

·                mysql> GRANT ALL PRIVILEGES ON test.* TO 'root'@'localhost'
·                    -> IDENTIFIED BY 'goodsecret'
·                    -> REQUIRE SUBJECT '/C=EE/ST=Some-State/L=Tallinn/
·                       O=MySQL demo client certificate/
       CN=Tonu Samuel/Email=tonu@example.com';

請注意SUBJECT值應做為單一字符串輸入。

·         REQUIRE CIPHER 'cipher'用來確保使用足夠強的密碼和密鑰長度。如果使用舊的短加密密鑰算法,SSL本身可能很弱。使用該選項,我們可以索取確切的加密方法來連接。

·                mysql> GRANT ALL PRIVILEGES ON test.* TO 'root'@'localhost'
·                    -> IDENTIFIED BY 'goodsecret'
    -> REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA';

REQUIRE子句中,可以結合使用SUBJECTISSUERCIPHER選項:

mysql> GRANT ALL PRIVILEGES ON test.* TO 'root'@'localhost'
    -> IDENTIFIED BY 'goodsecret'
    -> REQUIRE SUBJECT '/C=EE/ST=Some-State/L=Tallinn/
       O=MySQL demo client certificate/
       CN=Tonu Samuel/Email=tonu@example.com'
    -> AND ISSUER '/C=FI/ST=Some-State/L=Helsinki/
       O=MySQL Finland AB/CN=Tonu Samuel/Email=tonu@example.com'
    -> AND CIPHER 'EDH-RSA-DES-CBC3-SHA';

請注意SUBJECTISSUER值應做為單一字符串輸入。

MySQL 5.1,REQUIRE選項之間可以選用AND關鍵字。

選項的順序不重要,但任何選項不能用兩次。

作者:mysql.com
來源:http://dev.mysql.com/doc/refman/5.1/zh/database-administration.html
北斗有巢氏 有巢氏北斗