問題タブ [wshttpbinding]
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.
wcf - WCFセルフホストサービスSSL/トランスポートセキュリティ/基本認証は資格情報を要求しません
HTTPS / SSL、トランスポートセキュリティ、および基本認証を使用して、セルフホストのWCFサービスを作成しました。何らかの理由で、ブラウザでサービスを実行すると、クレデンシャルを要求されません。どうしたの?
サービス構成:
HTTP構成:
wcf - 証明書を使用したプログラムによるWCFメッセージのセキュリティ
WSHttpBindingsを使用して自己ホスト型のWCFサービスを作成し、自分で生成した証明書を使用してメッセージレベルのセキュリティを実装しようとしています。残念ながら、「パッケージに提供されたクレデンシャルが認識されませんでした」という埋め込み例外が(Service Trace Viewerを介して)発生します。
いくつかのメモ:
- これは、構成ではなく、コードで実行する必要があります
- (サーバー/クライアント)証明書は、デバッグ中にユーザーがアクセスできる秘密鍵を持つローカルマシンストアにある証明書です。
- 私はこれから地獄をグーグルで検索し、ここでWCFメッセージベースのセキュリティを設定するための優れたリソースを見つけました
何が欠けているのかわかりません。エンドポイントIDを作成することを除いて、これらのほとんどは簡単に思えます。DnsEndpointIdentitiesを使用するか、証明書ベースのものを使用するか、IDをまったく使用しないかにかかわらず、同じメッセージで失敗します。
誰かが私を正しい方向に向けることができますか?
サーバ側:
クライアント側:
c# - SOAPヘッダーアクションが理解されませんでした
C#でWebサービスを利用しようとしています。Webサービスクラスから関数を呼び出そうとすると、「SOAPヘッダーアクションが理解されませんでした」というメッセージが表示されます。プロジェクトにWebサービスを指すWeb参照[サービス参照ではない]を追加しました。Web参照を追加するために、次の手順が実行されました
1)プロジェクトを右クリック->WebReferenceの追加
WebブラウザでWebサービスを調べたところ、ヘッダーにこれが見つかりました
Webサービス関数を呼び出すために次のコードを実行しました
wcf - WCF での証明書認証の使用エラー
私は少しピクルスにいます!
以前のインストールでは見られなかったライブ サーバーの 1 つにデプロイするときに、次のエラーが発生します。このサーバーは、実稼働環境のハードウェア ロード バランサー (BigIP) の背後にあります。私が知る限り、これが以前の展開との唯一の違いです。
'http://tempuri.org/ISomeService/GetStuff' アクションを含む要求メッセージからの UltimateReceiver ロールの SecurityContext が Windows ID にマップされていないため、偽装を開始できません。
クラシック モード アプリケーション プールで Windows Server 2008 R2 (IIS 7.5)、WCF 4.0 を実行しています。
以下は、私の構成ファイルからの関連するスニペットであると私が思うものです-有罪を保護するために名前を変更したところにいくつかのタイプミスがあるかもしれません:
どんな助けでも大歓迎です。
vb.net - ObjectDataSource Select メソッドから MVC サービスを呼び出すときに CommunicationException が発生する
Web アプリケーションで以下の例外が発生します。
" サーバー スタック トレース: System.ServiceModel.Channels.CommunicationObject.Close(TimeSpan タイムアウト) で [0] で再スローされる例外: System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) で System.Runtime. System.ServiceModel.ICommunicationObject.Close(TimeSpan タイムアウト)
で System.ServiceModel.ClientBase1.System.ServiceModel.ICommunicationObject.Close(TimeSpan timeout) at System.ServiceModel.ClientBase
1.Close() で System.ServiceModel.ClientBase`1.System.IDisposable.Dispose() で System.Web.UI.WebControls.ObjectDataSourceView.ReleaseInstance(オブジェクト インスタンス) で System.Web.UI.WebControls.ObjectDataSourceView.ExecuteSelect( C:\Develop\Budgeteer\BudgeteerWeb\BudgeteerWeb\MemberPages\Transactions\Edit.aspx の BudgeteerWeb.EditTransaction.Page_Load(オブジェクト送信者、EventArgs e) の System.Web.UI.WebControls.ObjectDataSource.Select() vb:27行目"
ObjectDataSource で使用される select メソッド内から WCF サービスを呼び出しています。メッセージベースのセキュリティを使用していなければ、すべて問題なく動作します。しかし、ClientCredentials で wsHttpBinding をオンにするとすぐに、上記のエラーが発生します。何が欠けているのかわからない。
ASP コード:
コード ビハインド: objectDataSource select メソッドで使用される関数:
前もって感謝します。
wcf - WCF認証 - ユーザー/パスを一度認証し、その後別の方法で認証しますか?
基本的に、次のシナリオと情報があります。
- HTTPS を使用しています。
- ユーザーが最初にログインするときに、ユーザー/パスによってユーザーを認証したいと考えています。
- それらが認証された後、(ログインサービスではなく)他のサービスへの今後の呼び出しで、ユーザー名とある種のセッションを使用する必要があります(セッションの途中でパスワードが変更された場合)。
- セッションがタイムアウトし、ユーザーがサービスを呼び出そうとしたときにセッションがない場合にエラーが発生するようにセッションを制御できるようにしたい (ログインしていないため)。この方法でセッションを行うための WCF 組み込みの方法があるかどうか、またはデータベースでカスタマイズされた何かを行う必要があるかどうかはわかりません。
- WSHttpBinding (BasicHttpBinding ではない) を使用したいと思います。これについては 90% 確実です。
私はこれを行う方法を理解できないようです。client.ClientCredentials.UserName.UserName = username
多くの場合、クライアント コードの実行に関する情報を見つけることができますclient.ClientCredentials.UserName.Password = password
。しかし、私のサーバーは何に対してチェックしているのでしょうか? その情報を取得して、ユーザー/パスのデータベースに対して検証しようとしています。私は Windows 認証などを使用するつもりはありません (誰がコンピューターにログインしているかは気にせず、誰がアプリにログインしているかは気にしないためです)。
c# - wcf で wHttpBinding を使用してセッションを有効にする
私はこのコードを書きました:
インターフェース:
サービス:
ウェブ構成:
UserFullName が常に null になるのはなぜですか?
wcf - wcfwshttpbindingを使用したメモリ例外
サーバーにファイルをアップロードするアプリケーションがあります。私はnettcpbindingとwshttpbindingを使用しています。ファイルが200MBを超えると、メモリ例外が発生します。これを回避するために、人々がストリーミングを推奨しているのを見てきました。もちろん、大きなファイル(> 1GB)のnettcpbindingで機能しますが、wshttpbindingを使用する場合、どのようなアプローチがありますか?basichttpbindingに変更する必要がありますか?何??ありがとう。
c# - Unable to use basic authentication to access WCF web service
I am trying to configure a WCF service to allow for both Windows/NTLM and Basic Authentication. Unfortunately, given this configuration only Windows/NTLM works and basic authentication fails with an http status code of 401 Unauthorized.
Our IIS 7.5 server is configured to allow for both of these types of authentication.
What is wrong with the below configuration that is preventing basic authentication from working?
I have also tried using basicHttpBinding
, as a forum post indicated that wsHttpBinding
might prevent basic authentication if WCF felt the password was being passed in clear text.
c# - wshttpバインディング使用時のsystem.service.securityエラー
WindowsベースのアプリであるクライアントアプリケーションからWebサービスにアクセスしようとすると、次のエラーが発生します
System.ServiceModel.Security.SecurityNegotiationException:リモートエンドポイントとのセキュリティネゴシエーションが失敗したため、セキュリティで保護されたチャネルを開くことができません。これは、チャネルの作成に使用されたEndpointAddressにEndpointIdentityがないか、正しく指定されていないことが原因である可能性があります。EndpointAddressによって指定または暗黙的に指定されたEndpointIdentityがリモートエンドポイントを正しく識別していることを確認してください。---> System.ServiceModel.FaultException:セキュリティトークンのリクエストに無効な要素または不正な形式の要素が含まれています。System.ServiceModel.Security.SecurityUtils.ThrowIfNegotiationFault(メッセージメッセージ、EndpointAddressターゲット)at System.ServiceModel.Security.IssuanceTokenProviderBase`1.ThrowIfFault(メッセージメッセージ、EndpointAddressターゲット)atSystem.ServiceModel.Security.SspiNegotiationTokenProvider。
サーバースタックトレース:System.ServiceModel.Security.IssuanceTokenProviderBase
1.DoNegotiation(TimeSpan timeout) at System.ServiceModel.Security.SspiNegotiationTokenProvider.OnOpen(TimeSpan timeout) at System.ServiceModel.Security.TlsnegoTokenProvider.OnOpen(TimeSpan timeout) at System.ServiceModel.Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpan timeout) at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) at System.ServiceModel.Security.SecurityUtils.OpenCommunicationObject(ICommunicationObject obj, TimeSpan timeout) at System.ServiceModel.Security.SymmetricSecurityProtocol.OnOpen(TimeSpan timeout) at System.ServiceModel.Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpan timeout) at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) at System.ServiceModel.Channels.SecurityChannelFactory
1.ClientSecurityChannel1.OnOpen(TimeSpan timeout) at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout) at System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.DoOperation(SecuritySessionOperation operation, EndpointAddress target, Uri via, SecurityToken currentToken, TimeSpan timeout) at System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan timeout) at System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan timeout) at System.ServiceModel.Security.SecuritySessionClientSettings
1.ClientSecuritySessionChannel.OnOpen(TimeSpan timeout)at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)at System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpanタイムアウト)at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)at System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan timeout、CallOnceManagercascade)
System.ServiceModel.Channels.ServiceChannel.EnsureOpened(TimeSpan timeout)at System.ServiceModel.Channels.ServiceChannel.Call(String action、Boolean oneway、ProxyOperationRuntime operation、Object [] ins、Object [] outs、TimeSpan timeout)atSystem。 System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessageメッセージ)でのServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall、ProxyOperationRuntime操作)
私もaspメンバーシッププロバイダーを使用しています...。
私はここ数時間これを機能させようとしていますが、どこにも行きません.....面白いことに、アプリはローカルマシンで動作しますが、リモートマシンからは動作しません
ありがとう
{{
}