Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Broken HTTP basic authentication in web apps on iOS 7?

I'm using basic authentication for a simple app but it stopped working in web app mode on iOS 7. It works in Safari, it worked on iOS 6 both in Safari and as a standalone web app, but after migrating to iOS 7 it shows only white screen.

Did anyone experience the same problem?

like image 553
Igor Pavelek Avatar asked Sep 24 '13 08:09

Igor Pavelek


3 Answers

I found that by removing windows auth from iis, and leaving only basic with the realm set to the domain solved this issue for me.

Give that a try.

like image 131
Ross Dargan Avatar answered Oct 11 '22 02:10

Ross Dargan


I think this may be related to the dialog problem described here.

Standard dialogs are not working at all, such as alert, confirm or prompt.

The login prompt that is shown to authenticate the user is probably blocked (does not work or is not visible) and that is why the web app does not pass through the authentication phase.

I suppose Apple will have to fix this bug in a future release.

Edit: After upgrading to iOS 7.0.3 basic authentication suddenly started to work again also in home screen web app mode. Login prompt is displayed and everything works as expected.

like image 41
Adhooo Avatar answered Oct 11 '22 02:10

Adhooo


This worked for me.

+ (void) setBasicAuth
{
  NSURLCredentialStorage* store = 
    [NSURLCredentialStorage sharedCredentialStorage];

  NSURLCredential* creds = 
    [NSURLCredential credentialWithUser:@"user" 
                               password:@"pass"
                            persistence:NSURLCredentialPersistenceForSession];

  NSURLProtectionSpace* protectionSpace = 
    [[NSURLProtectionSpace alloc] initWithHost:@"your-host" 
                                          port:80 
                                      protocol:@"http" 
                                         realm:@"Your Realm"
                          authenticationMethod:NSURLAuthenticationMethodDefault];

  [store setCredential:creds forProtectionSpace:protectionSpace];
}
like image 45
Wei Liu Avatar answered Oct 11 '22 03:10

Wei Liu