Let's start with what is never going to work, and that is EXECUTE AS. If you put EXECUTE AS in a stored procedure, you are impersonating a database user, and when it comes to impersonation, there is a very important principle: What happens in Vegas, stays in Vegas. That is, the impersonation is only trusted in the security context you perform the impersonation, in this case the database. So that impersonation is not trusted on server level, and even less in Windows, and even less on the NAS.
When it comes to the gMSA, I am under impression that this is something that lives in the AD, and thus can be granted access anywhere in the domain. But I don't work as a DBA, but I am in a developer role, so I have no direct experience of gMSA.
But you also talk of a proxy account. If you are running your job as an CMDExec job step with a proxy, what counts are the permissions of the Windows user the proxy account maps to, since Agent logs with those credentials.