Unauthorized: The owner of the executing script is defined outside the context of the object being accessed. The script has proxy roles, but they do not apply in this context.
You recently had a message like this (with verbose security. without it will just be something like: Unauthorized. Access to 'object' denied.):
Unauthorized: The owner of the executing script is defined outside the context of the object being accessed. The script has proxy roles, but they do not apply in this context.. Access to 'object' of (Products.DCWorkflow.Expression.StateChangeInfo instance at 0x...) denied. Access requires one of the following roles: ['Manager', 'Owner', 'Reviewer']. The executing script is (PythonScript at /site/portal_workflow/my_workflow/scripts/myScript), owned by <PropertiedUser 'admin'>.
Of course you did everything to make sure your workflow script works and gave it Manager proxy role... you never know...
Now my advice: try it without the proxy role and just make sure the user has the "Access contents information" permission.
I do not know exactly WHY this occurs, but just removing the proxy role worked for me. Comments that explain the reason are welcome :)

Author: