Сбой вызова SSPI, см. Внутреннее исключение
try
{
_apnsStream.AuthenticateAsClient("gateway.sandbox.push.apple.com", certificates, System.Security.Authentication.SslProtocols.Ssl3, false);
}
Я получаю эту ошибку "A call to SSPI failed, see inner exception"
в приведенной выше строке при использовании DLL Moon-Apns в моем веб-сервисе.net... кто-нибудь может предложить мне решить эту проблему.
4 ответа
Изменить:
System.Security.Authentication.SslProtocols.Ssl3
чтобы:
System.Security.Authentication.SslProtocols.Tls
Использовать производственный сертификат, а не сертификат развития.
использование gateway.push.apple.com
вместо gateway.sandbox.push.apple.com
А ТАКЖЕ System.Security.Authentication.SslProtocols.Ssl3
в System.Security.Authentication.SslProtocols.Tls
Я не знаю, будет ли это полезно через год, но я оставляю ответ для iOS8.
Apple изменила безопасность сервера, и прямо в строке, которую вы упоминаете, вы должны перейти с SSL на TLS:
Оригинальный код:
_apnsStream.AuthenticateAsClient(host,certificates,System.Security.Authentication.SslProtocols.Ssl3, false);
Новый код:
_apnsStream.AuthenticateAsClient(host,certificates,System.Security.Authentication.SslProtocols.Tls, false);
Я надеюсь, что эта информация кому-то пригодится.
Кто-то прокомментировал это на форуме GIT
Я столкнулся с той же проблемой в настоящее время, причина в том, что.p12, заданный / назначенный в сценарии ASP.net в серверной части, что соответствующий сертификат push-уведомлений файла.p12 истек, истек срок действия, я просто создал новый сертификат разработчика и новый профиль обеспечения разработчика тогда экспортировал файл.p12 в только что созданный сертификат разработчика и передал бэкэнд-разработчику, что он назначил новый.p12 в своем скрипте, я назначил вновь созданный профиль обеспечения в моем xcode. и это сработало.