Uh oh!
There was an error while loading. Please reload this page.
SPARK-3883 SSL support for HttpServer and Akka - #2739
Conversation
jacek-lewandowski
commented
Oct 9, 2014
- Introduced SSLOptions object
- SSLOptions is created by SecurityManager
- SSLOptions configures Akka and Jetty to use SSL
- SSLOptions uses property file which is node-local to set SSL settings
- Provided utility methods to determine the proper Akka protocol for Akka requests and to configure SSL socket factory for URL connections
- Added tests cases for AkkaUtils, FileServer, SSLOptions and SecurityManager
- Introduced SSLOptions object - SSLOptions is created by SecurityManager - SSLOptions configures Akka and Jetty to use SSL - SSLOptions uses property file which is node-local to set SSL settings - Provided utility methods to determine the proper Akka protocol for Akka requests and to configure SSL socket factory for URL connections - Added tests cases for AkkaUtils, FileServer, SSLOptions and SecurityManager
AmplabJenkins
commented
Oct 9, 2014
Can one of the admins verify this patch? |
1 similar comment
AmplabJenkins
commented
Oct 9, 2014
Can one of the admins verify this patch? |
JoshRosen
commented
Oct 13, 2014
#1980 is a PR to add SSL to the web UI, which might benefit from SSLOptions. Do you want to comment on that PR's strategy for configuration, etc? |
jacek-lewandowski
commented
Oct 13, 2014
I'll go through the discussion and changes in that ticket tomorrow morning, thanks |
There was a problem hiding this comment.
Not an expert at Apache licensing, but other config files in conf/ don't have a license header.
There was a problem hiding this comment.
Ok, I'll remove it
vanzin
commented
Oct 16, 2014
Hi @jacek-lewandowski, I like this because it's trying to support more than just the Web UI, but I think the configuration handling is sort of confusing and overengineered. Feels like a simpler approach based on "all configuration goes through SparkConf" would be much simpler to handle and maintain (both in the code and by admins deploying Spark). What do you think? |
jacek-lewandowski
commented
Oct 16, 2014
Thanks for review @vanzin |
jacek-lewandowski
commented
Oct 23, 2014
btw. @vanzin how to make Jenkins run the tests on this branch? |
vanzin
commented
Oct 23, 2014
Let me see if I can trigger tests for you - otherwise an admin will have to intervene. Also, let me think about the configuration thing some more. To be frank, I'm not really that concerned about the Master/Worker configuration, I think those are not that interesting; I'm way more interested in applications using SSL, since that's when you're passing potentially sensitive data around. |
vanzin
commented
Oct 23, 2014
Jenkins, test this please. |
vanzin
commented
Oct 23, 2014
(Seems like that only works for my own PRs, so this will probably need an admin to trigger tests for you...) |
jacek-lewandowski
commented
Oct 23, 2014
I suppose that this is because this pr is not against the master branch |
jacek-lewandowski
commented
Oct 23, 2014
@vanzin This PR doesn't secure data transfers anyway, because Spark uses raw communication to exchange the real data. This is intended to secure mainly control messages, JARS, application settings, like command line arguments and Spark configuration, because they may include passwords to access third party data sources from executors. |
JoshRosen
commented
Oct 23, 2014
Jenkins, this is ok to test. Jenkins, retest this please. |
SparkQA
commented
Oct 23, 2014
QA tests have started for PR 2739 at commit
|
SparkQA
commented
Oct 23, 2014
QA tests have finished for PR 2739 at commit
|
AmplabJenkins
commented
Oct 23, 2014
Test FAILed. |
vanzin
commented
Oct 23, 2014
There's still sensitive data that may go in control messages; e.g., IIRC broadcasts go through akka, and those may include things like Hadoop job configuration and delegation tokens. Anyway, I know there are more channels that might need securing, but it's ok to treat those separately. Having a common SSL configuration infrastructure is a good first start. |
jacek-lewandowski
commented
Oct 23, 2014
@JoshRosen will it be retested automatically after commit ? |
SparkQA
commented
Oct 23, 2014
QA tests have finished for PR 2739 at commit
|
AmplabJenkins
commented
Oct 23, 2014
Test FAILed. |
jacek-lewandowski
commented
Oct 23, 2014
@vanzin fyi: |
vanzin
commented
Oct 23, 2014
You may want to add that file to |
SparkQA
commented
Oct 23, 2014
QA tests have started for PR 2739 at commit
|
SparkQA
commented
Oct 23, 2014
QA tests have finished for PR 2739 at commit
|
AmplabJenkins
commented
Oct 23, 2014
Test FAILed. |
JoshRosen
commented
Oct 25, 2014
Do you mind re-opening this pull request against the |
tgravescs
commented
Oct 27, 2014
Please also update the documentation. docs/security.md and the big comment header at the top of SecurityManager.scala |
pwendell
commented
Nov 10, 2014
@jacek-lewandowski do you have any sense of when you'll be able to do this? It would be great to get this into master soon! |
vanzin
commented
Nov 19, 2014
@jacek-lewandowski are you still working on this? If you don't plan to continue working on this I'd like to pick it up. Thanks! |
jacek-lewandowski
commented
Dec 2, 2014
Back to working on this... I've rebased against branch-1.2 and then I'll rebase against master if you want. |
vanzin
commented
Dec 2, 2014
@jacek-lewandowski please work on top of master. We can work on backporting it to branch-1.2 if there's a strong desire for it, but new features should always be checked into master first. |
jacek-lewandowski
commented
Dec 2, 2014
@vanzin already did that. Now I'm running tests - is there a new procedure for testing? Or just sbt clean assembly test? I can see one test failure which I can reproduce on master as well. |
vanzin
commented
Dec 2, 2014
I think You'll probably need to open a new PR, I don't think Github allows you to change the target branch. |
jacek-lewandowski
commented
Dec 2, 2014
@vanzin yeah, thats right |
jacek-lewandowski
commented
Dec 2, 2014
I still have got one test failing: It fails on master and on my branch - do you know about it - it looks to me as a broken test case. Can you confirm? |
vanzin
commented
Dec 2, 2014
If you don't believe it's your fault, it will be much easier to help if you create the new PR and an admin triggers a jenkins job to test it. Then we can see whether it's a flaky test or a result of your code. |
pwendell
commented
Dec 2, 2014
Jenkins, test this please. |
SparkQA
commented
Dec 2, 2014
QA tests have started for PR 2739 at commit
|
pwendell
commented
Dec 2, 2014
Oh yeah - this is still against 1.1. @jacek-lewandowski can you open a new PR and close this one? |
SparkQA
commented
Dec 3, 2014
QA tests have finished for PR 2739 at commit
|
AmplabJenkins
commented
Dec 3, 2014
Test FAILed. |
jacek-lewandowski
commented
Dec 3, 2014
Here is the new PR #3571 |
jacek-lewandowski
commented
Dec 3, 2014
So - can I close this one? |
vanzin
commented
Dec 3, 2014
Yes please. |