ボックスからAppleのサンドボックスサーバーに接続する際に問題があります。それが私のプログラムのせいなのか、それとも私の証明書なのかはよくわかりません。
みてみましょう:
Using client As New TcpClient()
client.Connect("gateway.sandbox.push.apple.com", 2195)
Using networkStream As NetworkStream = client.GetStream()
Console.WriteLine("Client connected.")
Dim clientCertificate As New X509Certificate("certfile.p12", "PASS")
Dim clientCertificateCollection As New X509CertificateCollection(New X509Certificate(0) {clientCertificate})
' Create an SSL stream that will close the client's stream.
Dim sslStream As New SslStream(client.GetStream(), False, AddressOf ValidateServerCertificate, Nothing)
Try
sslStream.AuthenticateAsClient("gateway.sandbox.push.apple.com", clientCertificateCollection, SslProtocols.Default, False)
Catch ex As AuthenticationException
Console.WriteLine("Exception: {0}", ex.Message)
If ex.InnerException IsNot Nothing Then
Console.WriteLine("Inner exception: {0}", ex.InnerException.Message)
End If
Console.WriteLine("Authentication failed - closing the connection.")
client.Close()
Return
End Try
End Using
End Using
次のエラーが表示されます:「SSPI 呼び出しに失敗しました」。
今私の質問は、どの証明書をキーチェーンでエクスポートする必要がありますか? 私の秘密鍵、aps_provisioning、Apple 開発証明書、または私の開発者証明書?
前もって感謝します!