내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
무료 클라우드 서버, Sanfeng Cloud, 사용자 권한 프로세스 디버깅.
Windows에서 icacls 명령은 파일 및 디렉터리에 대한 권한을 수정하는 매우 강력한 도구입니다. 그러나 Windows 기본 웹 서버(예: IIS)는 일반적으로 IUSR, IWAM_ 및 컴퓨터 이름과 같은 특정 사용자 계정으로 실행되거나 최신 버전의 Windows에서는 응용 프로그램 풀 구성 사용자 지정 사용자 계정을 통해 실행됩니다. . Apache는 일반적으로 Windows에 사전 설치되어 제공되지 않지만 설치하면 (아마도 서비스 계정과 같은 패키지를 통해 실행될 수 있습니다.)
Apache는 Windows에서 apache라는 사용자 계정을 기본적으로 사용하지 않으므로 먼저 Apache가 실제로 어떤 사용자로 실행되고 있는지 확인해야 합니다. 이는 일반적으로 Apache 서비스 속성에서 찾을 수 있습니다(서비스 관리자에서 Apache 서비스를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택한 다음 로그인 탭 확인).
Apache 서비스가 실행되는 계정(여기에서는 이를 호출함)을 식별하고 icacls 명령을 사용하여 해당 계정에 특정 파일 또는 디렉터리에 대한 액세스 권한을 부여하려는 경우 다음 단계를 수행할 수 있습니다.
명령 프롬프트를 엽니다(관리자 권한으로).
icacls 명령을 사용하여 권한을 부여합니다. C:pathtoyourdatabasefiles 디렉터리에 대한 읽기 권한을 부여하려는 경우 다음 명령을 사용할 수 있습니다.
cmd
icacls “C:데이터베이스 파일 경로” /grant “”:R
여기서 /grant 매개변수는 권한을 부여하는 데 사용되며, ""는 Apache 서비스의 실행 계정 이름(실제 계정 이름으로 바꾸십시오), :R은 읽기 권한을 나타냅니다.
하위 디렉터리와 파일에도 동일한 권한을 부여하려면 /T 매개변수를 추가하면 됩니다(디렉터리 트리의 모든 파일과 디렉터리를 재귀적으로 처리함을 의미함).
cmd
icacls “C:데이터베이스 파일 경로” /grant “”:R /T
계정이 디렉터리 트리를 통과할 수 있도록 하려면(특정 디렉터리에 대한 액세스 권한이 명시적으로 부여되지 않은 경우에도) /I(상속) 옵션을 추가하는 것을 고려할 수도 있지만 일반적으로 이는 필요하지 않습니다. /grant 상속은 이미 암시적으로 처리되었습니다. 그러나 권한이 상속 가능으로 명시적으로 설정되었는지 확인하려면 다음을 수행할 수 있습니다.
cmd
icacls “C:데이터베이스 파일 경로” /grant “”:(OI)(CI)R
여기서 (OI)는 개체 상속을 의미하고, (CI)는 컨테이너 상속을 의미하며, R은 여전히 읽기 권한을 의미합니다.
Apache 서비스에서 실제로 사용하는 계정 이름으로 바꿔야 한다는 점에 유의하세요. 확실하지 않은 경우 서비스 관리자로 돌아가서 Apache 서비스의 속성을 볼 수 있습니다.
또한 ODBC를 통해 데이터베이스 파일에 액세스하고 파일이 네트워크 위치에 있거나 다른 보안 메커니즘(예: 파일 암호화)으로 보호되는 경우 Apache가 해당 파일에 성공적으로 액세스할 수 있도록 다른 요소를 고려해야 할 수도 있습니다. 그러나 대부분의 파일 기반 데이터베이스(예: dBASE)의 경우 위 단계만으로 충분합니다.