Today at the user group meeting one of the attendees had a nice idea to hide data in a list from the SharePoint interface. He created one list item with a title “You should not be here”. Then he made that item the only visible item in the default view. The he made the list accessible through PowerApps it this was the process the make it harder to access the data as a normal user.
Administrators can look at the data (if really needed with personal views), while permissions for normal users do not include updating of views.
I would probably also disable the list items within search.
I then started to think about this and hidden lists. How do you create hidden lists without code? First I created a new list.
Hey, who changed the create a list interface?
Then when the list was created a few powershell commands did the trick
Connect-PnPOnline https://pieterveenstramvp.sharepoint.com -UseWebLogin
$list = Get-PnPList -Identity MyNewList
As mentioned by Bill in the comments below you can also use:
Set-PnpList -Identity MyNewList -Hidden $true
Alternatively if you need the hidden list to be part of a template you can also use Apply-PnpProvisioningTemplate of course.
Rather than hiding data using views, if you want to hide all data in a list from users then hiding the full list might be the better option.