Chính sách nhóm: Quyền quản trị viên cho người dùng cụ thể trên các máy tính cụ thể


11

Tôi là một lập trình viên bị mắc kẹt khi cố gắng quản trị một thiết lập Active Directory cho một công ty nhỏ. Bộ kiểm soát miền đang chạy Windows Small Business Server 2008.

Chúng tôi có một đội ngũ nhân viên hiện trường sử dụng máy tính bảng; các vấn đề về cấu hình với bloatware ThinkVantage của máy tính bảng sẽ yêu cầu những người dùng này phải có Quản trị viên ngay khi sử dụng máy tính bảng. Điều đó ổn thôi - thật hữu ích cho họ khi có những đặc quyền rộng rãi khi tôi đưa họ qua một bản sửa lỗi qua điện thoại, vì vậy tôi không tìm kiếm một công việc xung quanh đó.

Tôi muốn sử dụng Chính sách nhóm để thiết lập kịch bản sau: Người dùng trong một nhóm bảo mật cụ thể (hoặc đơn vị tổ chức) phải ở trong nhóm BUILTIN / Quản trị viên khi đăng nhập vào máy tính trong một nhóm bảo mật (hoặc đơn vị tổ chức) nhất định. Không sao nếu các máy tính phải ở trong OU, nhưng tôi muốn chỉ định người dùng theo nhóm.

Tất nhiên, nhân viên hiện trường không nên là Quản trị viên trên các máy trạm khác và nhân viên văn phòng vanilla không nên là Quản trị viên trên máy tính bảng.

Hiện tại, điều này đang được quản lý cục bộ trên mỗi máy tính bảng, nhưng khi chúng tôi thêm các nhân viên mới, nó sẽ trở nên rắc rối hơn.

Tôi cảm thấy như Nhóm hạn chế là câu trả lời ở đây, nhưng không có nền tảng vững chắc trong các khái niệm và phương pháp AD, tôi gặp khó khăn khi thực hiện nó.

Kỹ thuật thích hợp cho nhiệm vụ này là gì và tôi sẽ thực hiện nó như thế nào?

Câu trả lời:


13

Tạo một nhóm để đóng gói người dùng (Quản trị viên cục bộ-Máy tính bảng) và thêm họ vào nhóm này

Tạo một OU con của các máy trạm hiện tại OU và đặt các máy tính bảng vào đây (Máy trạm \ Máy tính bảng)

Tạo GPO (Chính sách-Quản trị viên cục bộ-Chính sách) và liên kết nó với Máy trạm \ Máy tính bảng OU

Trong GPO, đặt như sau:

  • Cấu hình Comp - Chính sách - Cài đặt Windows - Cài đặt bảo mật - Các nhóm bị hạn chế
  • Nhấp chuột phải, Thêm nhóm
  • "Quản trị viên", OK
  • Thành viên của nhóm này: myDomain \ Local-admins-Tablets

Khởi động lại PC, và thực hiện.

Hãy nhớ rằng việc thiết lập các Nhóm bị hạn chế sẽ ghi đè lên danh sách các Quản trị viên cục bộ hiện có của máy. Nếu bạn đã có người dùng / nhóm khác trong đó, bạn cũng sẽ cần thêm họ vào chính sách này. Các ví dụ khác sẽ là myDomain \ Domain Administrator, v.v.

EDIT: Ồ, và thay đổi bộ lọc trên GPO và thêm Máy tính miền . Cách dễ nhất để làm điều này là sử dụng snapin MMC Quản lý chính sách nhóm (bạn có thể lấy cái này từ Công cụ quản trị máy chủ từ xa từ Microsoft)


5
+1. Nhóm hạn chế là giải pháp ở đây. Một gpupdate / lực lượng trên các máy trạm là đủ để thay đổi có hiệu lực, phủ nhận sự cần thiết phải khởi động lại.
joeqwerty

Nếu các máy tính bảng nằm trong trường , người dùng thường dễ dàng khởi động lại hơn là giải thích "mở cmd, nhập gpupdate / force / boot", v.v. :)
Izzy

1
Sử dụng Tùy chọn chính sách nhóm ( technet.microsoft.com/en-us/l Library / cc731892% 28WS.10% 29.aspx ) bạn có thể cập nhật một nhóm cục bộ mà không cần ghi đè bất cứ điều gì.
Zoredache

1
Vâng, đó là mẹo! Chỉ cần hai câu hỏi: Tôi tập hợp rằng nó sẽ thổi bay hoàn toàn tất cả các thành viên hiện tại của nhóm Quản trị viên, bao gồm cả người dùng cục bộ, đúng không? Điều đó có thể trở thành một bất ngờ khó chịu. Tôi cho rằng tài khoản Quản trị viên mặc định sẽ không bị ảnh hưởng bởi điều này; đó có phải là tự phụ của tôi?
WCWedin

1
Tôi chưa bao giờ kiểm tra điều đó, tôi luôn luôn thêm Người quản trị được xây dựng vào nhóm bị hạn chế đó. Thắt lưng niềng răng :)
Izzy

