私は、httpsでWebサービスを呼び出すタスクに取り組んでいます。 WSDL自体は、セキュリティに関する次の情報が含まれています -webserviceにプログラムでセキュリティを追加する方法
今、この情報を使用して<wsid:Identity xmlns:wsid="http://schemas.xmlsoap.org/ws/2006/02/addressingidentity">
<dsig:KeyInfo xmlns:dsig="http://www.w3.org/2000/09/xmldsig#">
<dsig:X509Data>
<dsig:X509Certificate>
**XXX**
</dsig:X509Certificate>
<dsig:X509IssuerSerial>...</dsig:X509IssuerSerial>
<dsig:X509SubjectName>CN=FAEncryption, DC=cloud, DC=oracle, DC=com</dsig:X509SubjectName>
<dsig:X509SKI>**ZZZ**</dsig:X509SKI>
<dsig:X509Certificate>
**YYY**
</dsig:X509Certificate>
</dsig:X509Data>
</dsig:KeyInfo>
</wsid:Identity>
、私は、次の手順を使用して証明書を思い付いた -
好きな名前を持つ新しいファイルを作成します。証明書ファイルであることを示すには、拡張子を.cerに変更する必要があります。
テキストエディタを使用して、作成したファイルを開き、最初の行に "----- BEGIN CERTIFICATE -----"と入力します。
次の行で、サービスWSDLファイルからBase64でエンコードされた証明書を新しく作成した証明書ファイルにコピーします。
新しい行に "----- END CERTIFICATE -----"を追加してファイルを保存します。これで、サーバーからの公開鍵を含む証明書が作成されました。
コマンドラインを開き、ディレクトリを$ JAVA_HOME/binに変更します。 KeyStoreを作成し、証明書から公開鍵をインポートするには、次のコマンドを使用します。
wsdlには2つの証明書があります。私は両方をキーストアに追加しました。コマンドがある -
のkeytool -import -file〜/ ddriveと/テスト/詳細/ SubmitFlow.cer -alias orakey1 -keypass歓迎-keystore〜/ ddriveと/テスト/詳細/をtest.jks -storepass歓迎
keytool -import -file〜/ ddrive/test/details/SubmitFlow1.cer -alias orakey1 -keypassようこそ-keystore〜/ ddrive/test/details/test.jks -storepassようこそ
最初は、証明書。しかし、後で、私は両方を追加しました。私はweb-service呼び出しを行うためにspring-wsを使用します。しかし、私はまだ401の不正な呼び出しを取得します。
私は何をする必要があるかを示す文書はありません。もし私がここで私を導くことができれば幸いです。ところで、役立つ場合、このWebサービスはOracle HCMに関連しています。