yes and here target audience???!!!
Thus that at that forum it is thrown out both an error, and a context, and on ours - continuous deception
and what about here this nuance? -
If I change a call context on sa fulfills normally. If I produce a command ' execute as user = ' dbo ", procedure on grew ' select suser_name () ' shows ' sa ', but the directory is already inaccessible.
And here all is simple, it is necessary to read the documentation.
Does not happen with execute as login , is only execute as user .
That is why that if only basis not , you restricted yourselves, writing execute as user
Now you only the USER in a procedure context, and never login.
And that to you produces suser_name () = sa;
So it because your basis sa.
Here it also produces.
And make now
select * from sys.fn_my_permissions (null, ' server ')
Also be convinced that no server rights and in are present