The Last Changed By column shows the last user to alter an object.
SQL Source Control gets the Last Changed By information from the default trace, and will store the details in tempdb by default.
If the column shows Unknown instead of a username, the documentation here lists possible causes.
Of the causes listed, lack of permissions to the default trace and/or tempdb are the most common. Either case will result in the warning, "SQL Source Control uses the default trace to work out which user made which change. You don't have the correct permissions to access the default trace, so the information isn't available."
If you see this warning, make sure that the user has:
- ALTER TRACE and VIEW SERVER STATE permissions to access the default trace.
GRANT ALTER TRACE TO user
GRANT VIEW SERVER STATE TO user
- EXECUTE and ALTER permissions on tempdb
GRANT EXECUTE TO user
GRANT ALTER TO user
Note: If granting access to tempdb is not possible, you can configure SQL Source Control to use a custom Changelog database instead.