6.3.8.2 이전 기본 인증 플러그인
MySQL은 기본 인증 (즉, mysql.user
테이블의 Password
컬럼에 저장된 암호와 일치 인증)를 구현하는 2 개의 플러그인이 포함되어 있습니다. 이 섹션에서는 이전 (4.1 이전) 패스워드 해시 방식을 사용하여 mysql.user
테이블과 비교하는 인증이 구현 된 mysql_old_password
에 대해 설명합니다. 기본 암호 해시 방식을 사용한 인증이 구현 된 mysql_native_password
내용은 섹션 6.3.8.1 "기본 인증 플러그인" 을 참조하십시오. 이러한 암호 해시 방식은 섹션 6.1.2.4 "MySQL에서 암호 해시" 를 참조하십시오.
4.1 이전의 해시 방식을 사용한 암호는 기본 암호 해시 방식을 사용한 암호보다 안전하지 않습니다. 4.1 이전 암호는 사용되지 않으며, 이러한 지원은 향후 MySQL 릴리스에서 제거 될 예정입니다. 계정 업그레이드 지침은 섹션 6.3.8.3 "4.1 이전 암호 해시 방식과 mysql_old_password 플러그인에서 마이그레이션" 을 참조하십시오.
mysql_old_password
기본 인증 플러그인은 하위 호환성이 있습니다. MySQL 5.5.7 이전의 클라이언트는 인증 플러그인을 지원하지 않지만 기본 인증 프로토콜 사용됩니다. 따라서 MySQL 5.5.7 이상에서 서버에 연결할 수 있습니다.
다음 표에는 서버 측과 클라이언트 측의 플러그인 이름을 나타냅니다.
Table 6.9 MySQL Old Native Authentication Plugin
Server-side plugin name | mysql_old_password |
Client-side plugin name | mysql_old_password |
Library object file name | None (plugins are built in) |
플러그인은 클라이언트와 서버 모두의 형식으로 존재합니다.
서버 측의 플러그인은 서버에 내장되어 있기 때문에 명시 적으로로드 할 필요는없고, 언로드하고 비활성화 할 수 없습니다.
클라이언트 플러그인은 MySQL 5.5.7의 시점에서
libmysqlclient
클라이언트 라이브러리에 포함 된 해당 버전 이상에서libmysqlclient
에 링크 된 모든 프로그램에서 사용할 수 있습니다.MySQL 클라이언트 프로그램은
--default-auth
옵션을 사용하여mysql_old_password
플러그인을 명시 적으로 지정할 수 있습니다.shell>
mysql --default-auth=mysql_old_password ...
계정 행에 플러그인 이름이 지정되어 있지 않은 경우, Password
컬럼의 암호 해시 값을 기본 해시 방식과 4.1 이전의 오래된 해시 방식 중 어느 것을 사용되는지에 따라 서버는 mysql_native_password
과 mysql_old_password
중 하나의 플러그인을 사용하여 계정을 인증합니다. 클라이언트는 계정 행의 Password
컬럼의 암호와 일치해야합니다.
MySQL의 플러그 인증에 대한 일반적인 정보는 섹션 6.3.7 "플러그 인증" 을 참조하십시오.