当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何在没有租户访问权限的情况下查找 Microsoft 365 租户 ID

作者:精品下载站 日期:2024-12-14 06:38:21 浏览:14 分类:玩电脑

如何在没有租户访问权限的情况下查找 Microsoft 365 租户 ID


任何 Microsoft 365 租户的唯一标识符都是公共信息。这意味着其他人知道您租户的 ID 不会产生直接的安全问题,除了它可以用于社会工程或询问您的安全漏洞,然后可能被利用。

尽管如此,也有一些合理的理由想要知道租户的 ID,例如您是否需要使用任何身份验证机制对其进行身份验证、是否需要建立租户与租户的关系,或者即使您正在更新文档。

让我们看看可用于查找任何 Microsoft 365 租户 ID 的方法。

使用PowerShell

第一个也是我最喜欢的选项是使用 PowerShell。下面,我编写了一个小函数,用于查询公共 API 并返回任何 Microsoft 365 租户的 ID。

Function Find-TenantID {

<#
  .AUTHOR
    Daniel Bradley
    ourcloudnetwork.co.uk

  .DESCRIPTION
    A small PowerShell function to quickly find the tenant ID of any Micorosft tenant using public APIs without authorisation.

  .EXAMPLE
    Find-TenantID -domain ourcloudnetwork.com
#>

     param(
        [Parameter(Position=0,mandatory=$true)]
        [string] $domain
    )

    try {
        $response = Invoke-RestMethod -UseBasicParsing -Uri "https://odc.officeapps.live.com/odc/v2.1/federationprovider?domain=$domain"
    }
    Catch {
        Return "Unable to run request"
    }

    #Return
    $response.tenantid
}

使用下面的示例并将主租户域替换为您自己的域以获得结果。

Find-TenantID -domain ourcloudnetwork.com

如果您输入了有效的域,您的输出应如下所示:

[玩转系统] 如何在没有租户访问权限的情况下查找 Microsoft 365 租户 ID

或者,如果您想将此代码合并到脚本中而不使用函数,则可以使用以下两行来获取租户 ID:

$domain = "ourcloudnetwork.com"
Invoke-RestMethod -UseBasicParsing -Uri "https://odc.officeapps.live.com/odc/v2.1/federationprovider?domain=$domain" | Select -expand tenantid

使用在线工具

另外,为了便于使用,我使用 Next.js 开发了一个在 Azure 应用服务上运行的小型 Web 应用程序,它执行与上述 PowerShell 脚本相同的 API 调用。可以在此处访问该工具:entraid.ourcloudnetwork.com

输入目标租户的主域名,然后点击获取租户ID。租户 ID 将立即返回到文本框。

[玩转系统] 如何在没有租户访问权限的情况下查找 Microsoft 365 租户 ID

使用条件访问

最后一个选项是使用另一个(任何)租户内部的条件访问策略创建向导来枚举使用主域名的任何租户的租户 ID。请按照以下步骤使用条件访问枚举租户 ID:

1. 登录 entra.microsoft.com

2. 展开保护并选择条件访问

3. 选择策略 > 新策略

4. 单击用户,然后在包括下选择用户或外部用户。然后在指定外部 Microsoft Entra 组织下,单击选择并输入租户域名。

[玩转系统] 如何在没有租户访问权限的情况下查找 Microsoft 365 租户 ID

然后,您可以复制并粘贴结果区域中显示的租户 ID。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