Định cấu hình tài khoản người dùng cục bộ với DSC
Tôi giả sử bạn có một số hiểu biết cơ bản về cách hoạt động của DSC. Nếu không, hãy đi tới thư mục Public OneDrive cho PowerShell.org và lấy một bản sao của ebook DSC miễn phí.
DSC cung cấp tài nguyên nhà cung cấp cho tài khoản người dùng.
Vì mật khẩu tài khoản nên quan điểm chính thức là sử dụng chứng chỉ để xử lý việc mã hóa mật khẩu. Bạn có thể đọc về điều đó trên blog của nhóm PowerShell. Nhưng đó là nhiều hơn những gì tôi muốn giải quyết ngay bây giờ, hơn nữa, tôi tin tưởng vào tính bảo mật của mạng thử nghiệm cục bộ của mình nên cấu hình của tôi sẽ lưu trữ mật khẩu dưới dạng văn bản thuần túy trong MOF kết quả. Tôi nghĩ tôi nên cho bạn xem kịch bản mà tôi đã nghĩ ra.
#requires -version 4.0
#requires -RunasAdministrator
param(
[Parameter(Position=0,Mandatory)]
[ValidatePattern("^CHI")]
[string[]]$Computername
)
Configuration LocalUserAccounts {
Param(
[Parameter(Position=0,Mandatory)]
[ValidatePattern("^CHI")]
[string[]]$Computername,
[Parameter(Position=1,Mandatory)]
[PScredential]$Password
)
Node $Computername {
User LocalAdmin {
UserName="localadmin"
Description="Local administrator account"
Disabled=$False
Ensure="Present"
Password=$Password
}
#add the account to the Administrators group
Group Administrators {
GroupName="Administrators"
DependsOn="[User]LocalAdmin"
MembersToInclude="localadmin"
}
} #node
} #end configuration
#create config data to allow plain text passwords
$ConfigData=@{AllNodes=$Null}
#initialize an array for node information
$nodes=@()
foreach ($computer in $computername) {
#write-host "Adding $computer" -foreground green
#define a hashtable for each computername and add to the nodes array
$nodes+=@{
NodeName = "$computer"
PSDscAllowPlainTextPassword=$true
}
}
#add the nodes to AllNodes
$ConfigData.AllNodes = $nodes
#you will be prompted to enter a credential
Write-Host "Enter the credential for localadmin" -foregroundcolor green
#create the configurations
localuseraccounts $computername -configurationdata $configdata -OutputPath c:\scripts\LocalUserAccounts
Tập lệnh này nhằm xác định một tập hợp MOF cho các máy tính trong miền Globomantics của tôi, tất cả đều bắt đầu bằng “CHI”. Kịch bản có một loạt tên máy tính. Từ đó, nó xác định cấu hình, xác định dữ liệu cấu hình cần thiết để cho phép mật khẩu văn bản thuần túy và sau đó thực thi cấu hình. Cấu hình cũng có tài nguyên Nhóm để thêm tài khoản vào nhóm Quản trị viên cục bộ. Lưu ý cài đặt Phụ thuộc trong cấu hình nhóm. Điều này đảm bảo rằng tài khoản sẽ được thiết lập trước khi thêm nó vào nhóm.
Để tạo cấu hình, tôi chạy tập lệnh chỉ định tên máy tính.
PowerShell sẽ nhắc tôi cung cấp thông tin xác thực. Khi hoàn tất, tôi còn lại một tệp MOF cho mỗi máy tính trong C:\Scripts\LocalUserAccounts, vì tôi đã chỉ định đường dẫn đầu ra. Khi đã sẵn sàng, tôi có thể đẩy cấu hình lên máy chủ:
Start-DSCConfiguration -path c:\scripts\localuseraccountsVà thế là xong! Tôi có thể xác minh bằng lệnh NET USER trong phiên từ xa.
DSC hứa hẹn sẽ thay đổi cách các Chuyên gia CNTT hoàn thành công việc của họ theo hướng tích cực!



