标签: http-authentication

Android手机到Rails服务器的基本HTTP身份验证

我正在尝试连接到需要身份验证的Rails应用程序服务器.我在桌面应用程序上使用Jakarta HTTP Client for Java,它可以100%运行.但是当在Android模拟器上执行完全相同的代码时,我得到一个IOException.

这是代码,如果有人可以帮我弄清楚为什么它会抛出IOException,我将不胜感激!

private boolean login()
{
    String username, password;

    DefaultHttpClient client;
    AuthScope scope;
    Credentials myCredentials;
    CredentialsProvider provider;
    HttpEntity entity;
    String line;
    BufferedReader reader;
    InputStream instream;

    //Declare & Create the HTTP Client  
    client = new DefaultHttpClient();

    //Create our AuthScope
    scope = new AuthScope("10.19.9.33", 3000);

    username = "admin"
            password = "pass"


    //Set Credentials
    myCredentials = new UsernamePasswordCredentials( username, password );

    //Set Provider
    provider = new BasicCredentialsProvider();
    provider.setCredentials(scope, myCredentials);

    //Set Credentials
    client.setCredentialsProvider( provider );

    String url = "http://10.19.9.33:3000/users/show/2";

    HttpGet …
Run Code Online (Sandbox Code Playgroud)

java android http-authentication basic-authentication

6
推荐指数
1
解决办法
3492
查看次数

如何从UIWebView检测身份验证质询?

当你事先知道请求需要它时,我已经看到许多 问题(并回答)如何提供凭证.

当我加载请求身份验证质询的站点时(使用HTTP 401响应),我UIWebViewDelegate只收到以下回调:webView:shouldStartLoadWithRequest:navigationType:有时webViewDidStartLoad:(webViewDidStartLoad:如果我直接导​​航到该站点,似乎会被调用,如果我',它似乎不会被调用m重定向那里).

通过覆盖-[NSObject respondsToSelector:],UIWebViewDelegate接收一些调用uiWebView:resource:canAuthenticateAgainstProtectionSpace:forDataSource:uiWebView:resource:didReceiveAuthenticationChallenge:fromDataSource:,这可能是有用的,但当然这些是私有API,可能会让我的应用程序被拒绝.

我用嵌入式UIWebViews 测试了一些不同的主流应用程序.到目前为止,只有Chrome正确处理这些身份验证挑战.我甚至已经设置了自己的服务器并验证了Chrome只有POST一次.Twitter和Tweetbot失败只是永远显示加载屏幕,就像我的.

除了使用第二个推测之外,还有另一种(可能是非常hacky)方法来检测这些身份验证挑战NSURLConnection吗?如果我提出POST请求,那将POST是一切,这是不好的.

为此,我添加了一个雷达来请求增强UIWebView.请复制它.

http-authentication uiwebview ios uiwebviewdelegate

6
推荐指数
1
解决办法
4798
查看次数

RTSP 身份验证:摘要问题

我需要向流媒体服务器验证我的 RTSP 流,这是挑战:

RTSP/1.0 401 Unauthorized
WWW-Authenticate: Digest realm="Streaming Server",  nonce="76bfe6986d3e766424de9bd6e7d3ccc1"
Session: 1845562184;timeout=60
Cseq: 1
...
Run Code Online (Sandbox Code Playgroud)

Wirecast 设法使用这些设置成功进行身份验证:

Host name : 192.168.33.9:1935/live/my_stream.sdp
location : live/my_stream.sdp
username : user
password : test
Run Code Online (Sandbox Code Playgroud)

它的响应是:e1dff363b9763df0c7615429af79715c

因此,根据维基百科,我尝试使用以下方法进行身份验证:

//H(data) = MD5(data)
//KD(secret, data) = H(secret:data)
//A1 = username:realm:password
//A2 = http-method:uri
//response = KD( H(A1), nonce:H(A2))

HA1 = md5("user:Streaming Server:test")
HA2 = md5("POST:live/my_stream.sdp")
RESPONSE = md5(HA1+":"+nonce+":"+HA2)
Run Code Online (Sandbox Code Playgroud)

但是使用此代码,我得到响应“0963c3a7b1481523f809e6affa7e792e”和 401 Unauthorized

你能帮助我吗 ?

authentication streaming http-authentication rtsp digest-authentication

6
推荐指数
2
解决办法
1万
查看次数

Python 请求与 cURL 的 --location-trusted 等效

使用 cURL,我可以--location-trusted允许将名称+密码发送到站点可能重定向到的所有主机(http://curl.haxx.se/docs/manpage.html#--location-trusted)。

我可以在 Python 中使用 requests 库做类似的事情吗?

python curl http-authentication python-requests

6
推荐指数
1
解决办法
3760
查看次数

IIS作为反向代理

我正在研究让IIS在J2EE服务器(JBoss)上执行的应用程序中进行身份验证.有没有办法让IIS作为反向代理工作,并传播代理应用程序(JBoss)用户的用户名和/或角色.如果可能的话,我还需要什么样的IIS版本?我有IIS的许可,所以我想在IIS中这样做,但除此之外我更喜欢开源.

谢谢!

托马斯

iis reverse-proxy http-authentication

5
推荐指数
1
解决办法
1万
查看次数

app引擎开发服务器中的HTTP身份验证

我想设置应用程序引擎开发服务器,以便其他人可以进行预览.

在此之前我真正想做的是为该网站提供的任何网址启用http身份验证.我不希望任何人在没有通过该阶段的情况下访问该服务.我当然可以在我正在开发的应用程序中构建自己的http身份验证,但这不是一个完美的解决方案,因为我在部署应用程序时不需要该功能.

有什么好办法可以解决吗?

google-app-engine http-authentication

5
推荐指数
1
解决办法
1833
查看次数

Java:如何将参数传递给Webstart Applet?

场景:服务器为许多不同(但经过身份验证的)客户端提供相同的Webstart Applet.每个Applet都必须"知道"它所在的客户端.因此,服务器必须能够将一些参数传递给客户端,然后由该客户端上运行的Applet读取.

  1. Webstart Applet是否可以访问启动它的Web浏览器cookie
  2. Webstart Applet是否可以访问标识它的URL
  3. 还有其他选择吗?

编辑:也许Webstart Applet是一个错误的术语.我的意思是只是一个Webstart客户端应用程序.

java jnlp applet http-authentication java-web-start

5
推荐指数
1
解决办法
2196
查看次数

我可以使用httplib2进行抢先认证吗?

我需要针对HTTP服务器执行抢先式基本身份验证,即立即进行身份验证,而无需等待401响应.这可以用httplib2完成吗?

编辑:

我通过在请求中添加Authorization标头解决了这个问题,如接受的答案所示:

 headers["Authorization"] = "Basic {0}".format(
        base64.b64encode("{0}:{1}".format(username, password)))
Run Code Online (Sandbox Code Playgroud)

python http-authentication httplib2

5
推荐指数
1
解决办法
3479
查看次数

CakePHP 2基本身份验证

我正在从CakePHP 1.3迁移到CakePHP 2.2.2,并希望将Basic Http身份验证用于简单的管理区域.我只是无法使它工作,我想我在文档中理解了一些错误.

从我理解的文档中我必须做类似的事情

public $components = array(
    'Auth' => array(
      'authenticate' => array(
        'Basic'
      ),
      'authError' => 'You may not access this area.',
      'authorize' => array('Controller')
    )
  );
Run Code Online (Sandbox Code Playgroud)

据我所知,我需要扩展BaseAuthenticate组件以返回有效的用户日期,但即使使用上述配置,我也希望浏览器的Http Access对话框能够在弹出窗口中打开.但是没有这样的事情发生,相反,我被重定向到/ users/login,这是不存在的.为什么我需要Http Access的登录视图?我很迷惑.

cakephp http-authentication cakephp-2.0 cakephp-2.1 cakephp-2.2

5
推荐指数
1
解决办法
6019
查看次数

限制直接访问端口,但允许在Nginx中进行端口转发

我试图限制端口9200上对elasticsearch的直接访问,但允许Nginx代理传递给它.

这是我目前的配置:

server {
        listen 80;
        return 301;
}

server {

        listen *:5001;

        location / {
                auth_basic "Restricted";
                auth_basic_user_file /var/data/nginx-elastic/.htpasswd;

                proxy_pass http://127.0.0.1:9200;
                proxy_read_timeout 90;
        }
}
Run Code Online (Sandbox Code Playgroud)

这几乎与我想要的一样.我可以在端口5001上访问我的服务器以访问elasticsearch,并且必须按预期输入凭据.

但是,我仍然可以点击:9200并避免HTTP身份验证,这会失败.如何在不限制nginx的情况下阻止访问此端口?我试过这个:

server {
        listen *:9200;
        return 404;
}
Run Code Online (Sandbox Code Playgroud)

但我得到:

nginx: [emerg] bind() to 0.0.0.0:9200 failed (98: Address already in use)
Run Code Online (Sandbox Code Playgroud)

因为它与elasticsearch冲突.

必须有办法做到这一点!但我想不出来.

编辑:

我根据评论编辑并总结了问题:

我想锁定<serverip>:9200,基本上只允许通过端口5001(在HTTP Auth后面)进行访问.5001应代理到127.0.0.1:9200,以便只能通过5001访问elasticsearch.所有其他访问应该是404(或301等).

reverse-proxy nginx http-authentication elasticsearch

5
推荐指数
1
解决办法
4139
查看次数