Apache HTTP Server Version 2.2
아파치 모듈 mod_authz_dbm
설명: | DBM 파일을 사용한 그룹 인증 |
---|---|
상태: | Extension |
모듈명: | authz_dbm_module |
소스파일: | mod_authz_dbm.c |
지원: | 아파치 2.1 이후부터 |
요약
이 모듈은 인증한 사용자의 그룹권한으로 웹의 일부를 접근할
수 있는지 결정하여 권한부여를 한다.
mod_authz_groupfile
과 기능이 비슷하다.
AuthDBMGroupFile 지시어
설명: | 인증에 사용할 사용자 그룹 목록을 저장하는 데이터베이스 파일명을 지정한다 |
---|---|
문법: | AuthDBMGroupFile file-path |
사용장소: | directory, .htaccess |
Override 옵션: | AuthConfig |
상태: | Extension |
모듈: | mod_authz_dbm |
AuthDBMGroupFile
지시어는 인증에
사용할 사용자 그룹 목록을 저장하는 DBM 파일명을 지정한다.
File-path는 파일의 절대경로이다.
파일은 사용자명을 키로 사용한다. 사용자에 대한 값은 쉼표로 구분한 사용자가 속한 그룹 목록이다. 값에 공백이나 콜론을 사용할 수 없다.
보안
AuthDBMGroupFile
이 웹서버의
문서들 밖에 위치함을 확인하라. 이 파일을 보호할 디렉토리
안에 같이 두지 마라. 그렇지 않으면, 클라이언트가
AuthDBMGroupFile
를 다운로드할 수
있다.
그룹 DBM 파일과 암호 DBM 파일을 같이 사용하기: 사용자에 대한 암호와 그룹 정보 모두를 한 데이터베이스에서 관리하는 것이 쉬울때가 있다. 이 경우 작성할 지원 프로그램이 간단해진다. 프로그램은 한 DBM 파일만을 잠그고 쓰면 된다. 그룹파일과 암호파일을 같은 DBM파일로 설정하면 가능하다:
AuthDBMGroupFile /www/userbase
AuthDBMUserFile /www/userbase
이 통합 DBM의 키는 사용자명이다. 값은 다음과 같다
인코딩된 암호 : 그룹 목록 [ : (무시) ]
암호 부분은 전과 같이 인코딩된 암호이다. 콜론 뒤에 쉼표로 구분한 그룹 목록이 나온다. 또 다시 콜론 다음에 다른 정보를 기록할 수 있다. 이 부분은 인증모듈이 무시한다. www.telescope.org는 이렇게 암호 데이터베이스와 그룹 데이터베이스를 같이 사용한다.
AuthzDBMAuthoritative 지시어
설명: | 권한부여를 저수준 모듈로 넘겨줄지 여부 |
---|---|
문법: | AuthzDBMAuthoritative On|Off |
기본값: | AuthzDBMAuthoritative On |
사용장소: | directory, .htaccess |
Override 옵션: | AuthConfig |
상태: | Extension |
모듈: | mod_authz_dbm |
AuthzDBMAuthoritative
지시어를
직접 Off
로 설정하면 해당 사용자 아이디에 대한
그룹이 없는 경우 그룹 권한부여를 (modules.c
파일에서 정의한) 저수준 모듈로 넘겨준다. 지정한 그룹이 있다면
보통때와 같이 검사하고, 실패하면 인증 필요 응답을 한다.
그래서 여러 모듈의 데이터베이스에 사용자 아이디가 있거나
유효한 Require
지시어를
여러 모듈에 적용하면, 첫번째 모듈이 사용자를 검사하고,
AuthAuthoritative
설정과 관계없이
접근을 넘기지않는다.
일반적으로 mod_authn_dbm
이나
mod_authn_file
과 같은 인증제공자와 같이
사용한다. 대량의 사용자 검사에 대한 검사는 DBM 모듈을
사용하지만, 소수(관리자)에 대한 검사는 잘 보호된
.htpasswd
파일로 넘긴다.
기본적으로 제어를 넘기지않고, 모르는 그룹의 경우 인증 필요 응답을 한다. 이 지시어를 설정하지않으면 시스템이 안전하게 유지되며, NCSA 웹서버와 같이 동작한다.
보안
사용자가 자신의 .htaccess 파일을 사용하게 되는지 살펴보고,
이런 행동을 허용할지 결정하라. 일반적으로 여러가지 방법으로
접근할 수 있는 데이터베이스를 보호하는 것보다 하나의
.htpasswd
파일을 보호하는 것이 더 쉽다.
AuthzDBMType 지시어
설명: | 암호를 저장하는 데이터베이스 파일 종류를 지정한다 |
---|---|
문법: | AuthzDBMType default|SDBM|GDBM|NDBM|DB |
기본값: | AuthzDBMType default |
사용장소: | directory, .htaccess |
Override 옵션: | AuthConfig |
상태: | Extension |
모듈: | mod_authz_dbm |
암호를 저장하는 데이터베이스 파일 종류를 지정한다. 데이터베이스 종류 기본값은 컴파일때 정해진다. 사용할 수 있는 다른 데이터베이스 파일 종류도 컴파일 설정에 달렸다.
암호파일을 만든 프로그램이 같은 종류의 데이터베이스를 사용하도록 설정해야 한다.