-
Notifications
You must be signed in to change notification settings - Fork 2
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
TheGraph Auth-Layer-Proxy #43
Conversation
a9b1ada
to
dda5e8a
Compare
… of a long term final solution. Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
…s and improved a little on the docs instructions, also moved the copy of the filters from the mapping volume on the docker-compose to the Dockerfile, so those files can be copied and included with the image at build time Signed-off-by: Alfredo Gutierrez <[email protected]>
…k on productization Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
…ill no longer be needed. Signed-off-by: Alfredo Gutierrez <[email protected]>
…t all on the same script. Added SHA-256 function to hash received token before comparing it to db. Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
… instrospection endpoint instead of checking it agasint postgres, added validations and descriptive errors. Cleanup Dockerfile to only include the needed dependencies. Updated example.env with needed env variables Updated README.md with new instructions Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Added GHA WF for running unit tests as part of CI pipeline Improvements to Readme with instructions on how to run tests Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
Signed-off-by: Alfredo Gutierrez <[email protected]>
a76805c
to
fff4e0e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good.
minot items
.github/workflows/proxy-tests.yml
Outdated
@@ -0,0 +1,50 @@ | |||
name: Tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Auth Layer Proxy Tests
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Done!
auth-layer-proxy/README.md
Outdated
linkStyle 4 stroke:#00ff00,stroke-width:2px; | ||
|
||
``` | ||
More information on the **Authorization Layer** can be found [here](link) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What link is this to?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It was a placeholder for when the doc was merged into main.
now that is already merged I fixed the link with the appropiate url
✅ done
auth-layer-proxy/README.md
Outdated
@@ -0,0 +1,184 @@ | |||
# Readme | |||
|
|||
This is a token verification auth-layer-proxy for Hedera-The-Graph implementation that will allows a node operator to publish a secured `admin port` of the-graph deployment for hedera. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit:
This is a token verification auth-layer-proxy for Hedera-The-Graph implementation that will allows a node operator to publish a secured `admin port` of the-graph deployment for hedera. | |
This is a token verification auth-layer-proxy for Hedera-The-Graph implementation that will allow a node operator to publish a secured `admin port` of the-graph deployment for Hedera. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Done!
auth-layer-proxy/README.md
Outdated
} | ||
``` | ||
|
||
For instructions on how to set-up the Auth Provider using KeyCloak, refer to the `Auth-Layer-Server` [README](link) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Update link
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It was a placeholder for when the auth-layer-server was already merged, now that is merged I have updated with the approapiate URL. thanks for noticing!!
✅ Done
Signed-off-by: Alfredo Gutierrez <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Description:
Productization of Envoy Proxy as Auth Layer Proxy, for validating the request token and params and deciding if it has the appropiate permissions to access the index Admin API of HederaTheGraph deployment.
Is meant to secure the Admin Endpoints for authorized developers only assigned subgraphs.
Added Unit Tests to comply that the VerificationTokenFilter is working as expected.
Related issue(s):
Fixes #
Notes for reviewer:
Tests CI is already included on this PR and running, you can checkout the coverage and details of the run here:
https://github.com/hashgraph/hedera-the-graph/actions/runs/8384795289/job/22962691770?pr=43
or by following the details.
The 2 steps that show the results are:
Run Tests
andGenerate Console Report
Checklist