곧 제발 도와주세요 null를 돌려줍니다. 나는 서비스를 실행하기 위해 C++ 코드를 작성하고, 그것은, OpenSCManager() 함수는 null 관리자 계정 에 있지만 관리자가 아닌 사용자 계정에서 잘 작동합니다. 관리자가 아닌 사용자 계정에 서비스를 시작하고 중지 할 수있는 권한을 부여하는 방법을 알려주십시오. 아니면 다른 일을해야합니까? 답장을 보내주십시오.() 함수는
() 함수는
답변
SC_MANAGER_ALL_ACCESS
플래그를 지정하는 OpenSCManager
을 호출하는 것이 좋습니다. 실제로는 기본적으로 관리자에게만 부여되는 권한 집합이 필요합니다. 여기에서 서비스를 시작/중지하려면 SC_MANAGER_CONNECT
플래그를 지정하면됩니다.이 플래그는 기본적으로 모든 인증 된 사용자에게 제공됩니다.
는 이제 서비스 관리자에 대한 핸들을 가지고, 당신은 서비스에 대한 핸들을 얻을 수 OpenService
을 사용해야합니다. 시작/당신이 원하는 액세스로 GENERIC_READ | GENERIC_EXECUTE
를 지정해야 서비스를 중지 할 수있는 권한을 가지고 (사실 나는 SERVICE_INTERROGATE
, 필요한 경우에도, 단지 SERVICE_START
및 SERVICE_STOP
에 필요한 권한을 좁혀 수 있다고 생각합니다). 여기에표준 서비스 DACL은 일반 사용자에게 이러한 권한을 부여하지 않으므로 일반 사용자가 시작/중지 할 수 있도록 시작해야하는 서비스의 DACL을 변경해야합니다. here을 참조하십시오. 서비스에 대한 액세스 권한에 대한 자세한 내용은 here을 참조하십시오.
단일 서비스 대신 정상적인 사용자가 서비스를 시작/중지하도록 허용하려는 경우 모든 DACL을 변경하지 않고 가능한지 여부를 알 수 없지만 내 의견으로는 분명히 나쁜 생각입니다. .
단일 서비스의 경우에도 서비스가 권한있는 계정 (예 : LocalSystem
)으로 실행되고 있거나 중요한 시스템 서비스 인 경우 권한이없는 사용자가 그 서비스를 혼란에 빠뜨리면 여전히 나쁜 생각입니다. 사용자가 시스템에서 중요하지 않은 서비스 만 시작/중지 할 수 있도록해야합니다. 호기심에서
, 왜 사용자가 서비스를 시작/중지하도록해야합니까?
+1! – JBRWilkinson
감사합니다! :이 서비스 매니저 자체에 대한 권한을 변경할 수 있습니다, 미래의 참고 –
를 (임의의 텍스트는 15 자 얻기 위해) (아마 좋은 생각은 아니지만!) 예를 들어, http://support.microsoft.com을 참조/kb/907460 –
- 1. 펄은 : 함수는
- 2. 호출 기본 클래스 함수는
- 3. 재귀 함수는 NullPointerException이 (자바)
- 4. opengl glfrustum 함수는
- 5. PHP : 함수는 배열
- 6. PHP 함수는 어떻게 참조합니까?
- 7. dependentObservable의 함수는 언제 호출됩니까?
- 8. jQuery의 jQuery() 함수는 무엇을합니까?
- 9. Win32_AllocatedResource 함수는 어떤 기능을합니까?
- 10. 이 함수는 스레드로부터 안전합니까?
- 11. DosPathToSessionPath 함수는 무엇을 사용합니까?
- 12. JavaScript 함수는 통과합니까?
- 13. jQuery 함수는 클래스를 무시합니다.
- 14. 재귀 함수는 PHP
- 15. 이 함수는 무엇을 반환합니까?
- 16. PHP의 밑줄 함수는 무엇을합니까?
- 17. $ .scrollTo() 함수는 가로로?
- 18. 이 함수는 PHP에 존재합니까?
- 19. 이 함수는 재진입 성입니까?
- 20. 콜백 파이썬의 모든() 함수는
- 21. 함수는 float를 반환해야하지만 엉망이됩니다!
- 22. _ ($ string) 함수는 PHP에서 무엇을합니까?
- 23. 이 함수는 스레드로부터 안전합니까?
- 24. C++ 정적 함수는 없습니다.
- 25. 이 함수는 어떻게 선언합니까?
- 26. MySQL의 COUNT() 함수는 추정치입니까?
- 27. PHP Sum 함수는
- 28. Joomla에서 reorder() 함수는 무엇을합니까?
- 29. 오류 : 함수는 CodeIgniter의의 constants.php
- 30. XQuery 함수는 속성
NULL을 가져온 후 GetLastError() API 호출이 반환하는 것은 무엇입니까? Visual C++를 사용하는 경우 OpenSCManager() 호출에 중단 점을 넣고 조사 식 창에서 '단계'와 '@err'을 넣을 수 있습니다.이 값은 무엇입니까? 그러한 포괄적 인 답변을 얻으려면 +1 – JBRWilkinson