PowerShell là gì: Hiểu đơn giản nó tường tự như là Bash trên môi trường Window. Được viết trên nền .Net
Đặc điểm: Coi mọi thứ là đối tượng, hỗ trợ đường ống => hơi khó giải thích. Thao tác chủ yếu với text.
Ai dùng: Quản trị viên, những ông không thích dùng giao diện chậm chạp và chán ngắt... để tự động hoá một loạt các thao tác, quản lý hệ thống, lên lịch, tạo báo cáo...
# Cài đặt module trên PowerShell:
- Chạy PS với quyền Administrator và cài các gói sau:
- Install-Module MSOnline
- Install-Module AzureAD
- Install-Module AzureRM
# Connect service:
- $msolcred = Get-Credential # Lưu cred để không phải đăng nhập nhiều
- Connect-MsolService -Credential $msolcred
- Get-MsolAccountSku # Show licences
- Get-MsolUser -UserPrincipalName duc1514064@nuce.edu.vn
# LẦN 1 - TẠO ALL NHƯNG BỊ LỖI 223 SV CHƯA CÓ MẬT KHẨU:
- Import-Csv -Path "C:\Users\Thinkpad\Desktop\create.csv" | foreach { New-MsolUser -FirstName $_.FirstName -LastName $_.LastName -DisplayName $_.DisplayName -UserPrincipalName $_.UserPrincipalName -Password $_.Password -UsageLocation $_.UsageLocation -LicenseAssignment "nuceedu:STANDARDWOFFPACK_IW_STUDENT" -Department $_.Department -Title $_.Title -MobilePhone $_.MobilePhone -StreetAddress $_.StreetAddress -City $_.City -State $_.State -PostalCode $_.PostalCode -Country $_.Country -ForceChangePassword $false -StrongPasswordRequired $false } | Export-Csv -Path "C:\Users\Thinkpad\Desktop\created.csv"
# LẦN 2 - TẠO 223 SV CHƯA CÓ MẬT KHẨU:
- Import-Csv -Path "C:\Users\Thinkpad\Desktop\223user.csv" | foreach { New-MsolUser -FirstName $_.FirstName -LastName $_.LastName -DisplayName $_.DisplayName -UserPrincipalName $_.UserPrincipalName -UsageLocation $_.UsageLocation -LicenseAssignment "nuceedu:STANDARDWOFFPACK_IW_STUDENT" -Department $_.Department -Title $_.Title -MobilePhone $_.MobilePhone -StreetAddress $_.StreetAddress -City $_.City -State $_.State -PostalCode $_.PostalCode -Country $_.Country -ForceChangePassword $false -StrongPasswordRequired $false } | Export-Csv -Path "C:\Users\Thinkpad\Desktop\223user-log.csv"
# LẦN 3 - SET LẠI TÊN 581 user & LICENSES:
- Import-Csv -Path "C:\Users\Thinkpad\Desktop\setName.csv" | foreach { Set-MsolUser -UserPrincipalName $_.UserPrincipalName -FirstName $_.FirstName -LastName $_.LastName -DisplayName $_.DisplayName -UsageLocation $_.UsageLocation -Department $_.Department -Title $_.Title -MobilePhone $_.MobilePhone -StreetAddress $_.StreetAddress -City $_.City -State $_.State -PostalCode $_.PostalCode -Country $_.Country }
- Import-Csv -Path "C:\Users\Thinkpad\Desktop\create.csv" | foreach { Set-MsolUserLicense -UserPrincipalName $_.UserPrincipalName -AddLicenses "nuceedu:STANDARDWOFFPACK_IW_STUDENT" }
# RESET PASS:
- Set-MsolUserPassword -UserPrincipalName lichcongtac@nuce.edu.vn -NewPassword dhxd1234 -ForceChangePassword $False
# GROUP OFFICE 365 (MS TEAMS):
- Add-UnifiedGroupLinks –Identity "Phòng 4T" –LinkType Members –Links lichcongtac@nuce.edu.vn
- Add-UnifiedGroupLinks –Identity "Phòng 4T" –LinkType Members –Links "user1@nuce.edu.vn","user2@nuce.edu.vn"
# THAM KHẢO:
- https://o365info.com/manage-office-365-users-password-using/
- https://morgantechspace.com/2017/12/add-bulk-users-to-office-365-group-with-powershell.html
THAO TÁC VỚI GSUITE QUA DÒNG LỆNH (Cmd.exe và PowerShell)
(Yêu cầu phải tạo App OAuth cho phép gọi Api Services trên console.developers.google.com/)
# Một là dùng GAM (Google Admin Mananger) chạy qua cmd.exe, ko biết cầu hình qua PowerShell hay Bash kiểu gì:
- gam user alert@nuce.edu.vn check serviceaccount
- gam infor domain
- gam info user alert@nuce.edu.vn
- gam update user alert@nuce.edu.vn password 'Nuce@123
# Hai có thể dùng PSGSuite (Power Support Gsuite) chạy qua PowerShell:
- Lưu ý: chỉ thao tác được với loại PowerShell khi cài đặt Module, nếu cài trên PS 7.1 dùng PS 5.1 ko thao tác được.
# Phục hồi email dat46862@nuce.edu.vn
- Get-GSUser dat46862@nuce.edu.vn
- Remove-GSUser dat46862@nuce.edu.vn -Confirm:$false
- Restore-GSUser -User dat46862@nuce.edu.vn -Confirm:$false
Update-GSUser -User lichcongtac@nuce.edu.vn -Suspended -Confirm:$false-
Update-GSUser -User lichcongtac@nuce.edu.vn -OrgUnitPath "/CBVC/Chuyên viên" -Confirm:$false
# Các câu lệnh hay dùng
- Update-GSUser [-User]
[-PrimaryEmail ] [-FullName ] [-Password ] [-ChangePasswordAtNextLogin] [-OrgUnitPath ] [-Suspended] [-Addresses ] [-Emails ] [-ExternalIds ] [-Ims ] [-Locations ] [-Organizations ] [-Relations ] [-RecoveryEmail ] [-RecoveryPhone ] [-Phones ] [-IncludeInGlobalAddressList] [-IpWhitelisted] [-IsAdmin] [-Archived] [-CustomSchemas ] [-WhatIf] [-Confirm] [ ]
# Lấy thông tin người dùng
- Get-GSUser dat46862@nuce.edu.vn
- Get-GSUser lichcongtac@nuce.edu.vn
# Cập nhật số điện thoại và email phục hồi:
- Update-GSUser -User lichcongtac@nuce.edu.vn -RecoveryPhone +84979824615 -Confirm:$false
- Update-GSUser -User lichcongtac@nuce.edu.vn -RecoveryEmail tranvqhn@yahoo.com -Confirm:$false
# Công thức Google sheet
- =CONCATENATE("Update-GSUser -User ", C9, " -Password (ConvertTo-SecureString ", char(34),J9, char(34), " -AsPlainText -Force) -ChangePasswordAtNextLogin:$false -Confirm:$false")
# Reset password a user
- Update-GSUser -User anhtth@nuce.edu.vn -Password (ConvertTo-SecureString "22081987@anh" -AsPlainText -Force) -ChangePasswordAtNextLogin:$false -Confirm:$false