Navicat 部落格

2018 年 6 月 5 日,由 Robert Gravelle 撰寫

第 2 部分:建立新使用者

第 1 部分中,我們學習了如何使用 Navicat Premium 使用者管理工具保護 MySQL 的 root 帳號。本篇文章將集中介紹如何設定新使用者的帳號詳細資料、帳號限制和 SSL 設定。

「一般」索引標籤

按一下物件工具列上的「新增使用者」按鈕將開啟未命名的使用者索引標籤。它包含五個索引標籤,分別為「一般」、「進階」、「伺服器權限」、「權限」和「SQL 預覽」。我們已在第 1 部分中介紹了「一般」索引標籤,但我們會在此快速回顧一下。在「一般」索引標籤上,我們需要提供:

  • 使用者名稱」。
  • 主機」。
  • 加密「插件」。從下拉式清單中選擇「mysql_native_password」或「sha256_password」。
  • 密碼」。
  • 密碼過期原則」。

設定密碼原則

MySQL 允許資料庫管理員手動設定帳號密碼過期,並使用 MySQL 的 mysql_native_password 或 sha256_password 內建驗證插件建立自動密碼過期的原則。

Navicat 透過下拉式清單提供幾個選項,撮要了使用 PASSWORD EXPIRE 語句設定密碼到期的常用 MySQL 機制。他們是:

  • DEFAULT:將密碼到期時間長度設定為資料庫的預設值。在版本 5.7.11 之前,預設值為 360 天。從版本 5.7.11 開始,預設值為 0 天,這能有效地停用自動密碼到期。
  • IMMEDIATE:使帳號密碼過期,從而強制使用者更新它。
  • INTERVAL:指定目前密碼到期的天數。
  • NEVER:允許目前密碼無限期保持有效狀態。對指令碼和其他自動化程序是很有用的。

這是一個例子:

「進階」索引標籤

你可以在此處找到帳號限制和 SSL 的設定。

帳號限制

MySQL 允許限制個人帳號使用各種伺服器資源,以避免任何一個使用者獨占資源。限制包括:

  • 一個帳號每小時可以發出的查詢數目。
  • 一個帳號每小時可以發出的更新數目。
  • 一個帳號每小時可連線到伺服器的數目。
  • 一個帳號可連線到伺服器的總數。

這些等同於「進階」索引標籤中的欄位:「每小時最大查詢數目」、「每小時最大更新數目」、「每小時最大連線數目」和「最大使用者連線數目」。這些欄位每一個都接受零(0)或正整數的值。

SSL 設定

要使用加密連線,系統中必須有 OpenSSL 或 yaSSL。此外,MySQL 伺服器需要使用 TLS 支援構建,並正確設定為使用 OpenSSL 或 yaSSL 的其中一個。請注意,術語 SSL,指的是在 TLS 之前的現在不安全的舊通訊協定。儘管 MySQL 僅使用其更安全(TLS)的後繼通訊協定,但出於相容性原因仍在許多變數名稱和選項中使用。

SSL 類型」下拉式欄位對應 mysql.user 資料表的 ssl_type 欄,該欄僅接受某些值:ANY、SPECIFIED 和 X509(以及 '' 表示 NONE)。

此外,MySQL GRANT 語句還接受 ISSUER、SUBJECT 和 CIPHER 選項。這些選項可以按任何順序組合在一起,而且如果你使用它們其中一個,則 REQUIRE X509 是隱含的。

這是一個 GRANT 語句,接下來是對應的 Navicat「進階」索引標籤:

GRANT USAGE ON *.* TO 'bob_s'@'localhost'
    REQUIRE SUBJECT '/CN=www.mydom.com/O=My Dom, Inc./C=US/ST=Oregon/L=Portland'
    AND ISSUER '/C=FI/ST=Somewhere/L=City/ O=Some Company/CN=Peter Parker/emailAddress=Email住址會使用灌水程式保護機制。你需要啟動Javascript才能觀看它'
    AND CIPHER 'SHA-DES-CBC3-EDH-RSA';

預告

在第 3 部分中,我們將繼續討論最後三個使用者索引標籤。

Navicat 文章
頻道記錄
分享
部落格封存檔