Sharepoint - Why is SharePoint_Shell_Access permission required to run SharePoint powershell?
The SharePoint_Shell_Access role gives you access to the content databases and the configuration database, and permission to execute the stored procedures. The farm administrator (not to be confused with the farm account) does not automatically have access to the content dbs.
It can also grant you the role of "difficult SharePoint person" from the perspective of the DBAs.
Background information on TechNet.
I believe it's permission related, we didn't have as much resistance in doing that here, but I think the reason is this:
In order to use PowerShell, an administrator must be assigned the SharePoint_Shell_Access role on any databases against which PowerShell will be used. For example, to perform tasks that read or manipulate data in the configuration database, an administrator must have the SharePoint_Shell_Access role for the configuration database. Likewise, to work with a specific site collection, the admin must have the SharePoint_Shell_Access role for the appropriate content database.
Read more at SharePoint Service Account Best Practices 2019/2016