2009-12-22 2 views
2

ServiceController 클래스를 사용하여 C# 어셈블리에서 IIS를 원격으로 종료합니다. 내가 네트워크를 통해 수행해야하는 privlidges의 최소 수준이 궁금 해서요. 현재 테스트에서 관리자를 사용하고 있으며 제대로 작동하지만 Production을 통해 마이그레이션 할 때 AD 그룹을 사용해야하며 올바른 수준의 보안을 제공합니까?ServiceController IIS 보안 액세스 종료

  // Make a call to IIS to shutdown the service. 
      ServiceController sc = new ServiceController(serviceName, serverName); 

      //Can we stop the service 
      if (sc.CanStop) 
      { 
       //Stop it 
       sc.Stop(); 
      } 

건배, 코너

답변

2

Windows 서비스는 액세스 제어 목록 (ACL)에 의해 보호됩니다. 파일, 디렉터리, 레지스트리 키 등을 보호하는 데 사용되는 파일 액세스 제어 목록과 동일합니다.

AD 사용자가 제어중인 서비스에 대한 충분한 권한을 아직 갖고 있지 않은 경우 적절한 프로덕션에 배포하기 전에 (또는 그 일부로) 권한 (예 : SERVICE_STOP)을 부여해야합니다.

SUBINACL과 같은 명령 줄 도구를 사용하여 Windows 서비스의 ACL을 조작 할 수 있습니다. IISADMIN - - W3SVC - HTTPFilter 나는이 추가됩니다

+0

안녕 데이브, 는 우수, 그게 치료를했다 응답을 위해, 난 같이 Subinacl을 사용하고 3 개 IIS 서비스 내 서비스 계정에 대한 액세스 권한을 부여 내 배포 지침의 일부로 다시 감사합니다 :) 건배, Conor – Conor