[jira] [Commented] (METRON-1282) creating a new topic using the rest end point breaks the list topic API
[ https://issues.apache.org/jira/browse/METRON-1282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16361904#comment-16361904 ] ASF GitHub Bot commented on METRON-1282: GitHub user MohanDV reopened a pull request: https://github.com/apache/metron/pull/891 METRON-1282 creating a new topic using the rest end point breaks the list topic API ## Contributor Comments Creating a kafka topic using the rest endpoint doesn't add the required ACL to topic for the current user automatically. This will cause the all other kafka operation rest endpoints fail including listing the topics. **Steps to Verify manually** 1. Spin up Full Dev 2. Go to Swagger at http://node1:8082/swagger-ui.html#/kafka-controller 3. Create a kafka topic using (/api/v1/kafka/topic) 4. List all the kafka topics using (/api/v1/kafka/topic) 5. You should see the list of all kafka topics including newly created topic without any authorization error. ## Pull Request Checklist Thank you for submitting a contribution to Apache Metron. Please refer to our [Development Guidelines](https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=61332235) for the complete guide to follow for contributions. Please refer also to our [Build Verification Guidelines](https://cwiki.apache.org/confluence/display/METRON/Verifying+Builds?show-miniview) for complete smoke testing guides. In order to streamline the review of the contribution we ask you follow these guidelines and ask you to double check the following: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? If not one needs to be created at [Metron Jira](https://issues.apache.org/jira/browse/METRON/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel). - [x] Does your PR title start with METRON- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [x] Has your PR been rebased against the latest commit within the target branch (typically master)? ### For code changes: - [x] Have you included steps to reproduce the behavior or problem that is being changed or addressed? - [x] Have you included steps or a guide to how the change may be verified and tested manually? - [ ] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via: ``` mvn -q clean integration-test install && build_utils/verify_licenses.sh ``` - [ ] Have you written or updated unit tests and or integration tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [x] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via `site-book/target/site/index.html`: ``` cd site-book mvn site ``` Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. It is also recommended that [travis-ci](https://travis-ci.org) is set up for your personal repository such that your branches are built there before submitting a pull request. You can merge this pull request into a Git repository by running: $ git pull https://github.com/MohanDV/metron METRON-1282 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/metron/pull/891.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #891 commit fedc916d7e3f61ccbb6fe670fdc5e9dc808f5995 Author: Mohan VenkateshaiahDate: 2018-01-08T14:56:51Z Added code to permission the required ACL to the current user automatically while creating a new topic using the rest end point. > creating a new topic using the rest end point breaks the list topic API > --- > > Key: METRON-1282 > URL: https://issues.apache.org/jira/browse/METRON-1282 > Project: Metron > Issue Type: Bug >Reporter: Mohan >Assignee: Mohan >Priority: Major > > I created a topic "newtopic" using rest endpoint "/api/v1/kafka/topic". When > I try to list all the topics using
[jira] [Commented] (METRON-1282) creating a new topic using the rest end point breaks the list topic API
[ https://issues.apache.org/jira/browse/METRON-1282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16331909#comment-16331909 ] ASF GitHub Bot commented on METRON-1282: Github user MohanDV commented on the issue: https://github.com/apache/metron/pull/891 Created another pull request which will address this issue > creating a new topic using the rest end point breaks the list topic API > --- > > Key: METRON-1282 > URL: https://issues.apache.org/jira/browse/METRON-1282 > Project: Metron > Issue Type: Bug >Reporter: Mohan >Assignee: Mohan >Priority: Major > > I created a topic "newtopic" using rest endpoint "/api/v1/kafka/topic". When > I try to list all the topics using " /api/v1/kafka/topic" , I get below error > {code:java} > { > "timestamp": "2017-10-25 17:33:32", > "status": 500, > "error": "Internal Server Error", > "exception": "org.apache.kafka.common.errors.TopicAuthorizationException", > "message": "Not authorized to access topics: [newtopic]", > "path": "/api/v1/kafka/topic" > } > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (METRON-1282) creating a new topic using the rest end point breaks the list topic API
[ https://issues.apache.org/jira/browse/METRON-1282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16331908#comment-16331908 ] ASF GitHub Bot commented on METRON-1282: Github user MohanDV closed the pull request at: https://github.com/apache/metron/pull/891 > creating a new topic using the rest end point breaks the list topic API > --- > > Key: METRON-1282 > URL: https://issues.apache.org/jira/browse/METRON-1282 > Project: Metron > Issue Type: Bug >Reporter: Mohan >Assignee: Mohan >Priority: Major > > I created a topic "newtopic" using rest endpoint "/api/v1/kafka/topic". When > I try to list all the topics using " /api/v1/kafka/topic" , I get below error > {code:java} > { > "timestamp": "2017-10-25 17:33:32", > "status": 500, > "error": "Internal Server Error", > "exception": "org.apache.kafka.common.errors.TopicAuthorizationException", > "message": "Not authorized to access topics: [newtopic]", > "path": "/api/v1/kafka/topic" > } > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (METRON-1282) creating a new topic using the rest end point breaks the list topic API
[ https://issues.apache.org/jira/browse/METRON-1282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16331276#comment-16331276 ] ASF GitHub Bot commented on METRON-1282: Github user merrimanr commented on the issue: https://github.com/apache/metron/pull/891 I think a separate PR is fine. Can you at least move it to a separate method? > creating a new topic using the rest end point breaks the list topic API > --- > > Key: METRON-1282 > URL: https://issues.apache.org/jira/browse/METRON-1282 > Project: Metron > Issue Type: Bug >Reporter: Mohan >Assignee: Mohan >Priority: Major > > I created a topic "newtopic" using rest endpoint "/api/v1/kafka/topic". When > I try to list all the topics using " /api/v1/kafka/topic" , I get below error > {code:java} > { > "timestamp": "2017-10-25 17:33:32", > "status": 500, > "error": "Internal Server Error", > "exception": "org.apache.kafka.common.errors.TopicAuthorizationException", > "message": "Not authorized to access topics: [newtopic]", > "path": "/api/v1/kafka/topic" > } > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (METRON-1282) creating a new topic using the rest end point breaks the list topic API
[ https://issues.apache.org/jira/browse/METRON-1282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319992#comment-16319992 ] ASF GitHub Bot commented on METRON-1282: Github user MohanDV commented on the issue: https://github.com/apache/metron/pull/891 Thanks @merrimanr for taking a look. Yes , I should have added the check for kerberos. Regarding moving this functionality to separate endpoint , I wanted to address the breaking of other kafka controller rest endpoints due to adding new topic. How about having another pull request with broader scope to add / remove/ list ACL ? > creating a new topic using the rest end point breaks the list topic API > --- > > Key: METRON-1282 > URL: https://issues.apache.org/jira/browse/METRON-1282 > Project: Metron > Issue Type: Bug >Reporter: Mohan >Assignee: Mohan > > I created a topic "newtopic" using rest endpoint "/api/v1/kafka/topic". When > I try to list all the topics using " /api/v1/kafka/topic" , I get below error > {code:java} > { > "timestamp": "2017-10-25 17:33:32", > "status": 500, > "error": "Internal Server Error", > "exception": "org.apache.kafka.common.errors.TopicAuthorizationException", > "message": "Not authorized to access topics: [newtopic]", > "path": "/api/v1/kafka/topic" > } > {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (METRON-1282) creating a new topic using the rest end point breaks the list topic API
[ https://issues.apache.org/jira/browse/METRON-1282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318800#comment-16318800 ] ASF GitHub Bot commented on METRON-1282: Github user merrimanr commented on the issue: https://github.com/apache/metron/pull/891 @MohanDV this is a good start and will be a nice feature to have. I have a couple suggestions. First, can we move this to it's own function/endpoint? I think this would be useful for assigning permissions to existing topics as well. Second, I think we need some kind of check that Kerberos is enabled before we try to permission a topic for a user. This would be similar to what's done in the [KafkaConfig](https://github.com/apache/metron/blob/master/metron-interface/metron-rest/src/main/java/org/apache/metron/rest/config/KafkaConfig.java) class on line 111. > creating a new topic using the rest end point breaks the list topic API > --- > > Key: METRON-1282 > URL: https://issues.apache.org/jira/browse/METRON-1282 > Project: Metron > Issue Type: Bug >Reporter: Mohan >Assignee: Mohan > > I created a topic "newtopic" using rest endpoint "/api/v1/kafka/topic". When > I try to list all the topics using " /api/v1/kafka/topic" , I get below error > {code:java} > { > "timestamp": "2017-10-25 17:33:32", > "status": 500, > "error": "Internal Server Error", > "exception": "org.apache.kafka.common.errors.TopicAuthorizationException", > "message": "Not authorized to access topics: [newtopic]", > "path": "/api/v1/kafka/topic" > } > {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (METRON-1282) creating a new topic using the rest end point breaks the list topic API
[ https://issues.apache.org/jira/browse/METRON-1282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16316471#comment-16316471 ] ASF GitHub Bot commented on METRON-1282: GitHub user MohanDV opened a pull request: https://github.com/apache/metron/pull/891 METRON-1282 creating a new topic using the rest end point breaks the list topic API ## Contributor Comments Creating a kafka topic using the rest endpoint doesn't add the required ACL to topic for the current user automatically. This will cause the all other kafka operation rest endpoints fail including listing the topics. **Steps to Verify manually** 1. Spin up Full Dev 2. Go to Swagger at http://node1:8082/swagger-ui.html#/kafka-controller 3. Create a kafka topic using (/api/v1/kafka/topic) 4. List all the kafka topics using (/api/v1/kafka/topic) 5. You should see the list of all kafka topics including newly created topic without any authorization error. ## Pull Request Checklist Thank you for submitting a contribution to Apache Metron. Please refer to our [Development Guidelines](https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=61332235) for the complete guide to follow for contributions. Please refer also to our [Build Verification Guidelines](https://cwiki.apache.org/confluence/display/METRON/Verifying+Builds?show-miniview) for complete smoke testing guides. In order to streamline the review of the contribution we ask you follow these guidelines and ask you to double check the following: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? If not one needs to be created at [Metron Jira](https://issues.apache.org/jira/browse/METRON/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel). - [x] Does your PR title start with METRON- where is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character. - [x] Has your PR been rebased against the latest commit within the target branch (typically master)? ### For code changes: - [x] Have you included steps to reproduce the behavior or problem that is being changed or addressed? - [x] Have you included steps or a guide to how the change may be verified and tested manually? - [ ] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via: ``` mvn -q clean integration-test install && build_utils/verify_licenses.sh ``` - [ ] Have you written or updated unit tests and or integration tests to verify your changes? - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? - [x] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent? ### For documentation related changes: - [ ] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via `site-book/target/site/index.html`: ``` cd site-book mvn site ``` Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. It is also recommended that [travis-ci](https://travis-ci.org) is set up for your personal repository such that your branches are built there before submitting a pull request. You can merge this pull request into a Git repository by running: $ git pull https://github.com/MohanDV/metron METRON-1282 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/metron/pull/891.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #891 commit fedc916d7e3f61ccbb6fe670fdc5e9dc808f5995 Author: Mohan VenkateshaiahDate: 2018-01-08T14:56:51Z Added code to permission the required ACL to the current user automatically while creating a new topic using the rest end point. > creating a new topic using the rest end point breaks the list topic API > --- > > Key: METRON-1282 > URL: https://issues.apache.org/jira/browse/METRON-1282 > Project: Metron > Issue Type: Bug >Reporter: Mohan >Assignee: Mohan > > I created a topic "newtopic" using rest endpoint "/api/v1/kafka/topic". When > I try to list all the topics using " /api/v1/kafka/topic" , I get