标签: basic-authentication

C#中的代理基本身份验证:HTTP 407错误

我正在使用需要身份验证的代理,即在浏览器中如果我尝试打开页面,它会立即请求凭据.我在我的程序中提供了相同的凭据,但它因HTTP 407错误而失败.

这是我的代码:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);

IWebProxy proxy = WebRequest.GetSystemWebProxy();
CredentialCache cc = new CredentialCache();
NetworkCredential nc = new NetworkCredential();

nc.UserName = "userName";
nc.Password = "password";
nc.Domain = "mydomain";
cc.Add("http://20.154.23.100", 8888, "Basic", nc);
proxy.Credentials = cc;
//proxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
request.Proxy = proxy;
request.Proxy.Credentials = cc;
request.Credentials = cc;
request.PreAuthenticate = true;
Run Code Online (Sandbox Code Playgroud)

我尝试了所有可能的事情,但似乎我错过了一些东西.是这样的,我必须提出两个要求吗?首先没有凭据,一旦我从服务器收到有关凭据需求的回复,请使用凭据进行相同的请求?

c# proxy httpwebrequest basic-authentication http-status-code-407

40
推荐指数
3
解决办法
12万
查看次数

为什么浏览器在经过身份验证的XMLHttpRequest之后不重用授权头?

我正在使用Angular开发单页应用程序.后端公开需要基本身份验证的REST服务.获取index.html或任何脚本不需要身份验证.

我有一个奇怪的情况:我的观点的人有一个<img>,其中src是一个REST API需要验证的URL.它<img>由浏览器处理,我没有机会为它所做的GET请求设置授权标头.这会导致浏览器提示输入凭据.

我尝试通过这样做解决这个问题:

  1. img src在源空
  2. 在"文档就绪"中,使用Authorization标头创建XMLHttpRequest一个service(/api/login),以便进行身份验证.
  3. 完成该调用后,设置该img src属性,认为到那时,浏览器会知道在后续请求中包含Authorization标头...

......但事实并非如此.图像请求没有标题.如果我输入凭据,则页面上的所有其他图像都是正确的.(我也试过和Angular的ng-src但是产生了相同的结果)

我有两个问题:

  1. 为什么浏览器(IE10)在成功后的所有请求中都没有包含标题XMLHttpRequest
  2. 我该怎么做才能解决这个问题?

@bergi询问了请求的详细信息.他们来了.

请求/ api /登录

GET https://myserver/dev30281_WebServices/api/login HTTP/1.1
Accept: */*
Authorization: Basic <header here>
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/6.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729)
Connection: Keep-Alive
Run Code Online (Sandbox Code Playgroud)

响应(/ api/login)

HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Length: …
Run Code Online (Sandbox Code Playgroud)

html javascript basic-authentication angularjs single-page-application

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

如何在Selenium WebDriver中对FirefoxDriver,ChromeDriver和IEdriver执行基本身份验证?

我正在使用Selenium-Firefox驱动程序Selenium-Chrome-Driver版本2.0a5(Web驱动程序API),我正在尝试测试具有BASIC身份验证的Web应用程序(有一个弹出窗口可用于验证用户身份我点击任何页面,弹出窗口不是HTML的一部分).

现在,我需要一个策略来验证Firefox,Chrome和IE中的用户(我即将导入IE驱动程序).

我正在阅读一些文章,我可以设置一个Firefox配置文件.例如:

FirefoxProfile ffProfile = new FirefoxProfile();
ffProfile.setPreference("network.http.phishy-userpass-length", 255);
WebDriver driver = new FirefoxDriver(ffProfile);
driver.get("http://username:password@hostname");  
Run Code Online (Sandbox Code Playgroud)

但它似乎对我不起作用.有没有人为这些浏览器提供有效的解决方案?

java selenium cross-browser basic-authentication selenium-webdriver

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

使用HttpUrlConnection进行抢占式基本身份验证?

使用HttpUrlConnection使用抢占式基本http身份验证的最佳方法是什么.(现在假设我不能使用HttpClient).

编辑澄清:我正在使用Base64编码在请求标头中正确设置un/pw.是否需要设置任何其他标志或属性,或者我是否为抢先式基本身份验证所需的所有请求设置基本身份验证头?

java authentication android http basic-authentication

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

如何在UIWebView中显示身份验证质询?

我试图通过UIWebView访问一个安全的网站.当我通过safari访问它时,我得到了一个身份验证挑战,但同样的情况并没有出现在应用程序的UIWebView中.我该如何让它出现?

任何指针,示例代码或链接都将非常有用.非常感谢.

http basic-authentication uiwebview

37
推荐指数
2
解决办法
4万
查看次数

为所有请求设置HTTP基本身份验证

有没有办法为SoapUI项目中的所有请求设置HTTP基本身份验证?

我知道可以对TestSuite中的所有请求执行此操作,但我无法弄清楚如何为所有TestSuite中的所有请求执行此操作.

soapui basic-authentication

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

如何在angularjs中获得基本身份验证?

如何在AngularJs中获得基本身份验证?我用谷歌搜索,资源不适合我.我对AngularJS

javascript basic-authentication angularjs

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

使用JWT和Basic身份验证保护REST应用程序是否有意义?

我有一个Spring REST应用程序,它首先使用基本身份验证进行保护.

然后我添加了一个登录控制器,它创建了一个JWT JSON Web令牌,用于后续请求.

我可以将以下代码移出登录控制器并进入安全过滤器吗?然后我不再需要登录控制器了.

tokenAuthenticationService.addTokenToResponseHeader(responseHeaders, credentialsResource.getEmail());
Run Code Online (Sandbox Code Playgroud)

或者我可以删除基本身份验证吗?

将基本身份验证与JWT混合是一种好的设计吗?

虽然一切正常,但我在这里有点黑暗,以便最好地设计这种安全性.

spring-security basic-authentication jwt

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

用用户名和密码调用rest api - 如何

我是新来的api's并通过.NET调用它们

我有一个api:https://sub.domain.com/api/operations? param = value & param2 = value

api的注释说要授权我需要使用基本的访问身份验证 - 我该怎么做?

我目前有这个代码:

        WebRequest req = WebRequest.Create(@"https://sub.domain.com/api/operations?param=value&param2=value");
        req.Method = "GET";
        //req.Credentials = new NetworkCredential("username", "password");
        HttpWebResponse resp = req.GetResponse() as HttpWebResponse;
Run Code Online (Sandbox Code Playgroud)

但是我得到了401未经授权的错误.

我缺少什么,如何使用基本访问身份验证形成api呼叫?

c# rest basic-authentication

34
推荐指数
2
解决办法
10万
查看次数

如何向WebRequest添加基本身份验证标头

我有一个基本的WCF服务,我想用HttpWebRequest测试它.问题是我使用基本身份验证.如何使用基本身份验证添加标头?

到目前为止,这是我的代码:

var request = (HttpWebRequest)WebRequest.Create(url);
Run Code Online (Sandbox Code Playgroud)

谢谢

.net c# httpwebrequest basic-authentication

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