openstf / stf

Control and manage Android devices from your browser.
https://openstf.io
Other
13.33k stars 2.77k forks source link

We need to login repeatly while using domain name and LDAP #884

Closed zhangpeng23796 closed 6 years ago

zhangpeng23796 commented 6 years ago

I use follow common start stf, it is ok while accessing with ip(eg.http://192.168.1.16:7100), I login once,then I no need to login. But while accessing with domain name(eg.http://phone.tecent.com), I need to login while using http://phone.tecent.com. Please help me!!! stf local --public-ip='本机IP' --auth-type ldap --auth-options '["--ldap-url","$LDAP SERVER URI", "--ldap-bind-dn","$LDAP BIND DN","--ldap-search-dn","$LDAP BASE DN", "--ldap-bind-credentials","$LDAP BIND DN PWD", "--ldap-search-class","user", "--ldap-search-field", "mail"]'

sorccu commented 6 years ago

I'm not sure whate exactly you mean, does it work for a while and then log you out?

~If it doesn't work at all, then perhaps you're using the wrong --public-ip option. Even though the option is called --public-ip, you should use whatever ip or hostname you're using to access STF. Perhaps you should specify --public-ip phone.tecent.com instead of an IP address.~ see below

sorccu commented 6 years ago

Actually I think my comment is wrong. I meant you should make sure to use the correct --app-url. Use the proper hostname here. You won't be able to access from both the IP address and the hostname at the same time, though.

zhangpeng23796 commented 6 years ago

Now i use follow command: stf local --public-ip='10.167.33.154' --group-timeout 900 --allow-remote --auth-type ldap --auth-options '["--ldap-url","ldap://ldap.corpautohome.com:389","--ldap-bind-dn","CN=dealerapp,OU=业务帐号,OU=Autohomestaff,DC=corp,DC=autohome,DC=inc","--ldap-search-dn","OU=Autohomestaff,DC=corp,DC=autohome,DC=inc", "--ldap-bind-credentials","Xfmhjy@2019", "--ldap-search-class","user", "--ldap-search-field", "mail"]'

I want to access by http://phone.stf.com/#!/devices, but in fact the url is http://10.167.33.154/#!/devices, what can i do?

sorccu commented 6 years ago

Even though the option is called —public-ip, you can give it a hostname. Just use whatever address you want.

Also, you should check out the deployment guide.

zhangpeng23796 commented 6 years ago

In fact i have tried as follow,but there is error: stf local --public-ip='dev.phonebus.corpautohome.com' --group-timeout 900 --allow-remote --auth-type ldap --auth-options '["--ldap-url","ldap://ldap.corpautohome.com:389","--ldap-bind-dn","CN=dealerapp,OU=业务帐号,OU=Autohomestaff,DC=corp,DC=autohome,DC=inc","--ldap-search-dn","OU=Autohomestaff,DC=corp,DC=autohome,DC=inc", "--ldap-bind-credentials","Xfmhjy@2019", "--ldap-search-class","user", "--ldap-search-field", "mail"]'

image

I think i can't use 'dev.phonebus.corpautohome.com' to replace '10.167.3.124',because the domain is parsed.

image

sorccu commented 6 years ago

Show the error you get in the Chrome developer tools.

zhangpeng23796 commented 6 years ago

1.2ee79810d19509e948dd.chunk.js:51682 WebSocket connection to 'ws://dev.phonebus.corpautohome.com:7110/socket.io/?uip=%3A%3Affff%3A127.0.0.1&EIO=3&transport=websocket' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED

image

sorccu commented 6 years ago

Maybe you need to forward that port? I would really recommend doing a proper deployment instead of using stf local.