カスタムServiceAuthorizationManagerを使用してCheckAccessをオーバーライドし、URLの一部であるカスタム認証トークンを検証します。私が検証した後、私はGenericPrincipalでThread.CurrentPrincipalを設定します。しかし、リクエストが最終的に私のサービスメソッドに到達すると、Thread.CurrentPrincipalはなくなりました。これは、認証マネージャで設定したものではありません。 どうしたのですか?WCFサービス認証マネージャーThread.CurrentPrincipalを設定します
3
A
答えて
6
私はサービスの認証マネージャを登録サービスの動作にprincipalPermissionMode =「なし」を設定しないことにより、この問題を回避ました:
は、詳細な紹介はこちらの記事を参照してください。これは、現在のスレッドにプリンシパルを置かないようにwcfランタイムに指示しているはずです。それを「カスタム」に設定すると、GenericPrincipalを使用して設定したプリンシパルを上書きします。
1
あなたは承認のための組み込みのメカニズムを使用したくない場合は、WCFは、現在のプリンシパルが適切WCFパイプラインに統合することがIAuthorizationPolicyを介して識別されている必要があります。 PrincipalPermissionModeに 'Custom'を指定する必要があります。 Authorization In WCF-Based Services
関連する問題
- 1. WCF認証サービス
- 2. 認証WCF RESTサービス
- 3. WCFサービス認証メッセージ
- 4. WCF Webサービス+認証
- 5. スタンドアロン認証wcf Webサービス
- 6. WCFサービスでの認証
- 7. の認証WCFサービスASP.NETアプリケーション
- 8. WCF、ASP.NETメンバーシッププロバイダと認証サービス
- 9. IIS WCFサービス認証、javascriptクライアント
- 10. WCFサービスでの認証
- 11. WCFを使用した認証サービス
- 12. 基本認証とWCF RESTサービスの設定に問題があります
- 13. 設定なしのWCFサービス
- 14. SilverlightとWCFサービス間の認証がASP.Net認証なし
- 15. WCFクライアントとサービスの間の認証を維持しますか?
- 16. サービスのみのWCF証明書認証(クライアント証明書なし)
- 17. wcfサービスで認証と認可を提供できません
- 18. IAuthorizationPolicyからThread.CurrentPrincipalを設定しますか?
- 19. Thread.CurrentPrincipalを非同期に設定しますか?
- 20. IIS WCFサービス(NTLM認証のJAVA経由)
- 21. 安らかなWCFサービス認証
- 22. SessionIdによるWCFサービス認証
- 23. Windows認証WCFサービスの使用
- 24. WCFサービスの双方向SSL認証
- 25. は、Windowsのライセンス認証サービス+ WCF COM +
- 26. Java認証のカスタム認証マネージャーを持つOauth認証サーバー
- 27. Unity設定セクションとWCFサービス
- 28. ldap認証のtomcatマネージャー
- 29. AzureでWCF設定/認証が機能しない
- 30. WCF REST C#サイトのoAuth認証を設定するには
あなたはあなたが言ったカスタム認証をどうやってやっていますか?これはPrincipalPermissionModeを 'None'として使用できますか? –
私はログイン中に認証チケットを送り、クライアントはそれを追跡し、それを後続のサービスで使用します。 authticketが有効でない場合、私はServiceAuthorizationManagerの実装からfalseを返します。それが有効な場合、私はcurrrentスレッドで一般的なプリンシパルを設定します。あなたはNoneにprincipalPermissionModeを設定しない場合は、あなただけの設定、一般的な原理は、どこかにラインの下の上書きされます。 – sash