12

Câu trả lời của Izzy là ổn nếu bạn không quan tâm rằng nhóm Quản trị viên sẽ thực sự bị khóa khỏi các thay đổi trong tương lai từ máy cục bộ. Điều này cũng sẽ xóa sạch mọi nhóm đã là thành viên của nhóm Quản trị viên trước khi cài đặt chính sách được áp dụng.

Tuy nhiên, bạn có thể sử dụng cùng một cài đặt chính sách theo một cách hơi khác để bỏ qua những phiền toái đó (giả sử bạn thậm chí coi chúng là những phiền toái).

  • Tạo cấu trúc OU / Group theo cách tương tự như trước đây
  • Khi bạn ở trong phần Nhóm bị hạn chế của đối tượng chính sách nhóm, Thêm nhóm, nhưng thay vì chỉ định Quản trị viên , hãy chỉ định YourDOMAIN \ Local-admins-Tablets .
  • Trong phần "Nhóm này là thành viên của" , nhấp vào Thêm và nhập Quản trị viên

Đó là một sự khác biệt tinh tế nhưng quan trọng trong cách làm việc của hai phần. Các thành viên của nhóm này hoạt động hiệu quả là "Nhóm A sẽ chỉ bao gồm các nhóm X, Y và Z". Nhóm này là thành viên hoạt động hiệu quả để trở thành "Đảm bảo Nhóm A là thành viên của Nhóm X, Y và Z".

Khi bạn đã đặt chính sách với các Thành viên của nhóm này , điều duy nhất có thể sửa đổi tư cách thành viên của nhóm là một đối tượng chính sách ghi đè cũng sử dụng Thành viên của nhóm này hoặc bất kỳ chính sách nào khác sử dụng Nhóm này là thành viên của .


2

Có vẻ như tất cả những gì bạn thực sự cần làm là tạo chính sách nhóm thêm Nhóm Miền vào nhóm quản trị viên cục bộ. Điều này khá dễ dàng để thực hiện với một tập lệnh khởi động đơn giản hoặc với Tùy chọn chính sách nhóm .

Kịch bản khởi động đơn giản để thêm thành viên nhóm.

DomainName="example"
Set oShell = WScript.CreateObject("WScript.Shell")
Set oProcsEnv = oShell.Environment("Process")
ComputerName = oProcsEnv("COMPUTERNAME")
Set oGroup = GetObject("WinNT://" & ComputerName & "/" & "Administrators")
If Not oGroup.IsMember("WinNT://"&DomainName&"/_Group_Tablet_Admins") Then _
    oGroup.Add ("WinNT://"&DomainName&"/_Group_Tablet_Admins")

Giả sử anh ta đang sử dụng W2K8, điều mà tôi không thể nói dựa trên câu hỏi của anh ta.
joeqwerty

Tùy chọn phía máy khách được hỗ trợ trên miền 2003r2. Tôi chỉ không có một liên kết một bài viết 2003r2 tiện dụng.
Zoredache

Chỉnh sửa câu hỏi để thêm HĐH. GPP có vẻ phù hợp với kịch bản này, vì người dùng không có khả năng sửa đổi các nhóm của họ sau đó, làm cho bản chất tạm thời của nó trở thành một điểm cần thiết. Điều đó nói rằng, việc triển khai các điều kiện tiên quyết cho mọi máy khách có vẻ như là một vấn đề đau đầu.
WCWedin

1
Đó là lý do tại sao làm điều này với một kịch bản khởi động đơn giản cũng là một lựa chọn đơn giản. Tôi thấy sở thích hữu ích cho nhiều thứ khác là tốt. Có thể đáng để cài đặt chúng cho những thứ khác mà bạn sẽ có thể hoàn thành trong tương lai.
Zoredache

1

Vấn đề duy nhất với giải pháp được liệt kê là nó cấp quyền quản trị viên cục bộ cho tất cả các máy áp dụng chính sách đó. Thông thường, bạn chỉ muốn cấp quyền quản trị viên cho một máy cụ thể. Những gì tôi đã quan sát là khi người dùng nhận ra họ có quyền quản trị cục bộ, họ sẽ cài đặt phần mềm cho tất cả bạn tình của họ.

Có một số cách khác nhau bạn có thể làm điều này nhưng tôi có thể chỉ đề xuất một cách. Vì vậy, hoàn thành các bước như trên nhưng cũng tạo một nhóm cho mỗi máy tính nơi người dùng cần quyền bổ sung. Mỗi "Nhóm máy tính" này được thêm vào nhóm myDomain \ Local-admins.

Người dùng sau đó được thêm vào nhóm tương ứng với máy họ cần truy cập.

Vì vậy, họ là một quản trị viên nhưng chỉ của máy đó.


0

Bạn nói rằng việc thêm nhân viên mới là một rắc rối, nhưng không nên thêm máy tính bảng mới sẽ gây rắc rối?

Tôi sẽ làm một cái gì đó dọc theo những dòng này:

