Is there a way to identify users within SQL Server that have not accessed a database within 30 days?
You can enable the "Audit-Level" server property to record logins in the SQL Server log and Windows Application Event Log. Then you would have to parse and analyze these logs to get what you're after.
You could also use the SQL Profiler in a similar fashion.
The C2 level auditing available in SQL Server is probably way overkill for you.
Then there are some third party tools available from companies like Idera.
Here is a link with some further discussion: