iOS証明書をテストする際の Campaign Invalid Password

この記事では、iOS モバイルアプリを作成し、iOS証明書をテストすると無効なパスワードエラーがスローされるCampaign Classicの問題を解決する手順を説明します。

説明 description

環境

Campaign Classic v7 および v8 リリース。

問題/症状

iOS モバイルアプリを作成し、iOS証明書をテストすると、次のエラーが生成されます。

接続をテストできません。\n エラー:パスワードが無効です… INT-150012 HTTP クエリが「type error (500) (iRc=-53)を返しました

解決策 resolution

問題を解決するには、次の手順に従います。

  1. この問題について詳しくは、iOS ルーティングに関連付けられている外部アカウントを更新し、iOS URL 接続に ?debug=true を追加して、デバッグモードを有効にします。

    例:http://localhost:8080/nms/jsp/iosHTTP2.jsp?debug=true

  2. 証明書を削除します。 生成された証明書からクライアント証明書を apns_dev_cert.pem に抽出します。キーは含まれません。

    openssl pkcs12 -in client_certificate.p12 -out apns_dev_cert.pem -clcerts -nokeys

    次のとおりです。

    -clcerts: クライアント証明書のみを出力します(CA 証明書は出力しません)

    -nokeys:秘密鍵は出力されません

  3. 生成された証明書から apns_dev_key.pem にキーを抽出します。キーを復号化したり証明書を使用したりすることはありません。

    openssl pkcs12 -in client_certificate.p12 -out apns_dev_key.pem -nocerts -nodes

    次のとおりです。

    -nocerts: 証明書がまったく出力されません

    -nodes: 秘密鍵をまったく暗号化しない

  4. キーと証明書の両方から p12 証明書ファイルを再生成します。 サニタイズでは、接続に必要なもののみを保持できます。

    openssl pkcs12 -export -inkey apns_dev_key.pem -in apns_dev_cert.pem -noiter -out new_certificate.p12

原因

次のエラーは、証明書の整合性が無効であり、証明書の整合性を修正するにはサニタイズ手順が必要であることを意味します。

2023-04-13 03:50:13.857-05 001FF206 001FF22D 1 info log [ iOS Connector]  doTestConnection
2023-04-13 03:50:13.857-05 001FF206 001FF22D 1 info log [ iOS Connector]  clear cache
2023-04-13 03:50:13.858-05 001FF206 001FF22D 1 info log [ iOS Connector]  validateCertificates
2023-04-13 03:50:13.860-05 001FF206 001FF22D 1 info log [ iOS Connector]  p12 creation: IOException Integrity check failed:
java.security.InvalidAlgorithmParameterException: IterationCount must be a positive number
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f