Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Windows Server 2008/2008 R2 (http://forum.oszone.net/forumdisplay.php?f=97)
-   -   [решено] Права пользователей RDP на контроллере домена 2008R2 (http://forum.oszone.net/showthread.php?t=317202)

walcot 27-07-2016 10:50 2654435

Права пользователей RDP на контроллере домена 2008R2
 
Есть проблема( Поднят на КД сервер терминалов (знаю, плохая практика, но так надо). При входе по RDP, пользователи не имеют прав, определённые для них в домене. Т.е. при входе юзера вылазит окно UAC, с помощью файла реестра должна записываться инфа о списке баз 1С, мапиться сетевые диски и т.д. На 2003 контроллере проблем нет. Если логиниться под админом, то само собой всё в порядке. Выручайте, замучался этим вопросом.

Telepuzik 28-07-2016 12:00 2654809

Цитата:

Цитата walcot
определённые для них в домене. »

А какие права для них определены в домене?

walcot 28-07-2016 13:47 2654847

Все локальные админы, т.е. в группе PowerUsers, которая в Builtin\Administrators. Через GPO с помощью logon-скрипта мапятся сетевые диски. Если просто зайти на сервак под другим пользователем - картина та же.
Также когда ставил службу RDS, когда выбирал группу пользователей, которым даю доступ по RDP, ругнулось следующим:

Однако добавилось со второй попытки.
С доменом проблем нет, всё работает как и раньше.

ko4evneg 28-07-2016 16:47 2654930

Какая ошибка вылетает у юзеров?
Показать скрипт можете?

Telepuzik 28-07-2016 16:51 2654933

Цитата:

Цитата walcot
Через GPO с помощью logon-скрипта мапятся сетевые диски »

Если зайти пользователем на сервер и выполнить команду gpresult /H gp.html, в файле gp.html Ваша политика и logon скриптами какой имеет статус?

walcot 29-07-2016 09:29 2655106

Telepuzik, Group Policy Infrastructure, Registry, Scripts - везде success. Похоже, что если зайти под другим пользователем, юзер всё же становится админом, т.к. делать можно всё. Однако диски не мапятся и по RDP проблемы.
ko4evneg, Ошибок нет. Скрипт ниже.
Код:

' Позволяет подключать различные папки, в зависимости от групп безопасности,
 ' к которым принадлежит пользователь. Настройка параметров - отредактировать
 ' элеметы массива arrShares: "ИмяГруппы", "БукваДиска", "ПутьКОбщейПапке".
 ' Если имя группы "", то ресурс подключается всем пользователям.
 '=========================================================================

 ' Допустимо использовать русские буквы и пробелы в элементах массива.
 ' X - Общая папка
  '
 arrShares = Array ("", "X:","\\W2k3R2\Folder$\Share")

 '-------------------------------------------------------------------------
 Set objWshShell = WScript.CreateObject("WScript.Shell")
 Set objNetwork  = WScript.CreateObject("Wscript.Network")
 Set objSysInfo  = WScript.CreateObject("ADSystemInfo")
 '-------------------------------------------------------------------------
 strUserDN = objSysInfo.userName
 Set objUser = GetObject("LDAP://" & strUserDN)
 '-------------------------------------------------------------------------

 lngSharesCounter = UBound(arrShares)

 If (((UBound(arrShares) + 1) / 3) = Fix ((UBound(arrShares) + 1) / 3)) And  lngSharesCounter > 0 Then
    'Количество элементов массива д.б. кратно 3
   
    For lngI = 0 To lngSharesCounter Step 3
      strShareGroup  = arrShares (lngI)
      strShareLetter = arrShares (lngI + 1)
      strSharePath  = arrShares (lngI + 2)

      If strShareGroup  = "" Then
          fMap = True
      Else
          fMap = IsMember (strShareGroup)
      End If
       
      If fMap Then
          On Error Resume Next
          objNetwork.MapNetworkDrive strShareLetter, strSharePath
      End If
    Next
 Else
    MsgBox "Ошибки в описании параметров массива в скрипте 'mapdrives.vbs'. Пожалуйста сообщите об этой ошибке администратору сети."
 End If

 '-------------------------------------------------------------------------
 Function IsMember(strGroup)
 ' Function to test one user for group membership.
 ' objUser is the user object with global scope.
 ' strGroup is the NT Name of the group to test.
 ' objGroupList is a dictionary object with global scope.
 ' Returns True if the user is a member of the group.

  Dim objGroup
 
  If IsEmpty(objGroupList) Then
    Set objGroupList = CreateObject("Scripting.Dictionary")
    objGroupList.CompareMode = vbTextCompare
    For Each objGroup In objUser.Groups
      objGroupList(objGroup.sAMAccountName) = True
    Next
  End If
 
  IsMember = objGroupList.Exists(strGroup)
 End Function
 '-------------------------------------------------------------------------


walcot 02-08-2016 16:48 2656198

Проблема решена, в реестр лучше записывать с помощью GPP или положить файл реестра в расшаренную папку и прописать в батнике запуска 1С путь до файла .reg. Мапинг дисков ещё проще решается. На сервере:
Код:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

EnableLinkedConnections = 1 (DWord)



Время: 22:19.

Время: 22:19.
© OSzone.net 2001-