No, that was not the fix! That can be a huge security problem!
Setting a database as trustworthy is OK, if everyone who has db_owner or db_securityadmin access in the database, also has sysadmin permissions - and there will never be anyone in the future who will have limited permissions.
To wit, anyone who has db_owner, but is not sysadmin can do EXECUTE AS as a sysadmin user, and then have sysadmin access on the server.
It is not exactly clear what you are doing. The scheme you describe should work if the users are added in the database and you don't attempt to add resources outside the database. But maybe you should do EXECUTE AS LOGIN instead.
There is all reason to investigate if you can do it without TRUSTWORTHY.
Erland Sommarskog, SQL Server MVP, www.sommarskog.se