컨텍스트 : 응용 프로그램 풀에 대한 사용자 지정 Windows 계정을 사용하고 Oracle 사용자 인증을 사용하도록 설정 파일에 DB 사용자 이름과 암호를 저장할 필요가 없습니다.IIS AppPool ID 비밀번호 보안
문제점 : 이 설정은 작동하지만 나는 appcmd.exe
을 사용하여 '복구'할 수있는 것으로 나타났습니다. 관리 및 실제 액세스 권한을 가진 사람이 일반 텍스트로 비밀번호를 읽을 수 없도록하는 방법이 있습니까?
이것은 Windows 2016 시스템의 IIS 10입니다. 암호 은 applicationHost.config
파일을 볼 때이 암호화 된 것으로 보입니다.
%systemroot%\system32\inetsrv\appcmd.exe list apppool "ImoAppPool" /text:*
어쩌면 나는 대답을 이해하지 못하거나 질문을 명확한 방식으로 묻지 않았다. IIS는 특정 사용자 계정으로 실행해야합니다. 나는 정확한 암호를 제공해야한다. 나는 변형 된 암호를 제공하고 실행할 수있는 방법이 없다고 생각한다. 그런 다음 암호를 저장하는 방법을 선택합니다. 구성 파일을 살펴보면 암호가 변환됩니다 ('password = "[enc : IISWASOnlyCngProvider : cNM0PbFgUgr ...'). 질문에서 명령을 실행하면 일반 텍스트를 볼 수 있습니다. –
요점은 다음과 같습니다. 암호를 복구 할 수있는 방식으로 저장하지 마십시오. 보안되지 않습니다. 공격자가 서버에 대한 관리자 액세스 권한을 얻고 사용자가 암호를 보호해야한다고 가정해야합니다. – zaph
어떻게 저장합니까? 그들은 웹 서버에 저장됩니다. 제 질문은 운영 체제에 대해 인증 할 수 있고 암호를 일반 텍스트로 복구 할 수 없도록 서버를 구성하는 방법이 있는지 여부입니다.이 방법은 여러 가지 방법으로 구현할 수 있습니다 (예 : auth token). 그러나 우리는 웹 서버를 구현하는 것이 아니라 구성하는 것입니다. –