标签: basic-authentication

如何清除chrome中的基本身份验证详细信息

我正在使用基本身份验证的网站.使用Chrome我使用基本身份验证登录.我现在想从浏览器中删除基本身份验证详细信息并尝试不同的登录.

使用Chrome时,如何清除当前的基本身份验证详细信息?

google-chrome basic-authentication

373
推荐指数
10
解决办法
21万
查看次数

基本身份验证中的"领域"是什么?

我在PHP网站设置基本身份验证,发现页面上显示的设置PHP手册.标题中的"领域"是什么意思?

header('WWW-Authenticate: Basic realm="My Realm"');
Run Code Online (Sandbox Code Playgroud)

是请求的页面页面吗?

http basic-authentication digest-authentication

292
推荐指数
3
解决办法
21万
查看次数

如何使用BASIC身份验证从Web站点注销用户?

如果用户使用基本身份验证,是否可以从网站注销用户?

杀戮会话是不够的,因为一旦用户通过身份验证,每个请求都包含登录信息,因此用户下次使用相同的凭据访问站点时会自动登录.

到目前为止,唯一的解决方案是关闭浏览器,但从可用性的角度来看,这是不可接受的.

authentication http basic-authentication

259
推荐指数
12
解决办法
19万
查看次数

HTTP基本身份验证 - 预期的浏览器体验是什么?

当服务器允许通过基本HTTP身份验证进行访问时,浏览器的预期体验是什么?

我通常只使用curl执行此操作:

curl -u myusername:mypassword http://somesite.com
Run Code Online (Sandbox Code Playgroud)

它工作得很好.但是,现在我无法访问curl(长篇故事),如果可能的话,我想从Web浏览器中进行操作.

我认为Basic Auth应该工作的方式是 - 我输入我想要的网址,服务器然后决定我没有被授权,返回响应代码401,我输入我的用户名和密码到提示符.如果它是正确的,页面加载!

但是,在somesite.com上,我根本没有获得授权提示,只是一个页面上写着我没有被授权.有些网站没有正确实现Basic Auth工作流程,还是我还需要做其他事情?

curl basic-authentication

251
推荐指数
6
解决办法
46万
查看次数

HTTP基本身份验证凭据在URL和加密中传递

我有一个关于HTTPS和HTTP身份验证凭据的问题.

假设我使用HTTP身份验证保护URL:

<Directory /var/www/webcallback>
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /var/www/passwd/passwords
Require user gooduser
</Directory>
Run Code Online (Sandbox Code Playgroud)

然后,我通过HTTPS从远程系统访问该URL,并在URL中传递凭据:

https://gooduser:secretpassword@www.example.com/webcallback?foo=bar
Run Code Online (Sandbox Code Playgroud)

用户名和密码是否会自动进行SSL加密?GET和POST也是如此吗?我很难找到这个信息的可靠来源.

https basic-authentication

242
推荐指数
2
解决办法
43万
查看次数

如何使用PHP curl使用HTTP基本身份验证发出请求?

我正在用PHP构建一个REST Web服务客户端,目前我正在使用curl向服务发出请求.

如何使用curl进行身份验证(http basic)请求?我必须自己添加标题吗?

php rest curl basic-authentication

213
推荐指数
8
解决办法
42万
查看次数

176
推荐指数
3
解决办法
8万
查看次数

使用Invoke-WebRequest和用户名和密码在GitHub API上进行基本身份验证

初步问题

使用cURL,我们可以使用HTTP Web请求传递用户名,如下所示:

$ curl -u <your_username> https://api.github.com/user
Run Code Online (Sandbox Code Playgroud)

-u标志接受用于身份验证的用户名,然后cURL将请求密码.cURL示例用于使用GitHub Api进行基本身份验证.

我们如何同样传递用户名和密码以及Invoke-WebRequest?最终目标是在GitHub API中使用基本身份验证的PowerShell.

编辑(这是什么工作)

Notes来自客户端的Wikipedia on Basic Auth.

将用户名和密码合并为一个字符串 username:password

$user = "shaunluttin"
$pass = "super-strong-alpha-numeric-symbolic-long-password"
$pair = "${user}:${pass}"
Run Code Online (Sandbox Code Playgroud)

将字符串编码为Base64的RFC2045-MIME变体,但不限于76个字符/行.

$bytes = [System.Text.Encoding]::ASCII.GetBytes($pair)
$base64 = [System.Convert]::ToBase64String($bytes)
Run Code Online (Sandbox Code Playgroud)

创建Auth值作为方法,空格,然后编码对 Method Base64String

$basicAuthValue = "Basic $base64"
Run Code Online (Sandbox Code Playgroud)

创建标题 Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

$headers = @{ Authorization = $basicAuthValue }
Run Code Online (Sandbox Code Playgroud)

调用Web请求

Invoke-WebRequest -uri "https://api.github.com/user" -Headers $headers
Run Code Online (Sandbox Code Playgroud)

感谢@briantist的帮助!

讨论

PowerShell版本比cURL版本更冗长.这是为什么?@briantist指出GitHub打破了RFC并且PowerShell坚持使用它.这是否意味着cURL也打破了标准?

powershell basic-authentication github-api

108
推荐指数
7
解决办法
17万
查看次数

如何正确使用cURL定义基本HTTP身份验证?

我正在学习Apigility(Apigility docu - > REST Service Tutorial)并尝试通过cURL发送带有基本身份验证的POST请求:

$ curl -X POST -i -H "Content-Type: application/hal+json" -H "Authorization: Basic YXBpdXNlcjphcGlwd2Q=" http://apigilityhw.sandbox.loc/status
Run Code Online (Sandbox Code Playgroud)

YXBpdXNlcjphcGlwd2Q=是我的凭据的基本64编码字符串apiuser:apipwd.凭证保存在/data/htpasswd(apiuser:$apr1$3J4cyqEw$WKga3rQMkxvnevMuBaekg/)中.

看起来像这样:

HTTP/1.1 401 Unauthorized
Server: nginx/1.4.7
Date: Mon, 22 Sep 2014 07:48:47 GMT
Content-Type: application/problem+json
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/5.5.12-1~dotdeb.1
WWW-Authenticate: Basic realm="api"
Run Code Online (Sandbox Code Playgroud)

这里的错误在哪里?如何让它工作?

curl authorization http basic-authentication apigility

106
推荐指数
4
解决办法
24万
查看次数

基本HTTP和承载令牌认证

我目前正在开发一个REST-API,它为开发环境提供HTTP-Basic保护.由于真正的身份验证是通过令牌完成的,我仍然试图找出,如何发送两个授权头.

我试过这个:

curl -i http://dev.myapp.com/api/users \
  -H "Authorization: Basic Ym9zY236Ym9zY28=" \
  -H "Authorization: Bearer mytoken123"
Run Code Online (Sandbox Code Playgroud)

我可以为我的IP禁用HTTP身份验证,但由于我通常在具有动态IP的不同环境中工作,这不是一个好的解决方案.我错过了什么吗?

rest curl restful-authentication basic-authentication access-token

105
推荐指数
4
解决办法
29万
查看次数