📣

TiDB Cloud Serverless が
Starter
に変わりました!このページは自動翻訳されたものです。
原文はこちらからご覧ください。

GRANT <privileges>

この文は、TiDB内の既存のユーザーに権限を割り当てます。TiDBの権限システムはMySQLに準拠しており、資格情報はデータベース/テーブルパターンに基づいて割り当てられます。この文を実行するには、 GRANT OPTION権限と割り当てたすべての権限が必要です。

概要

GrantStmt
GRANTPrivElemListONObjectTypePrivLevelTOUserSpecListRequireClauseOptWithGrantOptionOpt
PrivElemList
PrivElem,
PrivElem
PrivType(ColumnNameList)
PrivType
ALLPRIVILEGESALTERROUTINECREATEUSERTEMPORARYTABLESVIEWROLEROUTINETRIGGERDELETEDROPROLEPROCESSEXECUTEINDEXINSERTSELECTSUPERSHOWDATABASESVIEWUPDATEGRANTOPTIONREFERENCESREPLICATIONSLAVECLIENTUSAGERELOADFILECONFIGLOCKTABLESEVENTSHUTDOWN
ObjectType
TABLE
PrivLevel
*.*Identifier.*Identifier
UserSpecList
UserSpec,
RequireClauseOpt
REQUIRENONESSLX509RequireListElementAND
RequireListElement
ISSUERIssuerSUBJECTSubjectCIPHERCipherSANSANTOKEN_ISSUERTokenIssuer

mysql> CREATE USER 'newuser' IDENTIFIED BY 'mypassword'; Query OK, 1 row affected (0.02 sec) mysql> GRANT ALL ON test.* TO 'newuser'; Query OK, 0 rows affected (0.03 sec) mysql> SHOW GRANTS FOR 'newuser'; +-------------------------------------------------+ | Grants for newuser@% | +-------------------------------------------------+ | GRANT USAGE ON *.* TO 'newuser'@'%' | | GRANT ALL PRIVILEGES ON test.* TO 'newuser'@'%' | +-------------------------------------------------+ 2 rows in set (0.00 sec)

MySQLの互換性

  • MySQL と同様に、 USAGE権限は TiDBサーバーにログインする機能を示します。
  • カラムレベルの権限は現在サポートされていません。
  • MySQLと同様に、 NO_AUTO_CREATE_USER SQLモードが存在しない場合、 GRANTステートメントは、ユーザーが存在しない場合に空のパスワードを持つ新しいユーザーを自動的に作成します。このSQLモードを削除すると(デフォルトで有効になっています)、セキュリティリスクが生じます。
  • TiDBでは、 GRANT <privileges>文が正常に実行されると、その実行結果が現在の接続に直ちに反映されます。一方、 MySQLでは、一部の権限では、実行結果は後続の接続にのみ反映されます。文については、詳細はTiDB #39356参照してください。

参照

このページは役に立ちましたか?