Found a way to do that
Define a new role for Non-Auth users. Edit the role permissions
-See hidden categories -> Prohibited
-View hidden Courses -> Prohobited
Then that user is not be able to see the category or course even by searching for it.
This is what I hope
Thanks everyone.
BR , Peshali