Open
Description
Hello,
I'd like to systematically enforce authorization for nodes and individual fields within the nodes.
Conceptually something like this might work:
class MyNode(AuthZSQLAlchemyObjectType):
class Meta:
model = MyModel
authorize_node_function = node_authorizer
field_auth = dict(
"name": all_authorizer,
"private_things": self_only_authorizer,
)
node_authorizer(model_instance)
would get called whenever a new Node of that type is created. Only fields in the field_auth dict would be exposed in node, and then the associated function would be called like resolve_authorizer(model_instance, field_name)
Any opinions on the best way to achieve this?