当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何获取 SharePoint 中的托管帐户密码?

作者:精品下载站 日期:2024-12-14 13:42:03 浏览:11 分类:玩电脑

如何获取 SharePoint 中的托管帐户密码?


SharePoint 托管帐户功能是在其 2010 版本中引入的,当然,它是管理服务帐户的一项出色功能(我记得那些日子。我们过去常常创建一个批处理文件来更新 SharePoint 2007 中所有内容的密码!)。

[玩转系统] 如何获取 SharePoint 中的托管帐户密码?

因此,我们利用 SharePoint 2013 中的托管帐户,启用自动密码更改。一切都很顺利,直到我们需要特定管理帐户的密码来安装第三方附加组件!幸运的是,找到了这个脚本来获取 SharePoint 中的托管帐户密码。

重要提示:您必须以场管理员身份运行此脚本!并确保您以“管理员”身份运行脚本!

恢复 SharePoint 托管帐户密码

以下是用于检索 SharePoint 托管帐户密码的 PowerShell 脚本:


Add-PSSnapin Microsoft.SharePoint.Powershell -ErrorAction SilentlyContinue

function Bindings()
{
 return [System.Reflection.BindingFlags]::CreateInstance -bor
 [System.Reflection.BindingFlags]::GetField -bor
 [System.Reflection.BindingFlags]::Instance -bor
 [System.Reflection.BindingFlags]::NonPublic
}
function GetFieldValue([object]$o, [string]$fieldName)
{
 $bindings = Bindings
 return $o.GetType().GetField($fieldName, $bindings).GetValue($o);
}
function ConvertTo-UnsecureString([System.Security.SecureString]$string)
{
 $intptr = [System.IntPtr]::Zero
 $unmanagedString = [System.Runtime.InteropServices.Marshal]::SecureStringToGlobalAllocUnicode($string)
 $unsecureString = [System.Runtime.InteropServices.Marshal]::PtrToStringUni($unmanagedString)
 [System.Runtime.InteropServices.Marshal]::ZeroFreeGlobalAllocUnicode($unmanagedString)
 return $unsecureString
}

Get-SPManagedAccount | select UserName, @{Name="Password"; Expression={ConvertTo-UnsecureString (GetFieldValue $_ "m_Password").SecureStringValue}}

此脚本解密并检索所有 SharePoint 2010/SharePoint 2013 托管帐户密码及其用户名。

相关文章:如何获取IIS应用程序池密码?

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