My research has led me to believe that the standard for checking your own permissions in a sql server database is to use fn_my_permissions, but I'm running into a situation where users have somehow lost the SELECT permission on fn_my_permissions, rendering this method unusable.
Are there any alternatives to fn_my_permissions (or workarounds to this specific problem), or is a user in this situation effectively unable to check their own permissions?
You can query sys.database_permissions. The below is from the MSDN page.
http://msdn.microsoft.com/en-us/library/ms188367.aspx