Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a new blog article Open Source GraphQL security & add Nohe from Escape among authors #1464

Merged

Conversation

AlexandraC0
Copy link
Contributor

No description provided.

@dotansimha dotansimha requested a review from Urigo October 31, 2023 14:23
@n1ru4l
Copy link
Member

n1ru4l commented Nov 2, 2023

@nohehf
Copy link
Contributor

nohehf commented Nov 2, 2023

Hey @n1ru4l, author here, ran prettier and changed headings to comply with your linter :)

@AlexandraC0
Copy link
Contributor Author

Hi @n1ru4l Is everything ok now? :)

Copy link
Member

@Urigo Urigo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is really great and I'm really happy for this (sorry it took me a while to review)

I've added some comments and I'll also add that usually in our blog we try to keep the general writing short and to the point
I think in general there are some things that could be made shorter but overall this is a great post and I can't wait to get it out!

website/pages/blog/open-source-graphql-security.mdx Outdated Show resolved Hide resolved
website/pages/blog/open-source-graphql-security.mdx Outdated Show resolved Hide resolved
well-established and with a lots of queries on a daily basis, ensuring their security becomes
crucial.

In this exploration, we'll dive into how these open-source practices are important and benefic for
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
In this exploration, we'll dive into how these open-source practices are important and benefic for
In this exploration, we'll dive into how these open-source practices are important and benefits for

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think both works here, with slightly different meanings, but I'll do as you prefer :)

spreading the word about new dangers fast and wide. It’s our shared language and memory for
cybersecurity issues, helping us all to better safeguard our digital spaces from known threats.
Making sure that vulnerabilites are made public can seem counter-intuitive at first glance, but is a
massive need to ensure that fixes or other security measures are deployed rapidely and widely.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a very important point but that I think a lot of people don't get.
I think giving very known examples on how the most secure things are open source is important.
We need to have a very clear explanation of why open source things are safer

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed, I'll try to make this clearer and more impactful


### Defensive Tools

1. **[GraphQL Shield](https://github.com/dimatill/graphql-shield)**
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would place GraphQL Armor first - we know its maintained

GraphQL Shield is a bit less maintained - I wonder if Escape would be interested in helping also maintain this project?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're right! I don't know if we have bandwidth currently and we don't use it ourselves, but why not in the future!

- **Videos**: Discover visual insights through a collection of videos curated by
[GraphQL WTF](https://graphql.wtf/). Although not strictly centered around security,
understanding various facets of GraphQL enhances your capability to architect, implement, and
secure GraphQL APIs more effectively.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would also link to this part on graphql.org: https://graphql.org/learn/authorization/

And in general, I think Escape could contribute a lot to the best practices section of graphql.org around security!

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed, I'll present this idea, would be nice to add a security part in the official docs!


But hey, let’s not stop there! **Contribute, Engage, Elevate.** That’s the open-source mantra. Your
expertise could well be the next big leap forward for GraphQL tools and platforms. Check out these
awesome [GraphQL projects](https://github.com/chentsulin/awesome-graphql) and see where your skills
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't want to link to that page - better to link to graphql.org/code
awesome graphql is not well maintained and its not really ordered and there are many unmaintained resources there

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make sense, I will add graphql.org/code & maybe https://github.com/Escape-Technologies/awesome-graphql-security ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I forgot this change, adding it. Tho I agree awesome graphql is not really up to date, but neither is https://graphql.org/code/ + it's really not accessible ://

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great

@nohehf
Copy link
Contributor

nohehf commented Nov 20, 2023

Hey @Urigo thanks for this qualitative review! I applied the changes and tried to simplify some parts of the article. Let me know if anything else comes to your mind!

PS: ping @AlexandraC0 fyi

Copy link
Member

@Urigo Urigo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One last comment


1. **Best Practices**

- [Automatic persisted queries](https://the-guild.dev/graphql/yoga-server/docs/features/automatic-persisted-queries)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think here it suppose to be persisted queries (or in their new name "trusted queries") and not automatic persisted queries, which are actually not secure?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, you're right sorry for the confusion. Do you have any docs / tech in mind to link here, I'm not an expert of persisted queries and I don't know the references to be honest. There doesn't seem to be a standard / easy way to do it as of now?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated! Sorry for the delay, I missed your reply

Copy link
Contributor

@beerose beerose left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you update this branch with the latest master? We've just fixed the prose linter action (it helps spot typos, ensures proper wording, maintains language consistency, etc.)

@nohehf
Copy link
Contributor

nohehf commented Dec 5, 2023

Could you update this branch with the latest master? We've just fixed the prose linter action (it helps spot typos, ensures proper wording, maintains language consistency, etc.)

on it :))

@nohehf
Copy link
Contributor

nohehf commented Dec 5, 2023

Should be good, merged master and fixed the CI (by shortening the description under 160 chars)

Copy link
Contributor

@YassinEldeeb YassinEldeeb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we're good to go! failed CI jobs are only because of inaccessible repository secrets.

@YassinEldeeb YassinEldeeb merged commit ccf072a into the-guild-org:master Dec 7, 2023
3 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants