Skip to content

allowTopicOperationAsync should check the original role is super user (#1355) #7788

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

Merged
merged 2 commits into from
Aug 12, 2020

Conversation

sijie
Copy link
Member

@sijie sijie commented Aug 10, 2020

Motivation

In 2.6.0, allowTopicOperationAsync checks if topic operations are allowed for the original role. But it checks if the proxy role is a super-user by mistake. It should check if the original role is a super-user.

Modifications

Fix the allowTopicOperationAsync to checks if the original role is a super-user role or topic operations are allowed.

The current authorization provider interface is also confused. Because some of the interfaces verify both the proxy role and original role and some don't. The authorization provider doesn't have to care about the proxy role and original role. Hence this pull request refactors the authorization provider to authorize a given role and move the logic of verifying proxy and original roles to AuthorizationService.

Unverified

This user has not yet uploaded their public signing key.
*Modifications*

- We should use the original role to verify if it is allowed for a given topic operation
- use the original authentication data
- Authz provider doesn't have to be aware of proxyRole
- Fix authorization test

Unverified

This user has not yet uploaded their public signing key.
@wolfstudy wolfstudy merged commit 48f5a2f into apache:master Aug 12, 2020
wolfstudy pushed a commit that referenced this pull request Aug 13, 2020
…#1355) (#7788)

* Fix allowTopicOperationAsync logic (#1355)

*Modifications*

- We should use the original role to verify if it is allowed for a given topic operation
- use the original authentication data
- Authz provider doesn't have to be aware of proxyRole
- Fix authorization test

* Refactor authorize logic to provide a uniform authorization behavior

(cherry picked from commit 48f5a2f)
huangdx0726 pushed a commit to huangdx0726/pulsar that referenced this pull request Aug 24, 2020
…apache#1355) (apache#7788)

* Fix allowTopicOperationAsync logic (apache#1355)

*Modifications*

- We should use the original role to verify if it is allowed for a given topic operation
- use the original authentication data
- Authz provider doesn't have to be aware of proxyRole
- Fix authorization test

* Refactor authorize logic to provide a uniform authorization behavior
jerrypeng pushed a commit to jerrypeng/incubator-pulsar that referenced this pull request Aug 24, 2020
…apache#1355) (apache#7788)

* Fix allowTopicOperationAsync logic (apache#1355)

*Modifications*

- We should use the original role to verify if it is allowed for a given topic operation
- use the original authentication data
- Authz provider doesn't have to be aware of proxyRole
- Fix authorization test

* Refactor authorize logic to provide a uniform authorization behavior
lbenc135 pushed a commit to lbenc135/pulsar that referenced this pull request Sep 5, 2020
…apache#1355) (apache#7788)

* Fix allowTopicOperationAsync logic (apache#1355)

*Modifications*

- We should use the original role to verify if it is allowed for a given topic operation
- use the original authentication data
- Authz provider doesn't have to be aware of proxyRole
- Fix authorization test

* Refactor authorize logic to provide a uniform authorization behavior
lbenc135 pushed a commit to lbenc135/pulsar that referenced this pull request Sep 5, 2020
…apache#1355) (apache#7788)

* Fix allowTopicOperationAsync logic (apache#1355)

*Modifications*

- We should use the original role to verify if it is allowed for a given topic operation
- use the original authentication data
- Authz provider doesn't have to be aware of proxyRole
- Fix authorization test

* Refactor authorize logic to provide a uniform authorization behavior
lbenc135 pushed a commit to lbenc135/pulsar that referenced this pull request Sep 5, 2020
…apache#1355) (apache#7788)

* Fix allowTopicOperationAsync logic (apache#1355)

*Modifications*

- We should use the original role to verify if it is allowed for a given topic operation
- use the original authentication data
- Authz provider doesn't have to be aware of proxyRole
- Fix authorization test

* Refactor authorize logic to provide a uniform authorization behavior
abhilashmandaliya pushed a commit to ashishshinde/pulsar that referenced this pull request Nov 19, 2020
…apache#1355) (apache#7788)

* Fix allowTopicOperationAsync logic (apache#1355)

*Modifications*

- We should use the original role to verify if it is allowed for a given topic operation
- use the original authentication data
- Authz provider doesn't have to be aware of proxyRole
- Fix authorization test

* Refactor authorize logic to provide a uniform authorization behavior

(cherry picked from commit 48f5a2f)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants