首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何用PowerShell传递Office365门户登录页面

如何用PowerShell传递Office365门户登录页面
EN

Stack Overflow用户
提问于 2019-05-13 20:20:15
回答 1查看 1.5K关注 0票数 0

我正在尝试写PowerShell脚本,这将检索一些信息从Office365门户网页,特别是名称和一些自定义应用程序的网址。我计划使用Invoke-WebRequest命令并解析结果,但问题是我无法通过Office 365身份验证页面。当我键入时:

代码语言:javascript
复制
Invoke-WebRequest -Uri "https://myapps.microsoft.com" -UseBasicParsing

我收到以下结果:

代码语言:javascript
复制
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应用程序的页面?

EN

回答 1

Stack Overflow用户

发布于 2019-05-14 03:30:14

您说得对,为了访问Office365API,您需要先进行身份验证并获取authentication token。为了使用PowerShell访问Office365API,您实际上需要执行几个步骤,这对于SO答案来说太过宽泛,我建议您阅读文档:Get started with Office 365 Management APIs,其中它完成了所有步骤:

在Azure AD中注册你的应用程序。若要允许你的应用程序访问

  1. Register 365管理API,你需要在Azure AD中注册你的应用程序。这允许你为应用程序建立标识,并指定访问APIs.
  2. Get Office 365租户管理员同意所需的权限级别。 365租户管理员必须明确授予同意,才能允许你的应用程序通过Office 365管理API访问其租户数据。同意过程是一种基于浏览器的体验,需要租户管理员登录Azure AD同意UI并查看您的应用程序正在请求的访问权限,然后批准或拒绝请求。在授予同意之后,UI将用户重定向回您的应用程序,并在URL中添加一个授权码。您的应用程序对Azure AD进行服务到服务调用,以将此授权码交换为访问令牌,该令牌包含有关租户管理员和您的应用程序的信息。租户ID必须从访问令牌中提取并存储,以便将来从Azure AD访问令牌。使用您在Azure AD中配置的应用程序凭据,您的应用程序将持续为同意的租户请求其他访问令牌,而无需进一步的租户管理员交互。这些访问令牌称为仅应用令牌,因为它们不包括有关租户admin.
  3. Call Office 365管理API的信息。将仅应用访问令牌传递到Office 365管理API以对您的application.

进行身份验证和授权

另一个教程是Getting started with Microsoft Graph and PowerShell

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56112245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档