-
Notifications
You must be signed in to change notification settings - Fork 19
Allow Persona login to work behind a (corp) proxy #95
Comments
I am curious, since I don't have to deal with proxy myself, are we having two separate issues?
Can you give a bit more detail how to reproduce. I can try connect to proxy. |
It seems that minion cannot communicate with personna but I can't tell it for sure : no error message is logged. I took a couple of minutes yesterday evening to boot it on my home network with a direct internet access and I managed to be connected and got a default (almost empty) screen but I had no time to go further for the moment. What I see while behind the corporate firewall is the following (in develop mode) :
All I get in log is :
|
You are not the only one. Someone else on IRC #websectools have the same exact problem. This is a big issue: many of our users are going to be corporate developers and analyst. It would be a pity if minion cannot communicate behind a proxy. I will try to sort this out today for you and I will try the proxy today (again, I don't really use proxy so it might take a little while for a slowpoke like me hehehe ) |
And on the second issue, yes, I will actually get the documentation up and running in the next few days (have to be done because I am getting request from internal as well). If you have time come to #websectools (im yeukhon) later (i am actually walking to office soon) and I can be your question guy if u need quick access. or just ask on github. |
I suspect that what is happening here is that the minion-frontend needs to talk to the Persona verifier to complete the authentication process [1]. In order to get this working you need to set up a proxy for the minion-frontend by setting the appropriate environment variables for the minion-frontend service [2] Can you let me know if this sorts things out for you? If so, we can update the documentation! [1] https://github.com/mozilla/minion-frontend/blob/master/minion/frontend/views.py#L373 ----- Original Message ----- It seems that minion cannot communicate with personna but I can't tell it for sure : no error message is logged. I took a couple of minutes yesterday evening to boot it on my home network with a direct internet access and I managed to be connected and got a default (almost empty) screen but I had no time to go further for the moment. What I see while behind the corporate firewall is the following (in develop mode) :
All I get in log is :
Reply to this email directly or view it on GitHub: |
Done, but it's odd : your second link states it clearly : So I modified the code there : https://github.com/mozilla/minion-frontend/blob/master/minion/frontend/persona.py#L10 I'm a novice in python but I'll try to add a few logs to be able to analyze personna's server response |
DEAD END : minion fetches a valid personna response. The problem is somewhere else ...
|
can you run the individual components from an interactive terminal (for example, using screen), and report the errors that show up there? ----- Original Message ----- DEAD END : minion fetches a valid personna response. The problem is somewhere else ...
Reply to this email directly or view it on GitHub: |
Hi ygjb. |
@GrmpCerber I made the following change, which should enable debug mode and show stack traces in case of a 500. Can you pull that in and post the stack trace when things fail? |
walktroughFrontend fails in
I've also tried to login while the backend was offline and got the same message on the frontend side solutionI've unset all proxy settings in each terminals, then added a few lines as suggested earlier by @ygjb in his second link in comment #95 (comment) and I got connected ! I'm not fluent in python nor in minion (yet ;) ) so I don't think I could figure out a good pullrequest but what I would do is to add a config varibale for "internet proxy settings" anyway thanks to the three of you |
@GrmpCerber If you unset proxy settings and leave minion as it is, you should be able to connect, right? When you are not behind any firewall or proxy, minion should be able to communicate with Persona without any additional enhancement. |
@yeukhon No, I did a fresh install without global proxy settings. |
@GrmpCerber so as I understand it, you are still connecting to a proxy. You access the Internet using proxy. Is this a corporate proxy or a free proxy? I didn't get to play with proxy this weekend. I am interested in getting this fix at some point, figuring what parts have to be changed. As far as I understand you can use @ygjb's suggested method. If you are using a public proxy I probably can try it really quickly once I am done with my documentation. (Yes, we are writing docs :) ) We probably can add a configuration in minion such that if proxy is set, the request objects when doing the verification will use the proxy settings, otherwise it remains as ``None`.. |
It's corporate. By the way, since I went further with minion I noticed that some or all of the workers might need proxy setup too. |
Yeah the workers and plugins also need proxy support if you want to run this internally but scan an outside host. This is more complicated but I will file some bugs for it and see if we can plan it for a future release. |
I am simplifying this issue a bit. First lets allow people to configure a proxy and make sure the Persona login works over it. After that we can think of a strategy for the other bits of Minion that are using HTTP. |
I've been thinking on this. To make this work you would need the following:
3.a) Proxy Settings 3.b) Sites Settings I'm probably missing something. Been working with the code a whole day now. :-) |
Beeing behind a corporate firewall I need be able to pass proxy configuration to each application.
frontend sign-in makes use of mozilla's personas but it doesn't seem to handle proxy env variable
Bottom Note : nothing is logged in console but I never get connected while on corporate network. With a direct connexion I got connected 1/3 of the time
Regards
The text was updated successfully, but these errors were encountered: