わかりました。このエラーが発生し、Ruby on Railsアプリを操作するときに長い間(何年も)エラーが発生しました。
受け入れられた回答に記載されているようにデフォルトの資格情報を設定しましたが、それでもエラーが発生し、didReceiveChallenge応答を使用して資格情報を提供しています-幸い、これは回避策として機能しました。
だが!私は解決策を見つけました!
私は、protectedSpaceフィールドがRuby on RailsサーバーからのAuthorizationチャレンジと一致しないという問題に取り組んでいました-未定義のままにされた唯一のフィールドであると思われるレルムフィールドを調べました。
私はサーバーの応答ヘッダーを印刷することから始めましたが、これらを調べることはできましたが、レルムフィールドを含むはずのWWW-Authorizationフィールドが含まれていませんでした。
これはおそらく私のRailsアプリがレルムを指定していないためだと思ったので、物事のRails側を調べ始めました。
呼び出しでレルムを指定できることがわかりました。
authenticate_or_request_with_http_basic
... HTTP基本認証に使用しています。
レルムはまだ指定していなかったので、追加しました。
authenticate_or_request_with_http_basic("My Rails App")
次に、対応する文字列をprotectionSpaceに追加しました。
NSURLProtectionSpace *protectionSpace =
[[NSURLProtectionSpace alloc] initWithHost:@"myrailsapp.com"
port:443
protocol:NSURLProtectionSpaceHTTPS
realm:@"My Rails App"
authenticationMethod:NSURLAuthenticationMethodHTTPBasic];
出来上がり!それはうまくいきました、そして私はもう得ません、
CredStore - performQuery - Error copying matching creds. Error=-25300
Railsアプリでレルムを指定した後でも、それがHTTPヘッダーで渡されたことがわかりません。理由はわかりませんが、少なくとも機能します。