問題タブ [wcf-interoperability]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc-3 - 相互運用可能な (SOAP、REST) WCF サービスに関するセキュリティと認証の設計概念
シナリオから始めたいと思います。可能な限り相互運用可能な WCF サービスを作成しました。つまり、3 つのエンドポイントがあります。1 つは wsHttpBinding (SOAP) を使用し、後で証明書をセットアップするときにトランスポート セキュリティを使用します。そこにもトランスポート セキュリティを追加したい XML メッセージ。
これらのエンドポイントが、文字列を受け取って返す簡単なサンプル メソッドで動作するようになったので、選択する必要がある認証システムを理解する必要があります。
メインのクライアント アプリケーションは ASP.NET MVC アプリです。ここでは、ASP.NET メンバーシップ プロバイダーを使用して、クライアント アプリケーション内で認証と承認を行い、WCF 要求でそれらの資格情報を使用できれば幸いです。私はそれを行うことができましたが、現在は他のシステム ベンダーが (少なくとも今のところ) Android および iOS モバイル デバイスの設計に参加しています。幸いなことに、REST エンドポイントを使用して、適切に消費および処理したいデータに使用できます。REST エンドポイントを介した認証ではどうなりますか? ASP.NET メンバーシップ プロバイダーをそのままの状態で WCF に使用して、要求を自動的に処理することはできませんか?
私の最初の質問は、どうにかして両方を組み合わせることができるかということです。そのようなシナリオを実装したベストプラクティスを持っている人はいますか? カスタム認証システムを使用する必要がありますか? 内部からメンバーシップ API を使用して、データベースへのすべての呼び出しを認証する必要がありますか? REST では得られない質問が他にもたくさんあります...資格情報はすべてのメッセージ ヘッダー リクエストに含まれていますか?
もう 1 つ頭に浮かぶのは、2 つの異なるサービス (MVC アプリ用に 1 つ、REST XML 用に 2 つ、リクエストごとにデータベースに対して JSON 認証を行う) を作成することですが、これは保守可能な悪夢だと思います。
あなたはアイデアを得ます、どんな提案や考えも大歓迎です!
ありがとうございました。
java - WSITは、カスタムセキュリティヘッダーを使用した要求後のSOAPセキュリティヘッダーを理解しません
Metro/WSITライブラリを使用してJavaWebサービスクライアントを作成しています。ヒットする必要のあるWebサービスはWCFサービスです。(私はサービス側とWSDLをほとんどまたはまったく制御できません。)
Webサービスは、トランスポートレベルセキュリティ(SSL)と、セキュリティトークンサービス(WS-Trust / WS-Security)を使用したフェデレーションセキュリティモデルの両方で保護されています。Windows Identity Foundationを使用して.NETにクライアントを簡単に実装し、最初にセキュリティトークンを発行してから、(CreateChannelWithIssuedToken)メソッドを使用して他のWebサービスに要求を行いました。
ただし、Metro / WSITを使用して、Javaでこの動作を模倣するのは困難です。WSDLにWS-Policy情報がないため、WSITはサービスとの通信のセキュリティ処理を有効にしないことを理解しています。送信する前にSOAPリクエストヘッダーを操作してリクエストを行う際にこれを手動で行いましたが、.NETクライアント側で受信するのと同じメッセージを受信しています。
今、私の問題は、次のエラーが発生していることです。
SOAP応答のヘッダーにセキュリティセクションがあるためです。
WSDLを変更できない場合、Metro / WSDLに手動で強制的に応答のセキュリティ処理を有効にして、この例外がスローされないようにする方法はありますか?セキュリティヘッダーを使用するつもりはありません。応答のペイロードは期待どおりです。クライアントがmustunderstand="1"のヘッダーを理解していない場合、私が見ているのは正しい動作であることは理解していますが、この例外を抑制する方法を探しています。
私はこれのような他の質問を読みましたが、それは私が望むものに近いようですが、私はまだ答えを見つけていません。アドバイス/解決策/など。どうもありがとうございました!
entity-framework - Entity Framework を使用した WCF Data Service - 相互運用性の問題
一般に、WCF Data Services は相互運用可能ですか、それとも Microsoft 固有ですか?
このADO.NET ブログ リンクは、WCF サービスで EF を使用する方法を非常によく示しています。しかし、その単純な例では、戻り値の型: を持つメソッドも示していますIQueryable<Patient>
。これは相互運用性を壊していますか?
これらのデータ サービスと EF を相互運用できるようにするための特別な処理はありますか? この問題で注意すべきヒントや注意点はありますか?
c# - アンマネージ C++ から WCF サービスを呼び出すと、アクセス違反が発生する
アンマネージ コードから wcf サービスにアクセスしたいと考えています。このサービスは、単純にするために、文字列に連結して返すだけです。
サービスの .dll を参照する ac# コンソール アプリを使用して、そのサービスをホストします。また、サービスのエンドポイントを公開します。概して():
ホストの構成は次のようになります。
サービス参照にベースアドレスを使用する.netクライアントからサービスを呼び出すと、すべてが機能します。
今私が持っている問題に。アンマネージ C++ コードからサービスにアクセスしたいからです。そのために、com 相互運用機能に登録し、実行中のホストのサービス参照も使用する .dll を使用します。
ここで、C ++を使用して中間の.dllを介してサービスにアクセスしようとすると...
... stringconcatinteropsvcclient.tli で次のような例外が発生します。
「xyz.exe の 0x75 で未処理の例外が発生しました: Microsoft C++ 例外: メモリ位置 0x で _com_error が発生しました...」
その後、続行して、strlen.asm で次の例外を取得できます。
「xyz.exe の 0x5d... (msvcr100d.dll) で未処理の例外: 0xC0...: アクセス違反の読み取り場所 0x00...」
この例外が停止した後。おそらく誰かがこの問題の解決策を持っているか、エラーがどこにあるのか考えています。簡単にするために、この例を使用します。私が取り組んでいるプロジェクトは、同じ構造を使用しています。また、wcf サービスも使用し、これらはアンマネージ C++ から呼び出されます。
wcf - WCFユニバーサルサービス契約とWS-相互運用性コンプライアンス
Microsoft MSDNは、要求応答操作の最も一般的なサービス契約を次のように説明しています。
basicHttpバインディングを使用して以下のようなコントラクトを作成すると、WS-Iに準拠しなくなります(SOAPUI準拠チェックを使用)。
最も普遍的な契約も最も相互運用可能だと思います。
WS-Iに準拠していない理由を誰かが説明できますか?さらに重要なのは、Messageクラスを使用すると、Javaクライアントがサービスを利用しにくくなるのでしょうか。
Messageクラスを使用した経験をいただければ幸いです。
編集最初の答えの後:
これは、サービスコントラクトとオペレーションコントラクトを示す完全なWSDLです。
WSIコンプライアンステストが失敗するのは、サービスコントラクトが欠落していることではなく、メッセージ入力自体です。
So using this Message class is not WS-I compliant of some reason.
xslt - 通常の XML から QTIv2.0 準拠の XML へのコンバーター、またはその方法に関するアドバイス
複数選択問題のある LMS クイズから通常の xml を QTIv2.0 準拠の XML に変換する方法を探しています。Web を検索したところ、XSLT が可能なオプションであることがわかりました。5 か月前にコーディングの学習を始めたばかりで、変換の方法に関するヘルプまたはガイダンスを探しています。
XSLT を提案しましたが、受け入れられませんでした。XML ファイルを変換するドット ネット コードを書いています。
このサンプルをベースにしています。
プライベート静的文字列 XmlParamsWriterForLogin(文字列 headerId, 文字列 courseType, 文字列 scheduleID, 文字列 courseId, 文字列 nric, 文字列 出席, 文字列 結果, 文字列 スコア) { using (var sw = new StringWriter()) { using (var xw = XmlWriter.Create( sw)) { xw.WriteStartDocument();
しかし、それがどのように機能するかはまだわかりません。