Trình quản lý thông tin đăng nhập Windows cho phép lưu thông tin đăng nhập (tên người dùng và mật khẩu) để truy cập tài nguyên mạng, trang web và ứng dụng. Với Windows Credential Manager, bạn có thể tự động kết nối với các tài nguyên từ xa mà không cần nhập mật khẩu. Các ứng dụng có thể tự truy cập Trình quản lý thông tin xác thực và sử dụng mật khẩu đã lưu.
Nội dung:
- Sử dụng Trình quản lý thông tin đăng nhập để lưu trữ mật khẩu trong Windows
- Truy cập Trình quản lý thông tin đăng nhập Windows từ PowerShell
Sử dụng Trình quản lý thông tin đăng nhập để lưu trữ mật khẩu trong Windows
Trình quản lý thông tin xác thực đã xuất hiện trong Windows 7 và được định vị là một nơi khá an toàn để lưu giữ mật khẩu của bạn.
Trình quản lý thông tin xác thực trên Windows 10 có thể giữ các loại tài khoản sau:
- Thông tin đăng nhập Windows - thông tin xác thực để đăng nhập vào Windows hoặc để truy cập máy tính từ xa, mật khẩu đã lưu cho kết nối RDP, mật khẩu cho các trang web có hỗ trợ xác thực Windows tích hợp, v.v.; Windows Credential Manager không lưu trữ thông tin đăng nhập tự động Windows hoặc miền Thông tin đăng nhập được lưu trong bộ nhớ cache.
- Thông tin đăng nhập dựa trên chứng chỉ - để xác thực bằng thẻ thông minh;
- Thông tin đăng nhập chung - được sử dụng bởi các ứng dụng của bên thứ ba tương thích với Trình quản lý thông tin xác thực;
- Thông tin đăng nhập web - mật khẩu đã lưu trong Edge và IE, các ứng dụng của Microsoft (MS Office, Teams, Outlook, Skype, v.v.).
Ví dụ:nếu bạn bật “Save Password
”Khi truy cập thư mục mạng chia sẻ, mật khẩu bạn nhập sẽ được lưu trong Trình quản lý thông tin đăng nhập.
Theo cách tương tự, mật khẩu để kết nối với máy chủ RDP / RDS từ xa được lưu trong máy khách Kết nối Máy tính Từ xa (mstsc.exe).
Ngoài ra, Trình quản lý thông tin xác thực giữ mật khẩu của người dùng nếu chúng được lưu bằng lệnh runas / savecred.
Bạn có thể truy cập Trình quản lý thông tin xác thực trong Windows 10 từ Bảng điều khiển cổ điển (Control Panel\User Accounts\Credential Manager
).
Như bạn có thể thấy, có hai mật khẩu trong Trình quản lý thông tin đăng nhập mà chúng tôi đã lưu trước đó.
Mật khẩu đã lưu cho kết nối RDP được chỉ định trong
TERMSRV\hostname
định dạng. Tại đây, bạn có thể thêm thông tin đăng nhập đã lưu, chỉnh sửa nó (bạn không thể xem mật khẩu đã lưu trong giao diện đồ họa) hoặc xóa bất kỳ mục nhập nào.
Ngoài ra, bạn có thể sử dụng giao diện cổ điển của Tên người dùng được lưu trữ và mật khẩu , để quản lý mật khẩu đã lưu. Để gọi nó, hãy chạy lệnh bên dưới:
rundll32.exe keymgr.dll,KRShowKeyMgr
Tại đây, bạn cũng có thể quản lý thông tin đăng nhập đã lưu và nó có một số tính năng sao lưu và khôi phục cho Trình quản lý thông tin đăng nhập (bạn có thể sử dụng chúng để chuyển cơ sở dữ liệu Trình quản lý thông tin đăng nhập sang máy tính khác).
vaultcmd
được sử dụng để quản lý Trình quản lý thông tin xác thực từ dấu nhắc lệnh. Ví dụ:để hiển thị danh sách Thông tin đăng nhập Windows đã lưu, hãy chạy lệnh sau:
vaultcmd /listcreds:"Windows Credentials"
Credential schema: Windows Domain Password Credential Resource: Domain:target=mun-dc01 Identity: RESDOM\j.brion Hidden: No Roaming: No Property (schema element id,value): (100,3) Property (schema element id,value): (101,SspiPfAc)
Lệnh sau sẽ xóa tất cả mật khẩu RDP đã lưu khỏi Trình quản lý thông tin xác thực:
For /F "tokens=1,2 delims= " %G in ('cmdkey /list ^| findstr "target=TERMSRV"') do cmdkey /delete %H
Tất cả mật khẩu đã lưu được lưu trữ trong Windows Vault . Windows Vault là một cửa hàng được bảo vệ để giữ bí mật, mật khẩu và thông tin người dùng nhạy cảm khác. Trong Windows Vault, dữ liệu được cấu trúc và trông giống như một tập hợp các mục nhập thuộc một lược đồ Vault. Bộ khóa mã hóa cho các mục nhập Windows Vault được lưu trữ trong Policy.vpol tệp.
Đối với người dùng miền, nó nằm trong %userprofile%\AppData\Roaming\Microsoft\Vault
.
Đối với người dùng cục bộ, bạn có thể tìm thấy nó trong %userprofile%\AppData\Local\Microsoft\Vault
.
VaultSvc dịch vụ phải đang chạy khi sử dụng Trình quản lý thông tin xác thực:
Get-Service VaultSvc
Nếu dịch vụ bị vô hiệu hóa, bạn sẽ thấy lỗi sau khi cố gắng truy cập Trình quản lý thông tin xác thực:
Credential Manager Error The Credential Manager Service is not running. You can start the service manually using the Services snap-in or restart your computer to start the service. Error code: 0x800706B5 Error Message: The interface is unknown.
Nếu bạn muốn ngăn người dùng lưu mật khẩu mạng trong Trình quản lý thông tin xác thực, hãy bật tùy chọn Truy cập mạng:Không cho phép lưu trữ mật khẩu và thông tin xác thực để xác thực mạng Tùy chọn GPO trong Cấu hình máy tính -> Cài đặt Windows -> Cài đặt bảo mật -> Chính sách cục bộ -> Tùy chọn bảo mật.
Sau đó, nếu người dùng cố gắng lưu mật khẩu vào cửa hàng Windows Vault, họ sẽ thấy lỗi sau:
Credential Manager Error Unable to save credentials. To save credentials in this vault, check your computer configuration. Error code: 0x80070520 Error Message: A specified logon session does not exist. It may already have been terminated.
Truy cập Trình quản lý thông tin đăng nhập Windows từ PowerShell
Windows không có lệnh ghép ngắn tích hợp để truy cập cửa hàng PasswordVault từ PowerShell. Nhưng bạn có thể sử dụng CredentialManager mô-đun từ thư viện PowerShell.
Cài đặt mô-đun:
Install-Module CredentialManager
Bạn có thể hiển thị danh sách các lệnh ghép ngắn trong mô-đun CredentialManager:
Get-Command -module CredentialManager
Mô-đun chỉ có 4 lệnh ghép ngắn:
-
Get-StoredCredential
- để lấy thông tin đăng nhập từ Windows Vault; -
Get-StrongPassword
- để tạo một mật khẩu ngẫu nhiên; -
New-StoredCredential
- để thêm thông tin đăng nhập; -
Remove-StoredCredential
- xóa thông tin đăng nhập.
Để thêm thông tin đăng nhập mới vào Trình quản lý thông tin đăng nhập Windows, hãy chạy lệnh sau:
New-StoredCredential -Target 'woshub' -Type Generic -UserName '[email protected]' -Password 'Pass321-b' -Persist 'LocalMachine'
Để đảm bảo rằng có bất kỳ thông tin đăng nhập người dùng đã lưu nào tồn tại trong Trình quản lý thông tin đăng nhập hay không:
Get-StoredCredential -Target woshub
Bạn có thể sử dụng mật khẩu đã lưu từ Trình quản lý thông tin xác thực trong tập lệnh PowerShell của mình. Ví dụ:tôi có thể lấy tên và mật khẩu đã lưu từ Windows Vault dưới dạng đối tượng PSCredential và kết nối với Exchange Online từ PowerShell:
$psCred = Get-StoredCredential -Target "woshub"
Connect-MSolService -Credential $psCred
Để xóa thông tin đăng nhập khỏi Windows Vault, hãy chạy lệnh sau:
Remove-StoredCredential -Target woshub
Bạn không thể hiển thị mật khẩu dưới dạng văn bản thuần túy bằng các công cụ CLI tích hợp sẵn. Tuy nhiên, bạn có thể sử dụng các tiện ích giống Mimikatz để lấy mật khẩu đã lưu từ credman
dưới dạng văn bản thuần túy (xem ví dụ ở đây).