我正在尝试写PowerShell脚本,这将检索一些信息从Office365门户网页,特别是名称和一些自定义应用程序的网址。我计划使用Invoke-WebRequest命令并解析结果,但问题是我无法通过Office 365身份验证页面。当我键入时:
Invoke-WebRequest -Uri "https://myapps.microsoft.com" -UseBasicParsing
我收到以下结果:
StatusCode : 200
StatusDescription : OK
Content :
<!DOCTYPE html>
<html dir="ltr" class="" lang="en">
<head>
<title>Sign in to your account</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-eq...
RawContent : HTTP/1.1 200 OK
Pragma: no-cache
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
Link: <https://aadcdn.msftauth.net>; rel=prec...
Forms : {}
Headers : {[Pragma, no-cache], [Strict-Transport-Security, max-age=31536000; includeSubDomains], [X-Content-Type-Options, nosniff], [X-Frame-Options, DENY]...}
Images : {}
InputFields : {}
Links : {}
ParsedHtml : mshtml.HTMLDocumentClass
RawContentLength : 32302
如果我运行不带UseBasicParsing参数的命令,浏览器将打开https://login.microsoftonline.com/cookiesdisabled页面。有没有办法指定登录凭据,以便PowerShell可以通过登录窗口并访问包含Office365应用程序的页面?
发布于 2019-05-14 03:30:14
您说得对,为了访问Office365API,您需要先进行身份验证并获取authentication token。为了使用PowerShell访问Office365API,您实际上需要执行几个步骤,这对于SO答案来说太过宽泛,我建议您阅读文档:Get started with Office 365 Management APIs,其中它完成了所有步骤:
在Azure AD中注册你的应用程序。若要允许你的应用程序访问
进行身份验证和授权
https://stackoverflow.com/questions/56112245
复制相似问题