(Identity) Attribute Based Access Control (ABAC) can be written into the Smart Contract rather than the NodeSDK client app.
With Fabric 1.4 and the new programming model, the Client Identity object is included in the Context object and you can examine the attributes and write your access control logic based on these.
This is the doc for the client identity object.
And there is a short section about ABAC in the Fabric CA docs.
(ABAC requires that you add attributes to the users when they are registered! )
You could consider using the beforeTransaction() as a place to implement your access control.
There is a "shell" of how this could be implemented in a typescript example.