Có một nhóm bảo mật tên miền chứa tất cả người dùng phải là quản trị viên trên máy tính bảng (ví dụ: TabletAd Administrator).

Trên mỗi máy tính bảng, thêm nhóm đó vào nhóm Quản trị viên.

Cho dù đây có phải là kỹ thuật phù hợp hay không, tôi không biết. Đó chỉ là ý tưởng đầu tiên đến với tôi về cách thực hiện.


2
Nó không nên được thêm bằng tay vào mỗi máy. Đây là những gì Chính sách nhóm dành cho
Izzy

1
Khi thiết lập một máy tính bảng mới, tôi phải thêm 15 người dùng vào một máy tính bảng. Khi thêm một nhân viên mới, tôi phải thêm một người dùng vào 20 máy tính bảng. Cả hai đều là một rắc rối, nhưng các cơ chế của việc đi bộ từ máy này sang máy khác làm cho quá trình sau trở nên tẻ nhạt và chậm chạp. Cách tiếp cận của bạn sẽ làm giảm đáng kể điều đó, mặc dù, ngay cả khi nó không đặc biệt thanh lịch.
WCWedin

1
+1 trên phiếu bầu này để đưa nó trở lại một chút. Đây có thể không phải là giải pháp tốt nhất nhưng nó là một giải pháp hợp lệ. Mọi người không nên bỏ phiếu để đề xuất một giải pháp hợp lệ chỉ vì đó không phải là giải pháp ưa thích. Điều duy nhất còn thiếu từ giải pháp này là việc sử dụng các Nhóm bị hạn chế để tự động hóa quá trình thêm nhóm vào nhóm Quản trị viên cục bộ. Tôi nói +1 cho nỗ lực và đóng góp cho câu trả lời.
joeqwerty

0

Tôi đã viết một kịch bản chạy dưới dạng chính sách máy tính với quyền quản trị trên máy trạm cục bộ. Nó kiểm tra lần đăng nhập cuối cùng trên Mô tả của người dùng trong AD mà Quản trị viên tên miền có thể đặt từ "Người dùng và máy tính thư mục hoạt động", nếu nó chứa tên máy trạm, tập lệnh sẽ thêm người dùng vào nhóm quản trị viên cục bộ, nếu tên máy trạm không nằm trong Mô tả của người dùng, nó xóa người dùng khỏi nhóm quản trị viên cục bộ. Mô tả có thể bao gồm nhiều tên máy tính, như thế này:

Mô tả của người dùng: "Quản trị viên cục bộ trên WKST-E445R và WKST-VM398"

Vì vậy, để biến ai đó thành quản trị viên cục bộ trên một máy, tôi chỉ cần thêm tên máy tính này vào Mô tả của người dùng trong AD và yêu cầu người dùng khởi động lại , và xóa tên máy tính sẽ xóa quyền quản trị viên cục bộ.

Đó không phải là giải pháp gọn gàng nhất? :-)

Đây là kịch bản:

    @if "%debug%" neq "%username%" echo off
set ver=MakeLocalAdmin.cmd henrik@c o m m o r e.se 20150423
:: Adds last logged on domain user to local Administrators group if run by computer GPO with Administrative rights and the user's Comment contains Computername

set log=nul
:: or set log=c:\logs\MakeLocalAdmins.txt

:: Check who was last logged on user
FOR /F "tokens=3 delims= " %%G in ('reg query "hklm\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI" /v LastLoggedOnUser') DO (
set DomainAndUserName=%%G)

:: Remove the spaces
set DomainAndUserName=%DomainAndUserName: =%

:: Get only username part
set LastLoggedOnUserName=%DomainAndUserName:*\=%


:: Check OS language, so we can adapt to localized name of Admin group and Comment
FOR /F "tokens=3 delims= " %%G in ('reg query "hklm\system\controlset001\control\nls\language" /v Installlanguage') DO (
set Language=%%G)

echo %date% %Time% ; %0 ; %computername%; %LastLoggedOnUserName%; %DomainAndUserName%, %Language% >> %log%
goto %Language%

:: Add any langauage specific part below, but if an unknown install language is found,
:: an error 'label not found' should mean script terminates, but anyway make sure it terminates. 
goto end

:0409
:: English
net user /domain %LastLoggedOnUserName% | find "Comment " | find "%computername%" >> %log%
set NoLocalAdmin=%errorlevel%
if %NoLocalAdmin% equ 0 net localgroup Administrators /add "%DomainAndUserName%" >> %log%
if %NoLocalAdmin% equ 1 net localgroup Administrators /del "%DomainAndUserName%" >> %log%
goto end

:041D
:: Swedish 
:: †„” åäö (Swedish char's)
net user /domain %LastLoggedOnUserName% | find "Kommentar " | find "%computername%" >> %log%
set NoLocalAdmin=%errorlevel%
if %NoLocalAdmin% equ 0 net localgroup Administrat”rer /add "%DomainAndUserName%" >> %log%
if %NoLocalAdmin% equ 1 net localgroup Administrat”rer /del "%DomainAndUserName%" >> %log%
goto end



:end
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.