MySQL データベースアクセスチャレンジ

MySQLMySQLBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

ある小規模企業は、新しいマーケティングチームに対してデータベースアクセスを設定する必要があります。データベース管理者として、マーケティングチームが顧客データを閲覧および分析できるが、修正はできない新しいユーザーアカウントを作成する必要があります。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL sql(("SQL")) -.-> sql/DatabaseManagementandOptimizationGroup(["Database Management and Optimization"]) mysql(("MySQL")) -.-> mysql/BasicKeywordsandStatementsGroup(["Basic Keywords and Statements"]) mysql(("MySQL")) -.-> mysql/DatabaseFunctionsandDataTypesGroup(["Database Functions and Data Types"]) mysql(("MySQL")) -.-> mysql/TransactionManagementandSecurityGroup(["Transaction Management and Security"]) mysql/BasicKeywordsandStatementsGroup -.-> mysql/use_database("Database Selection") mysql/DatabaseFunctionsandDataTypesGroup -.-> mysql/user("User Info Function") mysql/TransactionManagementandSecurityGroup -.-> mysql/identified_by("User Authentication") mysql/TransactionManagementandSecurityGroup -.-> mysql/grant_permission("Permission Granting") mysql/TransactionManagementandSecurityGroup -.-> mysql/revoke_permission("Permission Revocation") sql/DatabaseManagementandOptimizationGroup -.-> sql/security_permissions("Security and Permissions") subgraph Lab Skills mysql/use_database -.-> lab-418300{{"MySQL データベースアクセスチャレンジ"}} mysql/user -.-> lab-418300{{"MySQL データベースアクセスチャレンジ"}} mysql/identified_by -.-> lab-418300{{"MySQL データベースアクセスチャレンジ"}} mysql/grant_permission -.-> lab-418300{{"MySQL データベースアクセスチャレンジ"}} mysql/revoke_permission -.-> lab-418300{{"MySQL データベースアクセスチャレンジ"}} sql/security_permissions -.-> lab-418300{{"MySQL データベースアクセスチャレンジ"}} end

マーケティングアナリスト用アクセスの作成

タスク

  • root ユーザーとして MySQL に接続する
  • localhost からのみ接続できる marketing_analyst という名前の新しいユーザーを作成する
  • このユーザーに、marketing_db データベース内のすべてのテーブルからデータを閲覧する (SELECT) 権限を付与する
  • ユーザーに安全なパスワードを設定する

要件

  • すべての操作は ~/project ディレクトリ内で実行する必要がある
  • ユーザー名は正確に marketing_analyst でなければならない
  • ユーザーは localhost からのみ接続できる必要がある
  • ユーザーは marketing_db に対して SELECT 権限のみを持つ必要がある
  • パスワードは少なくとも 8 文字以上でなければならない

ユーザーを正しく設定した後、その権限を確認すると、次のような出力が表示されます。

SHOW GRANTS FOR 'marketing_analyst'@'localhost';
+--------------------------------------------------------------------------------------------------------------------------+
| Grants for marketing_analyst@localhost                                                                                   |
+--------------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `marketing_analyst`@`localhost` IDENTIFIED BY PASSWORD '*63CC12793CD9D5CB64C4FED01CC3D4DE25848489' |
| GRANT SELECT ON `marketing_db`.* TO `marketing_analyst`@`localhost`                                                      |
+--------------------------------------------------------------------------------------------------------------------------+
✨ 解答を確認して練習

まとめ

このチャレンジでは、特定のアクセス制限を持つ MySQL ユーザーを作成する練習を行いました。実証されたスキルには、ユーザーアカウントの作成、接続制限の設定、およびデータベースレベルでの適切な権限の付与が含まれます。これらの基本的なセキュリティ対策は、データベースシステムにおける適切なアクセス制御を維持するために不可欠です。