我一直在努力使我的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