Comments (5)
Hey @tlester thanks for subbmitng your idea! Im struggling to get the concept do you have any more examples or info ? Given the below:
type User {
name: String
}
extend type User @auth(rules: [{
operations: [CREATE],
isAuthenticated: true,
query: {
match: "allen",
gql: `users(where: {name: "bob"}) { name }`
}
}])
Then someone performs a CREATE
operation:
mutation {
createUsers(input: [{ name: "SOME NAME" }]) {
users {
name
}
}
}
Where and how does the below query
bit get incorporated with this mutation?
query: {
match: "allen",
gql: `users(where: {name: "bob"}) { name }`
}
from graphql.
I need to have a flexible option validate date as a condition for authenticity.
I find myself especially intrigued by this use case, an example of how and where you might use this could really provide some clarity here.
from graphql.
@tlester Would my suggested feature #163 satisfy your needs? The @cypher
directive can already handle parameters, and you'd have full access to the power of Cypher (not just GraphQL) in determining the conditions for your validation.
from graphql.
I need to have a flexible option validate date as a condition for authenticity.
I find myself especially intrigued by this use case, an example of how and where you might use this could really provide some clarity here.
This would be especially useful in places where you need tenant based auth, if you have numerous "organizations" and "suborganizations" and you want to have RBAC style roles
Something like ${teamId}:admin
, ${teamId}:owner
, ${teamId}:guest
where teamId
is populated from based on the query.
I'm having a hard time using the @auth
directive to make tenant based roles and permissions. I believe this is possible with allow
but my rules are looking way more complex than I think they should.
I go into a bit of detail about my use case in #163
from graphql.
This is not something we're ever going to do - auth is a big enough beast as it is and is overdue a much needed refactor, but GraphQL within a directive definitely won't be a part of it - far too meta!! 😆 In the interest in making some progress on the feature backlog, closing this one.
from graphql.
Related Issues (20)
- Neo4jError: Variable not defined caused by authorization filters HOT 4
- Model.find({where: {id}}) returns wrong output. HOT 6
- Regression on ID scalar type filtering HOT 8
- Neo4jError: Variable `<propertyName>Count` not defined HOT 5
- Error "Cannot return null for non-nullable field" when limit exceeds result count in queries with non-nullable fields HOT 2
- Authorization rules can't compare enum property with context HOT 3
- Compatibility of @neo4j/graphql with neo4j-driver HOT 16
- GraphQL parsing issue with `[[String!]]!` HOT 2
- Filtering issue in `@authorization` directive HOT 2
- Nested mutation with deep connect inside a create is failing with the error- Neo4jError: Variable `this` already declared HOT 3
- Creating distinct relationships on interface field no longer possible since v5 if the interface does not include common identifier HOT 5
- @authentication doesn't work HOT 4
- ```authorization doesn't work``` HOT 1
- How to make custom resolver for create users
- Custom resolver for auto-generated resolvers HOT 2
- Spatial type projection fails if the `srid` is included in the SelectionSet HOT 2
- Generated `*OnCreateInput` types do not include fields to connect/create types with `@relationship` directives HOT 10
- Authorization filter causing undefined error HOT 2
- graphql-ogm with aggregations and full text searches HOT 1
- @neo4j/graphql:auth TypeError: Key for the RS256 algorithm must be one of type KeyObject or CryptoKey. Received an instance of Buffer HOT 17
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from graphql.