在 Sharepoint 管理中心查找 SITEID

Find SITEID in sharepoint admin center

我正在 Sharepoint 的管理中心查找 siteID,但找不到。我可以通过 graphAPI 获取它,但我也需要通过管理中心找到它,原因是我们的客户有多租户应用程序,他们希望每个租户在应用程序中输入他们自己的 sharepoint/graphAPI 设置。

我认为无法从 SPO 管理中心获取 SharePoint Online 网站的网站 ID。您可以使用 Microsoft Graph、SharePoint Online PowerShell、客户端对象模型 (CSOM) 等。此外,如果您在浏览器中导航到某个站点并将“/_api/site”附加到 URL,您可以看到该站点的 Guid,但您需要解析 XML 响应。

似乎没有办法在 CA 中获取站点 ID。

我写了一个 pnp powershell 脚本来获取所有站点 id 供您参考。

$username = "amos@contoso.onmicrosoft.com"
$password = "Password"
$cred = New-Object -TypeName System.Management.Automation.PSCredential -argumentlist $userName, $(convertto-securestring $Password -asplaintext -force)

$TenantSiteURL =  "https://contoso-admin.sharepoint.com/"
$CSVFilePath = "C:\Temp\AllSitesData.csv"

#Connect to Tenant Admin Site
Connect-PnPOnline -Url $TenantSiteURL -Credentials $cred
$sites=Get-PnPTenantSite -Detailed
$listItemData=@()
foreach($site in $sites){
    Connect-PnPOnline -Url $site.Url -Credentials $cred

    #Get the site collection with ID property
    $Site = Get-PnPSite -Includes ID

    $listItemData += New-Object PSObject -Property @{
        "Site Url" = $site.Url
"Site Collection ID" = $Site.Id                 

}            
}
$listItemData |Export-Csv -NoTypeInformation -Path $CSVFilePath

如上所述,您需要访问管理中心。不要使用 Get-PnPTenantSite,而是使用

(Get-PnPListItem -List DO_NOT_DELETE_SPLIST_TENANTADMIN_AGGREGATED_SITECOLLECTIONS -PageSize 5000) | Where-Object { <#YOUR CRITERIA#> }