Каково различие между запущением программы как учетная запись администратора домена и запущением программы как “Выполненный как администратор” в Windows 7?

Лучший способ обработать это будет для удаления учетных записей локального пользователя из затронутых клиентских компьютеров. Если пользователи знают локальный пароль "Администратора" на тех машинах, изменяют его.

Если учетные записи домена пользователей имеют права "Администратора" на клиентских компьютерах, тем не менее, они могут просто создать больше учетных записей локального пользователя.

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

Option Explicit 

Dim dictUsersToIgnore, objNetwork 
Dim colSourceAccounts, objSourceUser

' Debugging 
Const DEBUGGING = True 

' Source and destination computers 
Const SOURCE_COMPUTER = "." 

' Constants for comparison of accounts to ignore list 
Const MATCH_EXACT = 1 
Const MATCH_LEFT = 2 

' Accounts to ignore during copying 
Set dictUsersToIgnore = CreateObject("Scripting.Dictionary") 
dictUsersToIgnore.Add "SUPPORT_", MATCH_LEFT 
dictUsersToIgnore.Add "IUSR_", MATCH_LEFT 
dictUsersToIgnore.Add "IWAM_", MATCH_LEFT 
dictUsersToIgnore.Add "Administrator", MATCH_EXACT 
dictUsersToIgnore.Add "Guest", MATCH_EXACT 
dictUsersToIgnore.Add "HelpAssistant", MATCH_EXACT 
dictUsersToIgnore.Add "ASPNET", MATCH_EXACT 

' Should this account be ignored 
Function IgnoreObject(Name, dictNames) 
    Dim strToIgnore 

    IgnoreObject = False 

    For Each strToIgnore in dictNames 

        ' Match Exact 
        If (dictNames.Item(strToIgnore) = MATCH_EXACT) and (UCase(Name) = UCase(strToIgnore)) Then 
                IgnoreObject = True 
                Exit Function 
        End If 

        ' Match left 
        If (dictNames.Item(strToIgnore) = MATCH_LEFT) and (Left(UCase(Name), Len(strToIgnore)) = UCase(strToIgnore)) Then 
                IgnoreObject = True 
                Exit Function 
        End If 

    Next' strToIgnore 
End Function 

Set objNetwork = CreateObject("Wscript.Network") 

' Get accounts on source computer and loop through them, copying as necessary 
Set colSourceAccounts = GetObject("WinNT://" & SOURCE_COMPUTER) 
colSourceAccounts.Filter = Array("user") 
For Each objSourceUser In colSourceAccounts 

    If IgnoreObject(objSourceUser.Name, dictUsersToIgnore) = False Then 
        If (DEBUGGING) Then WScript.Echo "Deleting account: " & objSourceUser.Name 
        colSourceAccounts.Delete "user", objSourceUser.Name 
    Else 
        If (DEBUGGING) Then WScript.Echo "Ignoring account: " & objSourceUser.Name 
    End If 
Next ' objSourceUser 

Добавьте любые имена пользователей, которые не должны быть удалены к списку dictUsersToIgnore. MATCH_EXACT означает, что имя пользователя подобрано точно. MATCH_LEFT означает, что только крайняя левая часть имени пользователя будет подобрана (т.е. предположит, что соответствие имени имеет "*" после него).

Этот сценарий подходит для assiging как AD сценарий запуска. Будьте осторожны, как Вы определяете объем его - это может действительно разрушить Ваш день при выполнении его в неправильном месте.

14
задан 6 March 2015 в 07:07
1 ответ

Это - действительно вопрос изучения, что маркеры безопасности находятся в Windows в эти дни, но я буду скопировать/вставить ответ от ТАК найденного здесь: https://stackoverflow.com/questions/8986971/what-precisely-does-run-as-administrator-do, так как не возможно закрыться как перекрестный сайт простофили.

, Когда Вы входите в систему, Windows создает маркер доступа. Это идентифицирует Вас, группы, Вы - член и Ваши полномочия. И обратите внимание что, является ли пользователь администратором или не определяется тем, является ли пользователь членом Группы администраторов.

Без контроля учётных записей, когда Вы запускаете программу, это получает копию маркера доступа, и это управляет тем, к чему может получить доступ программа.

С контролем учётных записей, когда Вы запускаете программу, это получает маркер ограниченного доступа. Исходного маркера доступа с "Администраторами", удаленными из списка групп (и некоторые другие изменения). Даже при том, что Ваш пользователь является членом Группы администраторов, программа не может использовать Права администратора.

то, Когда Вы выбираете "Выполненный как Администратор" и Ваш пользователь, является администратором, программа запускается с исходным маркером неограниченного доступа. Если Ваш пользователь не является администратором, Вам предлагают учетную запись администратора, и программа запущена в соответствии с той учетной записью.

Кредит к: arx

Посмотрите здесь для большего количества чтения:

, Как Работы Управления учетными записями пользователей

Документация Управления учетными записями пользователей

30
ответ дан 20 November 2019 в 23:03

Теги

Похожие вопросы