AADSTS700016: Application with identifier '31359c7f-bd7e-475c-86db-fdb8c937548e' was not found in the directory '
'. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You may have sent your authentication request to the wrong tenant. PnP.PowerShell
Pokud se Vám nedaří zaregistrovat do tenantu PnP.PowerShell a vrací se Vám výše uvedená chyba, zde je postup, jak ji lze celkem rychle vyřešit.
Je potřeba zaregistrovat ID aplikace v Microsoft Entra pro PnP PowerShell. Po instalaci modulu PnP.PowerShell postupujte takto:
Register-PnPEntraIDAppForInteractiveLogin -ApplicationName "PnP PowerShell" -SharePointDelegatePermissions "AllSites.FullControl" -Tenant vastenant.onmicrosoft.com -Interactive
Tento příkaz zaregistruje aplikaci v Entra ID. Pozor na identifikátor tenantu (-Tenant) – musíte zadat fallback doménu vašeho tenantu.
![pnp.powershell registred app](https://www.sraga.cz/wp-content/uploads/2025/02/pnp.powershell-registred-app-1024x401.png)
V Entra ID si můžete ověřit, že je aplikace „PnP PowerShell“ skutečně zaregistrovaná a rovnou si poznačte Application ID (= Client ID).
Občas se stane, že výše uvedený příkaz skončí chybou. Alternativně můžete použít příkaz v kontextu Globálního správce:
Register-PnPEntraIDApp -ApplicationName "PnP PowerShell" -Tenant vastenant.onmicrosoft.com -Interactive
Po úspěšném dokončení příkazu bude zaregistrovaná Enterprise Aplikace v Entra ID. I v tomto případě si poznačte Application ID.
Jakmile je aplikace správně zaregistrovaná, lze se k PnP PowerShell připojit následujícím způsobem:
# Enterprise Application ID = Client ID
$ClientID = "cf1fd5c4-XXXXX-XXXXX-XXXXXX-YYYYYYYYYY"
# Connect to Sharepoint site - edit URL parameter
Connect-PnPOnline -url https://vastenant.sharepoint.com/sites/vaseSite -Interactive -ClientId $ClientID
Application ID lze také uložit do systémové proměnné. Já tuto variantu nepoužívám, protože se často hlásím do více tenantů a raději používám proměnné v kódu. Registrace systémové proměnné a připojení k Sharepoint site:
# Enterprise Application ID = Client ID
$ClientID = "cf1fd5c4-XXXXX-XXXXX-XXXXXX-YYYYYYYYYY"
# Add Enterprise Application ID to Environment variable
[System.Environment]::SetEnvironmentVariable("ENTRAID_CLIENT_ID", $ClientID, [EnvironmentVariableTarget]::User)
# Connect to SharePoint Online site
Connect-PnPOnline -Url "https://vastenant.sharepoint.com/sites/vaseSite" -Interactive