then a user can first disable trigger and do the operation.
I have already addressed this, but maybe I was not clear enough. The answer to your question is that you minimise the number of people who can disable the trigger. In production database, only the DBA team should have those permissions.
That is not always good enough, and in that case SQL Server Audit may also be worth considering. Audit can be turned off, but at least the audit log will have information about that. However, setting up an Audit is a DBA task, and nothing you would do as a developer.