Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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
feat(cli): support bypassing Admin API Auth by configuration #9147
feat(cli): support bypassing Admin API Auth by configuration #9147
Changes from 9 commits
ad5e732
48c4941
88c7830
8089d47
2111f54
0395850
b4332c7
c222260
8110123
d2cde14
73ff74b
427782e
d4bf713
477687e
805edce
7665604
bffbf56
3a08b52
aa15642
18c00b5
97a5a8e
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
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.
Why are there duplicate codes?
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.
Do you mean that hint appears in both stdout and log?
opt.lua
checks if allow_admin in config.yaml is correct before APISIX starts. We need to bypass the adminKey check here.init.lua
checks the adminKey when accessing the Admin API (after APISIX starts). We need to bypass check_token, too.That's why I have implemented bypass-logic in two different stage.(before and after the start).
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.
In other words,
opt.lua
does a static check on the configuration file (if it is not 127.0.0.0/24 and the adminKey is empty, APISIX will not start).We also have to bypass the checks here.
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.
If there is repeated code, then it needs to be abstracted into a function