【问题标题】:PowerShell - Connecting to Azure Active Directory using Microsoft AccountPowerShell - 使用 Microsoft 帐户连接到 Azure Active Directory
【发布时间】:2018-04-23 21:31:33
【问题描述】:

我有一个 Azure 订阅,其中订阅管理员帐户是 Microsoft 帐户。然后,我添加了另一个 Microsoft 帐户作为共同管理员。有人告诉我,当我添加一个共同管理员时,它会作为Guest 用户添加到我的订阅的默认 AD 中。我真正想要完成的是将用户类型从@​​987654323@ 更改为Member。为此,建议我使用 Azure AD PowerShell,而这正是我苦苦挣扎的地方。

我已经安装了相关的 PS 模块(基于此链接:https://msdn.microsoft.com/en-us/library/azure/jj151815.aspx)。

这就是我正在做的事情:

首先,这是我发出的命令:

$msolcred = get-credential

系统提示我输入我提供的凭据,然后运行以下命令:

connect-msolservice -credential $msolcred

当我这样做时,我收到以下错误:

connect-msolservice : The user name or password is incorrect. Verify your user name, and then type your password again.
At line:1 char:1
+ connect-msolservice -Credential $cred -Verbose
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (:) [Connect-MsolService], MicrosoftOnlineException
    + FullyQualifiedErrorId : 0x80048821,Microsoft.Online.Administration.Automation.ConnectMsolService

我什至尝试将用户名设置为domainname.onmicrosoft.com\username,但仍然得到相同的结果。

所以我的问题是:

  • 是否甚至可以使用 Microsoft 帐户通过 PowerShell 连接到 Azure AD?
  • 如果可能的话,我应该如何指定用户名? usernamedomainname\username 我都试过了,我得到了同样的错误。
  • 如果不可能,那么替代解决方案是什么?我是否应该在该 AD 中创建一个用户并将该用户置于有权管理用户的角色中(因为这是我想要做的)?

我们将非常感谢您对此的任何见解。

【问题讨论】:

    标签: powershell azure azure-active-directory


    【解决方案1】:

    (2018 年 4 月 23 日更新,阐明如何使用 AzureAD (v2) 模块执行此操作。)

    AzureAD (v2) PowerShell 模块接受 Connect‑AzureAD 中的 ‑TenantId 参数,该参数可以是 Guid 租户 ID,也可以是 Azure AD 租户中任何经过验证的域名。这样做将允许您使用外部帐户登录(例如,您的个人 Microsoft 帐户,或者来自另一个 Azure AD 租户的工作或学校帐户,只要此帐户之前曾被邀请加入租户):

    Connect-AzureAD -TenantId "contoso.com"
    

    MSOnline (v1) 模块没有等效参数,但它接受 ‑AdGraphAccessToken‑MsGraphAccessToken,它们是 Azure AD Graph API (https://graph.windows.net) 和 Microsoft Graph API 的访问令牌(https://graph.microsoft.com),分别。虽然您可以使用 ADAL(例如)为您的特定租户(允许您使用外部用户)获取这些访问令牌,但为此为您的 Azure AD 租户创建一个“本地”帐户可能更简单。

    目前不支持使用 Microsoft 帐户登录 AAD PowerShell。您的方法(创建一个“本地”目录的新用户)是可行的方法。

    【讨论】:

    • 谢谢。恕我直言,connect-msolservice 应该有一个参数,我可以在其中指定目标 AD 以进行身份​​验证。这将使这成为可能。
    • 还有比这更多的东西,但这个想法是正确的。您可以在 AAD 反馈网站上投票/添加请求。这与thisthisthis相关。
    • 请注意,Microsoft 正在更新 PS 插件以使用基于浏览器的身份验证,该身份验证应支持 MFA 和其他选项。 blogs.msdn.com/b/paulwu/archive/2015/10/09/… 但它似乎仍然无法在我的 Microsoft 帐户上使用。
    • 2016 年 10 月,您仍然无法使用 Microsoft 帐户来管理 AD :( 他们确实有网络身份验证,但没有选项可以从公司(或学校)帐户切换出去。
    【解决方案2】:

    对于以后遇到这个问题的人来说,之前的答案似乎仍然是正确的。基本上,您必须创建一个目录本地的新帐户。在PowerShell中运行connect-msolservice时可以使用该账号登录,然后可以运行set-msoluser将用户从“Guest”转换为“Member”。

    以下博客文章详细说明了执行此操作的分步说明。请注意,如果您的全局管理员帐户不是工作或学校帐户,则需要先遵循附录。另外,我在博文的评论部分添加了一些重要的细节。

    https://blogs.msdn.microsoft.com/dstfs/2015/12/23/issues-with-azure-active-directory-guest-users-in-aad-backed-visual-studio-team-services-accounts/

    作为参考,可以在此论坛帖子中找到使用 set-msoluser 的类似问题和解决方案: https://social.msdn.microsoft.com/Forums/azure/en-US/469baa2d-7ff1-4e17-a8f0-f257cbdbf50b/cannot-see-the-active-directory-item-in-the-azure-portal?forum=WindowsAzureAD

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-06
      • 1970-01-01
      • 2014-01-06
      相关资源
      最近更新 更多