AI OnAI Off
I don't think Geta Not Found Handler has been built with this in mind. Some of the more bulk operations may well by pass this and you'd have to intercept a lot more such as the creation of new rules etc. It's probably worth raising an issue on their repository for advice and tagging marisks: https://github.com/Geta/geta-notfoundhandler/issues
Geta Not Found Handler confirmed that they don't have any plans to add this feature and my services.Intercept approach can be used, so ultimately that's what I used (of course with better implementation).
This question is specific for Geta.NotFoundHandler, but it could be more general question about restricting other Admin functionalities per account role/website.
Our solution has multiple websites with separate roles for access. We're using Geta.NotFoundHandler and I'm looking for a way to restrict access for redirects per role. For example if account has a role with access only to website X, then only redirects with hostname of website X should be visible for editing.
Apart from creating a change request in Geta.NotFoundHandler github I thought about using services.Intercept to intercept IRedirectsService (or even more interfaces if required) and changing returned results based on current url, matched website and current user roles.
Is there a better way to do this than intercepting service? Did someone already created something similar for this module or other admin functionalities?
This is example (through ACL as somehow UIRoleProvider could not be resolved with serviceProvider or ServiceLocator) which can be treated as work in progress, but it shows base logic: