如何避免在 SQL 服务器代理中弹出凭据 Powershell 窗口?



我一直在努力使我的powershell脚本用于通过SQL Agent将数据从Sharepoint列表提取到sql服务器。为此,我正在使用SharePointPnPPowerShellOnline模块并添加了以下代码以自动获取凭据。

$filePath="https://AnyCompany.sharepoint.com/teams/AnySite"
Connect-PnPOnline -Url $filePath -UseWebLogin

但是当我把它放在sql代理中时,它不像在powershell甚至任务调度程序中那样工作。

错误消息 通过错误消息,我发现问题出在此凭据弹出窗口上。那么我怎样才能避免这种情况呢?如何在不放置这行代码的情况下获得与 SharePoint 网站的连接。

下图显示了我的设置,最后一行代码导致了错误。 我当前的工作设置

真诚地,我将不胜感激任何指导。

嗨路易斯·安东尼奥·埃斯皮诺萨,

如果不希望 cmdletConnect-PnPOnline弹出登录窗口,为什么不在脚本中对凭据进行硬编码:

$Username='abc@contoso.onmicrosoft.com'
$Password = '*****'
#region Credentials
[SecureString]$SecurePass = ConvertTo-SecureString $Password -AsPlainText -Force 
[System.Management.Automation.PSCredential]$PSCredentials = New-Object 
System.Management.Automation.PSCredential($Username, $SecurePass) 
#endregion Credentials
#connect to site
Connect-PnPOnline -Url $filePath -Credentials $PSCredentials

最新更新