{"action":"created","issue":{"url":"https://api.github.com/repos/apache/spark/issues/23302","repository_url":"https://api.github.com/repos/apache/spark","labels_url":"https://api.github.com/repos/apache/spark/issues/23302/labels{/name}","comments_url":"https://api.github.com/repos/apache/spark/issues/23302/comments","events_url":"https://api.github.com/repos/apache/spark/issues/23302/events","html_url":"https://github.com/apache/spark/pull/23302","id":390460367,"node_id":"MDExOlB1bGxSZXF1ZXN0MjM4MjIyNzQ5","number":23302,"title":"[SPARK-24522][UI] Create filter to apply HTTP security checks consistently.","user":{"login":"vanzin","id":1694083,"node_id":"MDQ6VXNlcjE2OTQwODM=","avatar_url":"https://avatars0.githubusercontent.com/u/1694083?v=4","gravatar_id":"","url":"https://api.github.com/users/vanzin","html_url":"https://github.com/vanzin","followers_url":"https://api.github.com/users/vanzin/followers","following_url":"https://api.github.com/users/vanzin/following{/other_user}","gists_url":"https://api.github.com/users/vanzin/gists{/gist_id}","starred_url":"https://api.github.com/users/vanzin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vanzin/subscriptions","organizations_url":"https://api.github.com/users/vanzin/orgs","repos_url":"https://api.github.com/users/vanzin/repos","events_url":"https://api.github.com/users/vanzin/events{/privacy}","received_events_url":"https://api.github.com/users/vanzin/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":20,"created_at":"2018-12-12T23:58:25Z","updated_at":"2019-01-05T01:16:53Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/apache/spark/pulls/23302","html_url":"https://github.com/apache/spark/pull/23302","diff_url":"https://github.com/apache/spark/pull/23302.diff","patch_url":"https://github.com/apache/spark/pull/23302.patch"},"body":"Currently there is code scattered in a bunch of places to do different\r\nthings related to HTTP security, such as access control, setting\r\nsecurity-related headers, and filtering out bad content. This makes it\r\nreally easy to miss these things when writing new UI code.\r\n\r\nThis change creates a new filter that does all of those things, and\r\nmakes sure that all servlet handlers that are attached to the UI get\r\nthe new filter and any user-defined filters consistently. The extent\r\nof the actual features should be the same as before.\r\n\r\nThe new filter is added at the end of the filter chain, because authentication\r\nis done by custom filters and thus needs to happen first. This means that\r\ncustom filters see unfiltered HTTP requests - which is actually the current\r\nbehavior anyway.\r\n\r\nAs a side-effect of some of the code refactoring, handlers added after\r\nthe initial set also get wrapped with a GzipHandler, which didn't happen\r\nbefore.\r\n\r\nTested with added unit tests and in a history server with SPNEGO auth\r\nconfigured.\r\n"},"comment":{"url":"https://api.github.com/repos/apache/spark/issues/comments/451614506","html_url":"https://github.com/apache/spark/pull/23302#issuecomment-451614506","issue_url":"https://api.github.com/repos/apache/spark/issues/23302","id":451614506,"node_id":"MDEyOklzc3VlQ29tbWVudDQ1MTYxNDUwNg==","user":{"login":"SparkQA","id":8108735,"node_id":"MDQ6VXNlcjgxMDg3MzU=","avatar_url":"https://avatars1.githubusercontent.com/u/8108735?v=4","gravatar_id":"","url":"https://api.github.com/users/SparkQA","html_url":"https://github.com/SparkQA","followers_url":"https://api.github.com/users/SparkQA/followers","following_url":"https://api.github.com/users/SparkQA/following{/other_user}","gists_url":"https://api.github.com/users/SparkQA/gists{/gist_id}","starred_url":"https://api.github.com/users/SparkQA/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SparkQA/subscriptions","organizations_url":"https://api.github.com/users/SparkQA/orgs","repos_url":"https://api.github.com/users/SparkQA/repos","events_url":"https://api.github.com/users/SparkQA/events{/privacy}","received_events_url":"https://api.github.com/users/SparkQA/received_events","type":"User","site_admin":false},"created_at":"2019-01-05T01:16:53Z","updated_at":"2019-01-05T01:16:53Z","author_association":"NONE","body":"**[Test build #100758 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/100758/testReport)** for PR 23302 at commit [`3eb5956`](https://github.com/apache/spark/commit/3eb595693fe620ad4aef81c3dc87f3e3abbed066).\n * This patch **fails Spark unit tests**.\n * This patch merges cleanly.\n * This patch adds no public classes."}}
{"actor":{"display_login":"SparkQA"}}