Simple check in java to find out if running as administrator

断了今生、忘了曾经 提交于 2019-12-11 04:13:38

问题


Is there a simple, quick, non-invasive windows admin task that can be performed from a java process to validate if the current process is running as administrator?

I know we could run batch commands to check if current user is member of administrator group. But there are complications of portability across Vista etc.

A simple example would be:

echo. 2> %SYSTEMROOT%\EmptyFile.txt

However, this is invasive. We dont want to create files

Any other option?


回答1:


In general, you may find it a better choice to check for a specific permission rather than implying permissions from role assignments. One reason for this is that in a domain environment you may have local administrators and domain administrators. They are not necessarily equivalent. Also, even an administrator's permissions can be altered or specific file/directory permissions be "tweaked" to, for example, deny access to "localmachine\administrators".

Checking for a specific permission guarantees that, given specific user credentials, that user can or cannot perform some action, regardless of what roles they might be assigned to.

I know that doesn't answer your question, but it may help shed some light on the problem of assuming permissions from roles.



来源:https://stackoverflow.com/questions/1834490/simple-check-in-java-to-find-out-if-running-as-administrator

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!