【问题标题】:Powershell connecting to Sharepoint online using Active directoryPowershell 使用 Active Directory 在线连接到 Sharepoint
【发布时间】:2020-09-04 11:30:28
【问题描述】:

首先,我使用的是 Windows 7,我是这台机器的完整管理员 我试过其他机器,也以管理员身份运行过

我只是一个共享点网站集管理员

在 powershell 中,我们在线连接到 Sharepoint。在此过程中,如果我使用 Connect-PnPOnline -Url $masterSiteUrl -useweblogin,会提示我输入用户名,但下一个屏幕是空白的并停留在那里。

当我查看该页面的源代码时,我得到 d>重定向....myshn.net/certcheck" method="POST">

我确实启用了脚本,有时我遇到了证书问题,我点击了“安装证书”虽然我不确定它做了什么,但它仍然不起作用 我也试过 -SPOManagementShell 和 -ClearTokenCache 并得到以下错误 Connect-PnPOnline :无法使用指定的命名参数解析参数集。 在行:1 字符:1 + Connect-PnPOnline -Url $masterSiteUrl -useweblogin -spoManagementShel ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [Connect-PnPOnline], ParameterBindingException + FullyQualifiedErrorId : AmbiguousParameterSet,SharePointPnP.PowerShell.Commands.Base.ConnectOnline

【问题讨论】:

  • 这是一个 Azure/O365 身份验证问题,而不是特定于 PowerShell 的问题。连接到 O365 资源与您的本地 AD 或 AD 用户帐户或您使用的操作系统无关。它与您的 Azure 和 SPO 身份和权限有关。如果您通过 Azure 门户直接访问 SPO,您是如何登录的?您需要正确配置。 See the docs on that topic.
  • 当我访问 azure 站点时,它会使用我的 AD 公司帐户自动登录,无需密码,我只需输入我的电子邮件
  • 这只是意味着他们通过您的内部 IdP 在 Azure 门户中启用了 eSSO,但您必须点击登录页面才能传递凭据(它会获取您的凭据,将请求传递给 AAD,然后传递这个到您的 IdP,验证您并允许您进入)。与 PowerShell 连接时,这不是一回事。您没有通过登录页面,因此 eSSO 不是一个东西。使用自动化时,您必须将连接请求中的显式凭据传递给 Azure/O365。有关使用 PowerShell 登录 Azure/O365 的信息,请参阅 MS 文档。
  • 使用powershell登录时,我尝试了以下Username = email and password = ADPassword Username = email, password = CompanyName username = email, password=""

标签: powershell active-directory sharepoint-online


【解决方案1】:

看到这个:

Connect to all Office 365 services in a single Windows PowerShell

还有这个……

Connect to all Office 365 Services PowerShell - Supports MFA too

使用我们的一体化 PowerShell 脚本,您可以连接到所有 Office 365 服务使用单个 cmdlet。它同时支持 MFA 和非 MFA 帐户 -Exchange Online -Azure AD -SharePoint Online -Skype for 商务在线-安全与合规中心-团队

Download: ConnectO365Services.ps1

O365_Logon 1.1

O365 登录 cmdlet 可帮助 IT 管理员。在这个模块中,有 是几个 cmdlet,它们简化了登录到各种 O365 组件。

【讨论】:

  • 我认为您需要在 O365 站点上提升访问权限才能做到这一点?
  • 不,您只需要身份验证和正确的权利/特权即可对目标采取行动,在您的情况下为 SPO。 SPO 权限/privs 与 PowerShell 无关,Powershell 永远不会知道或不需要知道它们。
  • 我还在研究这个,它目前不起作用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-23
  • 2014-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多