从性能,安全性和灵活性的角度来看,HTTP摘要式身份验证和SSL有什么区别?
我正在构建一个基本API,在该用户的登录名和密码被正确发送后,可以检索用户信息.
现在我正在使用这样的东西:
http://foo:bar@example.com/api/user.xml
所以,我需要做的是访问请求中发送的用户/密码(foo和bar),但不知道如何在Rails控制器中访问该信息.
然后我通过快速检查这些变量User.find,然后将其设置为用户名和密码变量authenticate_or_request_with_http_basic.
我可能会以完全错误的方式看待这个,但那就是我现在所处的位置.:)
在烧瓶中,我使用以下代码段来启用HTTP身份验证:
def authenticate():
    return Response('<Why access is denied string goes here...>', 401, {'WWW-Authenticate':'Basic realm="Login Required"'})
现在,根据我过去使用Flask的经验,如果某人的凭据不正确,我想让他们知道我可以打电话:
abort(401)
这为您提供了基本的apache 401响应.有谁知道我如何使用上面的代码段实现它?
谢谢
我正在尝试使用基本HTTP身份验证,并按照PHP手册页上的示例进行操作.但它对我不起作用.$_SERVER['PHP_AUTH_USER']似乎没有设置变量.当用户尝试登录时,将通过新的登录对话框提示用户.服务器正在运行PHP 5.3.3,我尝试使用谷歌浏览器和Internet Explorer.
这是我使用的简单示例:
<?php
if (!isset($_SERVER['PHP_AUTH_USER'])) {
    header('WWW-Authenticate: Basic realm="Jonas Realm"');
    header('HTTP/1.0 401 Unauthorized');
    echo 'User pressed Cancel';
    exit;
} else {
    echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
    echo "<p>You entered {$_SERVER['PHP_AUTH_PW']} as you password.</p>";
}
?>
怎么了?如何在PHP中使用基本HTTP身份验证?
php authentication server-variables http-authentication basic-authentication
我有一个网站,仅供3名程序员私下使用.它是由nginx直接提供的简单HTML,但旨在用于办公室内外.
我想要一个简单的密码或身份验证方案.我可以使用HTTP身份验证,但这些往往会经常过期,这使人们很难使用.我也很紧张,有人嗅到比饼干更容易.
所以我想知道我是否可以在JavaScript中使用唯一的长ID在浏览器上设置cookie,并以某种方式告诉nginx只接受具有此cookie的请求(对于特定的子域).
这很简单吗?我如何能
authentication cookies nginx http-authentication password-protection
我正在编写一些浏览器端动态功能,并使用HTTP Basic Auth来保护一些资源.用户体验非常重要,并且高度定制.
这是一个简单的测试JQuery方法,最终将测试用户是否在表单中提供了正确的凭据:
$(document).ready(function() {
    $("#submit").click(function() {
    var token = Base64.encode($('#username').val() + ':' + $('#password').val());        
    $.ajax({
      url: '/private',
      method: 'GET',
      async: false,
      beforeSend: function(req) {
        req.setRequestHeader('Authorization', 'test:password');
      },
      error: function(request, textStatus, error) {
        if (request.status == 401) {
          alert('401');
        }
      }
    });
    return false;
  });
});
如果不允许他们访问/private,那么他们应该只看到警告框.但是,在Firefox上,会弹出一个浏览器提供的登录表单(使用新凭据重试).Safari不会这样做.
我们希望通过自定义表单,淡入淡出,转换等完全控制体验.如何防止Firefox的默认框显示?(如果我们测试IE时会出现这个问题,我也很乐意听到那里的解决方案.)
我正在尝试运行一个小型的Twitter客户端,在测试需要身份验证的API调用时遇到了问题.
我的密码中包含特殊字符,因此当我尝试使用以下代码时,它不起作用.
NSString *post = [NSString stringWithFormat:@"status=%@", [status stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://%@:%@@%@/statuses/update.json", username, password, TwitterHostname]];
[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
NSURLResponse *response;
NSError *error;
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
我开始研究base64并将身份验证放入标头中.我在他的base64实现中发现了Dave Dribin的帖子,这看起来很有道理.但是,当我尝试使用它时,编译器开始抱怨它无法找到openssl库.所以我读到我需要在libcrypto库中链接,但它似乎不存在于iphone.
我还读过有人说苹果不会允许使用加密库的应用程序,这对我来说没有意义.
所以现在我有点困惑和困惑.在我的应用程序中获取基本身份验证的最简单方法是什么?
干杯
有没有人有任何在HTTP身份验证中支持多个领域的经验?
微软网站声明:
每个身份验证响应头包含可用的身份验证方案和领域.如果支持多种身份验证方案,则服务器返回多个身份验证响应头.领域值区分大小写,并在代理或服务器上定义保护空间.例如,标题"WWW-Authenticate:Basic Realm ="example""将是需要服务器身份验证时返回的标头的示例.
这表明可以使用不同的身份验证方法来保护网站的不同区域.我们感到困惑的是如何确定服务器响应客户端请求时应该声明的域.
有没有人有多个领域如何工作的例子?
是否有通过HTTP BASIC身份验证发送到Web应用程序的用户名或密码的最大长度?我浏览了RFC2617并且找不到任何明显的东西,但很好奇并希望确定.
(这都是通过SSL完成的,所以不要担心安全性.)
我是REST webservice的新手,刚刚创建了我的第一个web服务.
在我的服务中,用户可以通过简单的表单创建配置文件,提供他想要的用户名和密码.  
现在如何在用户登录时检查用户凭据?
我的意思是我有一个简单的表单,验证用户已登录,但如何验证用户何时执行添加/更新/删除的各种配置文件操作?
例如:
在FB中,您登录并存储一个具有您凭据的cookie,当您执行"发布状态"等操作时,向朋友发送消息......等等......它不再要求您的凭据,因为它有一个cookie,你的凭据在那里,它只使用该cookie ...  
但是在REST中我们不使用cookie,所以下一个选项是HTTP头.我想知道如何通过HTTP标头发送和接收用户凭据.ie
Basic HTTP Auth