Broken HTTP basic authentication in web apps on iOS 7?

后端 未结 4 1266
日久生厌
日久生厌 2021-02-04 17:14

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 a

相关标签:
4条回答
  • 2021-02-04 17:28

    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.

    0 讨论(0)
  • 2021-02-04 17:34

    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.

    0 讨论(0)
  • 2021-02-04 17:34

    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];
    }
    
    0 讨论(0)
  • 2021-02-04 17:44

    I‘m experiencing the exact same problem. It works when putting username and password in the url of your web app and

    0 讨论(0)
提交回复
热议问题