2

Я использую Windows Server 2012 R2, и под ним я использую VMWare Workstation Pro. Когда рабочая станция установлена, для пользователей VMWare Workstation создается группа пользователей __vmware__ . Я добавил учетную запись пользователя моего хост-компьютера (то есть Windows Server 2012 R2) (пользователь, а не администратор) в группу __vmware__ .

На хосте я хотел бы создать записи журнала событий в журнале событий приложений, работая под моей учетной записью, связанной с состоянием виртуальных машин, работающих под управлением VMWare.

В командном окне на хосте я whoami \all и получаю следующее:

USER INFORMATION
----------------

User Name SID
========= ==============================================
mte\mike  S-1-5-21-1052476717-3500785571-2838594007-1118


GROUP INFORMATION
-----------------

Group Name                                 Type             SID
                           Attributes

========================================== ================ ====================
========================== =====================================================
==========
Everyone                                   Well-known group S-1-1-0
                           Mandatory group, Enabled by default, Enabled group

BUILTIN\Users                              Alias            S-1-5-32-545
                           Mandatory group, Enabled by default, Enabled group

BUILTIN\Certificate Service DCOM Access    Alias            S-1-5-32-574
                           Mandatory group, Enabled by default, Enabled group

BUILTIN\Pre-Windows 2000 Compatible Access Alias            S-1-5-32-554
                           Group used for deny only

NT AUTHORITY\INTERACTIVE                   Well-known group S-1-5-4
                           Mandatory group, Enabled by default, Enabled group

CONSOLE LOGON                              Well-known group S-1-2-1
                           Mandatory group, Enabled by default, Enabled group

NT AUTHORITY\Authenticated Users           Well-known group S-1-5-11
                           Mandatory group, Enabled by default, Enabled group

NT AUTHORITY\This Organization             Well-known group S-1-5-15
                           Mandatory group, Enabled by default, Enabled group

LOCAL                                      Well-known group S-1-2-0
                           Mandatory group, Enabled by default, Enabled group

Authentication authority asserted identity Well-known group S-1-18-1
                           Mandatory group, Enabled by default, Enabled group

MTE\__vmware__                             Alias            S-1-5-21-1052476717-
3500785571-2838594007-1131 Mandatory group, Enabled by default, Enabled group, L
ocal Group
Mandatory Label\Medium Mandatory Level     Label            S-1-16-8192




PRIVILEGES INFORMATION
----------------------

Privilege Name                Description                    State
============================= ============================== ========
SeChangeNotifyPrivilege       Bypass traverse checking       Enabled
SeIncreaseWorkingSetPrivilege Increase a process working set Disabled


USER CLAIMS INFORMATION
-----------------------

User claims unknown.

Kerberos support for Dynamic Access Control on this device has been disabled.

Обратите внимание, что моя учетная запись пользователя является членом __vmware__ а SID S-1-5-21-1052476717-3500785571-2838594007-1131 .

Из учетной записи администратора я редактирую следующий раздел реестра:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application

И измените запись CustomSD следующим образом:

O:BAG:SYD:(A;;0x3;;;S-1-5-21-1052476717-3500785571-2838594007-1131)(A;;0x2;;;S-1-15-2-1)(A;;0xf0007;;;SY)(A;;0x7;;;BA)(A;;0x7;;;SO)(A;;0x3;;;IU)(A;;0x3;;;SU)(A;;0x3;;;S-1-5-3)(A;;0x3;;;S-1-5-33)(A;;0x1;;;S-1-5-32-573)

Здесь вы можете видеть, что группе __vmware__ предоставлен доступ на чтение и запись к журналу событий приложения.

Тем не менее, когда я пытаюсь создать запись в журнале:

eventcreate /SO TestEventMsg /Id 1 /D "This is a test message" /T INFORMATION /L Application

Я получаю ошибку «Отказано в доступе».

Что я не правильно делаю?

ОБНОВЛЕНИЕ 2016-12-03

Я попробовал предложение user2304170, и вот что я получил:

PS C:\Users\Netadmin\Documents> ./GrantEventLogAccess.ps1 -Account '__vmware__' -LogName Application
Failed to save configuration or activate log Application. Access is denied.
name: Application
enabled: true
type: Admin
owningPublisher:
isolation: Application
channelAccess: O:BAG:SYD:(A;;0x3;;;S-1-5-21-1052476717-3500785571-2838594007-1131)(A;;0x2;;;S-1-15-2-1)(A;;0xf0007;;;SY)
(A;;0x7;;;BA)(A;;0x7;;;SO)(A;;0x3;;;IU)(A;;0x3;;;SU)(A;;0x3;;;S-1-5-3)(A;;0x3;;;S-1-5-33)(A;;0x1;;;S-1-5-32-573)
logging:
  logFileName: %SystemRoot%\System32\Winevt\Logs\Application.evtx
  retention: false
  autoBackup: false
  maxSize: 20971520
publishing:
  fileMax: 1
PS C:\Users\Netadmin\Documents>

2 ответа2

0

Я не проверял это полностью, но если вы идете в этот раздел реестра:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog

Вы можете щелкнуть правой кнопкой мыши папку Eventlog и дать разрешения пользователю, которому вы хотите разрешить доступ, или вы можете выбрать журнал событий.

0

Пазлы вместе в интернете Я создал для этого небольшой скрипт:

<# 
    .SYNOPSIS   
        Add write permissions to the Windows Event Log for a specific AD object.

    .DESCRIPTION
        Add write permissions to the Windows Event Log for a specific AD object.

    .PARAMETER Account 
        Active directory object that needs write permissions.

    .PARAMETER LogName 
        Name of the log where we grant permissions

    .EXAMPLE
        ./script.ps! -Account 'Domain users' -LogName Application

    .NOTES
        CHANGELOG
        2016/09/12 Script born #>

Param (
    [String]$Account = 'Bob',
    [String]$LogName = 'Application'
)

Write-Verbose "Retrieving SID for account '$Account'"

$AdObj = New-Object System.Security.Principal.NTAccount($Account)
$SID = $AdObj.Translate([System.Security.Principal.SecurityIdentifier])
Write-Verbose "Found SID for account $($SID.Value)" 

$w = wevtutil gl $LogName
$channelAccess = $w[5]

if ($channelAccess.Contains('channelAccess:')) {

    $str = $channelAccess.Replace('channelAccess: ','')

    if ($str.Contains($SID.Value) -eq $false) {
        $newstr = $str +"(A;;0x3;;;"+$SID.Value+")"
        Write-Verbose "Adding '$newstr'" 
        wevtutil sl $LogName /ca:$newstr
        Write-Verbose "Update complete new value is"
        wevtutil gl $LogName
    }
    else {
        Write-Verbose "Update not needed"
    }
}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .