Создание учетной записи пользователя Windows с помощью java

Можно ли создать/удалить учетную запись пользователя Windows и установить ее привилегии, чтобы сделать ее учетной записью администратора, простой учетной записью пользователя или гостевой учетной записью с использованием кода Java?


person hannibal    schedule 29.03.2014    source источник
comment
Когда у вас есть административные привилегии, я думаю, это возможно сделать. Однако я не знаю, как.   -  person SharpKnight    schedule 29.03.2014
comment
для привилегий администратора это возможно, когда вы включаете файл .manifest, чтобы иметь эти привилегии, но я думаю, что выберу наивный способ, выполнив простую командную строку.   -  person hannibal    schedule 30.03.2014


Ответы (1)


Прошел уже 1 год, когда я задал этот вопрос, и я забыл опубликовать ответ. Мне жаль :)

чтобы создать учетную запись пользователя, нам нужны административные привилегии, обернув файл манифеста нашей программой. файл манифеста должен иметь то же имя, что и программа. вот как должен выглядеть этот файл:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="highestAvailable"   uiAccess="False" />
</requestedPrivileges>
</security>
</trustInfo>
</assembly>  

затем мы создаем нашу программу userAccount:

import java.io.IOException;

public class UserAccount {

    public static void main(String[] args){

        String userName = "foo";

        try {

            Runtime.getRuntime().exec("net user " + userName + " /add");

        } catch (IOException e){
            e.printStackTrace();
        }
    }
}

в моем случае я использовал инструмент launch4j, чтобы обернуть манифест файлом .jar и заставить программу работать :)

person hannibal    schedule 15.02.2015
comment
Спасибо, что убираете за собой! - person eckes; 16.02.2015
comment
Спасибо, мне помогает - person jkh6100; 26.06.2017