gpt4 book ai didi

powershell - 本地系统帐户和 Windows 凭据管理器

转载 作者:行者123 更新时间:2023-12-04 11:02:22 25 4
gpt4 key购买 nike

所以,我有一个使用 Windows 凭据管理器来存储凭据的 powershell 脚本。当我使用我的帐户时,我可以访问这些凭据,但是当我尝试使用本地系统帐户(尽量不使用我的帐户来运行脚本)时,它似乎不会从凭据管理器中提取。是什么赋予了?

if (Get-Module -ListAvailable -Name CredentialManager) {
Import-Module CredentialManager
}

else {
Install-Module CredentialManager
}

$service_fqdn = '<SERVER-FQDN>'

$creds = Get-StoredCredential -Target '<SERVICE ACCOUNT>'
$oauth_client_id = $creds.UserName
$oauth_client_secret = $creds.GetNetworkCredential().Password

当我尝试获取 $oauth_client_secret 的密码时出现空错误

最佳答案

问题是所有凭据都被存储并且只有 才能访问。当前登录用户 .

即如果您创建的凭据登录为 user1 ,您不能以 user2 的身份访问它们,甚至 Local System Account .

This makes sense, and can't be worked around. You don't want random logged in people/users to be able to access other people's credentials.



“解决方法”是创建一个具有最小权限的新用户/服务帐户,专门用于运行服务/脚本。然后,您可以将新凭据创建为该新用户/服务帐户:
New-StoredCredential -Target "Server1" -Username "SA-Username" -Password "Password123"

然后以该用户身份运行脚本,您将可以访问凭证。

注意:您不能使用 Local Service Account运行脚本,因为您无法将本地服务帐户明确指定为有效用户来创建新的存储凭据。

关于powershell - 本地系统帐户和 Windows 凭据管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58719473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com