問題タブ [geneva-framework]
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-security - クレームベースのセキュリティの実装(WCF / ASP.NET)
クレームベースのセキュリティ(またはフェデレーションセキュリティモデル)のトピックについて調査した後。CardSpaceを例として使用する多くの例に出くわしました。私が読んだ主な記事は、この主題について非常に優れた説明を提供しており、 Zermattと呼ばれるフレームワークに関するMicrosoftのPDFでした。
私が調査しているクレームベースのセキュリティアーキテクチャは、STS認証ブローカーをSTS承認ブローカーと組み合わせて実装するのと同じです。このように、新しいサービスを作成するときに必要なのは、サービスが承認ブローカーによって発行されたクレームのみを受け入れるようにすることだけです。また、記事に記載されているように、Authorization Brokerは、AuthenticationBrokerによって発行されたクレームのみを受け入れます。
それが設定されると、クライアントが新しいサービスを使用しようとするときはいつでも、認証ブローカー で認証し(認証されたクレームを発行)、次に 承認ブローカー で承認される(承認されたクレームを発行する)必要があります。
これはすべて問題なく、ダンディであり、アーキテクチャは明確ですが、STSを実装する方法が正確にはわかりません。前述したように、Web上のほとんどの(すべてではないにしても)例はCardSpaceの使用方法を示していますが、認証スキームをバックアップするデータベースがある場合、それは正確には機能しません。
サンプルシナリオ
代替テキストhttp://img512.imageshack.us/img512/8329/claimsbasedsecurityza6.jpg
federated-identity - Geneva Framework を使用してローカル トークン キャッシュを作成する
ジュネーブ関連の質問はまだあまり見たことがありません。ジュネーブ フォーラムにもこの質問を投稿しました...
私は、幅広いインストールベースを持つ win フォーム アプリがあるシナリオに取り組んでいます。このアプリは、その運用全体を通じて、私たちがホストするさまざまなサービスに頻繁に呼び出しを発行します。
サービスはすべてジュネーブ フレームワークを使用しており、すべてのクライアントは、サービスへのアクセスを許可するトークンを発行するために、まず STS に電話する必要があります。
ws2007FederationHttpBinding を使用してすぐに使用できるように、各サービス呼び出しの前に STS からトークンを取得するようにアプリを構成できますが、サービスを呼び出す作業がほとんど重複しているため、明らかにこれは最も効率的な方法ではありません。
または、アプリから「手動で」トークンを取得するために必要なコードを実装し、サービスで操作を呼び出すときに、事前に取得した同じトークンを渡します (WSTrustClient サンプルとフォーラムのヘルプに基づく)。それはうまく機能するので、解決策はありますが、コードで WCF チャネルを構築する必要があり、素晴らしい WCF 構成から離れているため、あまり洗練されていないと思います。
私は ws2007FederationHttpBinding アプローチを好みます。クライアントは、Geneva について何も知らずに、他の WCF サービスと同じようにサービスを呼び出すだけで、バインディングがトークン交換を処理します。
その後、誰か (Jon Simpson) が [私が思うに] 素晴らしいアイデアをくれました - アプリ自体でホストされ、ローカルで取得したトークンをキャッシュするサービスを追加します。ローカル キャッシュ サービスは、STS と同じコントラクトを実装します。リクエストを受信すると、キャッシュされたトークンが存在するかどうかを確認し、存在する場合はそれを返し、存在しない場合は「実際の」STS を呼び出し、新しいトークンを取得し、キャッシュして返します。クライアント アプリは引き続き ws2007FederationHttpBinding を使用できますが、発行者として STS を使用する代わりに、ローカル キャッシュを使用します。
このようにして、サービス固有のカスタム コードを使用せずにトークンをキャッシュするという、両方の長所を実現できると思います。キャッシュはすべての RP のトークンを処理できる必要があります。
私はそれが機能するかどうかを確認するために非常に単純なプロトタイプを作成しました.
私のローカル サービス (現在はコンソール アプリ) が要求を取得し、最初に STS を呼び出してトークンを取得し、それをキャッシュして、正常にクライアントに返します。その後、クライアントはそれを使用して RP を呼び出します。すべてうまくいきます。
ただし、2 回目は、ローカルのキャッシュ サービスが同じトークンを再度使用しようとしますが、クライアント側は MessageSecurityException で失敗します -
「セキュリティ プロセッサは、メッセージ内のセキュリティ ヘッダーを見つけることができませんでした。これは、メッセージがセキュリティで保護されていない障害であるか、通信する当事者間にバインディングの不一致があるためである可能性があります。これは、サービスがセキュリティ用に構成されていて、クライアントがセキュリティを使用していません。」
同じトークンが複数回使用されるのを妨げているものはありますか? WSTrustClient サンプルに従ってトークンを再利用したとき、うまく機能したので、私はそれを疑っています。私は何が欠けていますか?私の考えは可能ですか?いいもの?
これは、ローカルキャッシュの(この段階では非常に基本的な)メインコードビットです-
asp.net - パッシブSTSの依拠当事者における必須/オプションのクレームタイプの指定
クレーム値の認証と取得にパッシブSTSを使用するasp.netアプリケーション(証明書利用者)があります。証明書利用者は、FederatedAuthenticationModule(FAM)を使用して、stsへのパッシブリダイレクトを有効にしています。InformationCardsを使用するときに必要なクレームを指定する方法に関するドキュメントを見つけましたが、FAMを使用してこれを構成する方法に関する詳細な情報をまだ見つけていません。
誰かがこれの例を持っていますか?私が見つけた最も近い例は、Geneva Frameworkのサンプルですが、アクティブなSTSとWCFを扱っていますが、これは適用されません。
前もって感謝します。
authorization - ADFS からジュネーブ フレームワークへの移行
私の会社はフェデレーション ID ソリューションを必要としており、マイクロソフト ショップとして、この目標を達成するために MS テクノロジを使用することを検討しています。
Server 2008 または .NET 3.5 は運用環境にないため、.NET 2.0/Server 2003 ベースのソリューションに限定されます。
これは、(フェデレーション ID ソリューションに関して) Active Directory フェデレーション サービスを意味します。
ADFS は WS-Federation 標準をサポートしているため、非常に優れているように見えます。つまり、Microsoft テクノロジを使用していないパートナーとフェデレーションできます。
残念なことに (私たちにとって)、Microsoft は .NET 3.5 ベースの ID フレームワークであるGeneva Frameworkのリリースを間近に控えています。
Geneva フレームワークは、あらゆる点で ADFS よりも優れているように見えます (ほとんどの場合、ADFS に追加の機能と標準サポートが追加されているためです)。
私たちは .NET 3.5 ショップではなく、Geneva はベータ版のみであるため、現時点では実行可能なオプションではありません。
私の質問は次のとおりです。ADFS からジュネーブに移行するのはどれほど難しいでしょうか?
ADFS の概念実証段階にあるので、ID ベースの承認から ADFS クレーム ベースに移行するために必要なコードの変更についてはまだ掘り下げていません。このロジックは、Geneva クレーム ベース認証をサポートするように更新できるアセンブリに組み込むことができると確信しています。
必要なコードの変更に加えて、クレーム ベースのインフラストラクチャを ADFS から Geneva に移行するのはどれほど難しいでしょうか? (例: ADFS の STS (Federation Service) から Geneva の STS (Geneva Server) への移行)
このトピックに関するご意見をお寄せいただきありがとうございます。
java - JavaからMicrosoftGenevaサーバーと通信する
誰かがJavaからMicrosoftGenevaServerと対話しようとしましたか?
一般的に利用可能なライブラリのいくつかの組み合わせを使用して、それを簡単に行うことができますか?もしそうなら:調べるべき重要なJavaライブラリ/フレームワークは何ですか?
federated-identity - ジュネーブ フレームワークにおける RP-STS の単純なクレーム変換
Microsoft Geneva Framework を使用したカスタム STS の実装に関する MSDN の記事 ( http://msdn.microsoft.com/en-us/magazine/2009.01.genevests.aspx ) を読んだ後、そこで取り上げられているシナリオの 1 つについて少し戸惑いました。 . このシナリオは、上記の参照記事の図 13 に示されています。
私の質問は、IP-STS から既に取得したクレームを渡すために、RP が RP-STS への呼び出しを開始する方法についてです。目的のメソッド DeleteOrder() は、RP-STS からの Action クレームの Claim Request にどのように変換されますか? RP-STS は、呼び出しを承認する値 Delete を持つ Action クレームで応答しますか? また、RP-STS とポリシー エンジンの間の相互作用では、クレームと矢印が逆になるはずであるという点で、この図は少し間違っていると思います。
構造はわかりますが、Geneva/WCF によって提供されているものと、RP 内のコードで何を実行する必要があるかが明確ではありません。これは、削除の PrincipalPermission 要求で DeleteOrder メソッドを保護できなかったため、少し奇妙に思えます。許可」ですが、最初に役割を要求し、その後、削除アクションのきめ細かい要求を取得する必要があります。
要点を見逃していた場合は (Web 上でこのケースを簡単にカバーすることができないため)、申し訳ありません。
前もって感謝します。
asp.net-mvc - asp.net mvc セキュリティ
ASP.NET mvc コントローラーへの匿名アクセスを禁止するにはどうすればよいですか? 具体的には、すべてのコントローラーへの認証済みアクセスを要求し、.css ファイルや .js ファイルなどのリソース タイプ ファイルへの匿名アクセスを許可したいと考えています。Microsoft Geneva を使用しているため、メンバーシップ サービスを使用する予定はありません。
openid - アプリケーションから ID を外部化する傾向
Stackoverlow が OpenID を使用することを決定したのはおそらくその単純さによるものですが、他の人は情報カード (カードスペースなど) が主要な業界ベンダーによってサポートされており、より安全であることが知られているという点でより優れた戦略であると考えています.
開発者が両方を簡単にサポートする Java Web アプリケーションにドロップできるライブラリはありますか?
.net - ジュネーブ枠組みの代替
Microsoft Geneva Framework (できればオープン ソース)に代わるものはありますか。本番環境で使用する予定ですが、ジュネーブ フレームワークがベータ版である間、Microsoft はそれを許可しないライセンスを持っているようです。
java - ジュネーブベースのSTS、Java相互運用
Genevaベースの統合セキュリティサービスをNetBeans/WSITで使用できるかどうかをテストしたいと思います。ステップバイステップガイドのようなものはありますか?サーバー側は「HTTPS経由のメッセージクレデンシャル」セキュリティモードを使用しますが、私が見たすべての例はメッセージレベルの暗号化に依存し、JavaRPサービスからの.netSTSの消費に焦点を当てています。