MySQL 사용자에게 데이터베이스 생성 및 제한된 액세스 권한 부여
MySQL에서는 여러 사용자가 자신의 데이터베이스를 생성하는 동시에 자신이 만든 데이터베이스에만 액세스하도록 제한합니다. 기본적으로 사용자에게 "*" 데이터베이스에 대한 모든 권한을 부여하면 모든 데이터베이스에 대한 액세스가 허용되는데, 이는 특정 시나리오에서는 바람직하지 않을 수 있습니다.
해결책은 MySQL 권한 시스템을 활용하는 것입니다. 권한에 대한 세부적인 제어가 가능합니다. 핵심은 사용자에게 부여된 권한 범위를 제한하는 특정 패턴으로 GRANT 문을 사용하는 것입니다.
원하는 동작을 달성하려면 다음 명령을 사용해야 합니다.
GRANT ALL PRIVILEGES ON `testuser\_%` . * TO 'testuser'@'%';
이 GRANT 문은 이름이 'testuser_'로 시작하는 모든 데이터베이스에 대한 모든 권한(예: CREATE, SELECT, INSERT 등)을 'testuser' 사용자에게 부여합니다. 패턴 끝에 와일드카드 문자('%')를 지정하면 해당 패턴과 일치하는 모든 데이터베이스가 포함됩니다.
이 접근 방식을 사용하면 각 사용자가 이름으로 제한되는 자신만의 데이터베이스를 생성할 수 있습니다. 특정 접두사로 시작합니다. 다른 사용자가 만든 데이터베이스를 보거나 액세스할 수 없으며 규모와 보안이 모두 유지됩니다.
위 내용은 MySQL 사용자에게 데이터베이스 생성 및 제한된 액세스 권한을 부여하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!