Forum Discussion
Display custom site logo in SharePoint anonymous link
Thanks for info. The only method I found that worked during my trials is publicly sharing the site logo. The user first needs to click on site logo url before they can then open the anonymous link of the document library. The site logo now displays in the anonymous link. Does anyone have any tips on building a flow around this?
Hi, I have found a solution to display the site logo when a folder is accessed through an anonymous link.
This is by giving a special group/user that is created for each sharing link read access to the logo file.
The logo file is normally stored in the "Site Assets" library, and in my test it was enough to grant access just to the single file. No need to allow listing/reading other files in "Site Assets".
Here is what I did, using the "PnP Powershell" module, install/setup instructions at https://pnp.github.io/powershell/index.html
As they mention, you need a version of the new PowerShell >= 7.2
Connect to SharePoint site:
Connect-PnPOnline https://<tenant>.sharepoint.com/sites/<sitename> -Interactive
List groups for that site with details. There should be one or multiple groups named "SharingLinks...", in the Description field it says for which folder the group was created.
Take note of the ID string in the group name, to compare in the next step.
Get-PnPGroup | fl
List users for the site with details. There should be one or multiple users named "SLinkClaim...", these are the users that represent the access permissions each sharing link has.
Look for the ID from the previous step in the username to find the one you want.
Get-PnPUser | fl
Give read permission to the logo file. First list the items in the "Site Assets" library and take note of the Id number.
The library name given in the Powershell command is localized to your tenant/language,
so for example in German "Site Assets" is called "Websiteobjekte". The Permission level (Read) is also localized, here it is "Lesen".
Get-PnPListItem -List "Websiteobjekte"
Set-PnPListItemPermission -List "Websiteobjekte" -Identity <FileId> -User SLinkClaim.0640... -AddRole "Lesen"