2011-01-22 2 views
1

SYSTEM 권한이있는 서비스로 Windows 레지스트리를 업데이트하려고합니다. 자바를 사용하여 레지스트리를 업데이트하면 Java가 관리자 계정을 사용하기 때문에 제대로 작동합니다. SYSTEM 계정을 사용하는 Windows 서비스에 의해 호출 된 Java를 사용하여 레지스트리를 업데이트하려고하면 아무 것도 업데이트하지 않습니다.SYSTEM 계정의 Windows 서비스에서 호출 된 java를 사용하여 Windows 레지스트리 업데이트

어떻게하면 레지스트리를 업데이트하기 위해 SYSTEM 계정에 대한 액세스 권한을 제공합니까?

SYSTEM 계정의 서비스로 호출 된 경우 작동하지 않는 순수 Java로 작업합니다.

답변

1

로그온 액세스 토큰에 대한 일부 권한을 설정해야한다고 생각됩니다. 우리는 윈도우에서 자바 서비스를 실행하고 나는 레지스트리 다음과 같이 액세스하기 전에 나는 항상 어떤 권한을 설정할 : 나는이를 설정하지 않으면

public static final String BACKUP_PRIV = "SeBackupPrivilege";  
public static final String RESTORE_PRIV = "SeRestorePrivilege"; 
public static final String SECURITY_PRIV = "SeSecurityPrivilege"; 

가 작동하지 않습니다. 설정할 수있는 세분화 된 권한이 더있을 수 있지만 그 권한은 무엇인지 확실하지 않습니다.

우리는 다음과 같이 승리 API 함수의 활용, 우리를 위해이 작업을 수행하는 몇 가지 기본 코드를 작성했다 :

관련 문제