問題タブ [liveconnect]
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.
authentication - Azure ACS ID プロバイダーとしての Live Connect
アプリケーションのフェデレーション ゲートウェイとして Azure ACS を使用しており、ユーザーが Google、Yahoo、および Windows Live ID で認証できるようにしています。ユーザーのメールアドレスが必要です。Google と Yahoo は電子メールを提供しますが、Windows Live ID は提供しません。
ユーザーが Live Connect で認証されている場合、ユーザーの電子メール アドレスを取得できますが、Azure ACS で使用できる Live Connect ID プロバイダーがありません。ACS で Live Connect を ID プロバイダーとして設定する方法はありますか?
java - javascriptを使用して(Javaメソッドを介して)Java変数にアクセスするとエラーが発生する
何らかの理由で、JavaScript を使用して変数を読み取ることができません。
アプレットを使用していますが、Chrome コンソールに表示されるエラーは次のとおりです。
キャッチされないエラー: java.security.AccessControlException: アクセスが拒否されました ("java.lang.RuntimePermission" "getenv.processor_identifer")
不明なエラー: NPObject のメソッドの呼び出し中にエラーが発生しました。
アクセスコード:
何か案は?
liveconnect - Microsoft Live Connect、REST アクセスの問題
Java Web アプリケーションから Microsoft LiveConnect にアクセスしようとしています。そして、トークンの取得に問題があります。
問題は次のとおりです。 http://msdn.microsoft.com/en-us/library/live/hh243647.aspx#authcodegrantに示されている認証コード付与フローに従いました。
LiveConnect は、次の形式の URL を使用して、ユーザー エージェント (ブラウザー) をサーバーにリダイレクトします
次に、私の Web アプリは、次の形式で LiveConnect に REST (POST 要求) を発行します。
意味のあるデータを返す代わりに、LiveConnect は次のような無関係な情報を含む HTML ページを返します。
REST API に関連する Java コードもここに投稿します。
c# - トークンを更新するためのライブ接続 SDK REST 要求
トークンを更新しようとしていますが、「リモート サーバーがエラーを返しました: (400) 不正な要求」というエラーが表示されます。私のコードは次のとおりです。
ブラウザから送信すると、
POSTでやってみましたが、同じ問題でした。アイデアはありますか?
oauth-2.0 - Live Connect OAuth2 の深刻なリプレイ攻撃の問題? 認証コードを複数回使用できるのはなぜですか?
まず、お時間をいただきありがとうございます。Live Connect の OAuth2 API について深刻な懸念があります。
私はこれに従い、DotNetOpenAuth を使用して、フェデレーション ID およびアクセス管理システムの LiveId 認証/承認を実装/統合します。
http://msdn.microsoft.com/en-us/library/live/hh243647.aspx#authcodegrant
すべてがかなり長い間正常に機能しています。しかし、現在、LiveId ログイン モジュールのリプレイ アタックの問題を修正する際に深刻な問題が発生しています。上記の記事の Authorization code grant フローを見てみましょう。
"*4. ユーザー エージェントは、リダイレクト URI を使用してクライアントを呼び出します。このリダイレクト URI には、クライアントから提供された承認コードと任意のローカル状態が含まれます。例: ...Callback.htm?code=AUTHORIZATION_CODE. 5. クライアントが要求する認証用のクライアント資格情報を使用して認可サーバーのトークン エンドポイントからアクセス トークンを取得し、前の手順で受け取った認可コードを含めます。クライアントには、検証用の認可コードを取得するために使用されたリダイレクト URI が含まれます。*"
ステップ 4 の直後に、Live Connect OAuth2 サーバーは、次のように認証コードと状態を使用してコールバック エンドポイントに戻ります。
問題は、認証コードが複数回使用される可能性があることです。したがって、次のシナリオのように、深刻なリプレイ攻撃の問題につながります。
ユーザー A がアプリケーションにログインするときに LiveId を選択してサインインすると、LiveId ログイン ページにリダイレクトされます。次にログインすると、Live Connect OAuth2 サーバーは code=xxx&state=yyy...user A でコールバック エンドポイントに戻り、この認証コードを使用してアクセス トークンを取得しました...
ユーザー B は、アプリケーションにログインするときに LiveId を選択してサインインし、LiveId のログイン ページにログインしました。Live Connect OAuth2 サーバーが code=kkk&state=ggg を返すようになりました
今回は、Webscarab などのツールを使用して応答/要求をキャプチャし、OAuth2 サーバーからの戻り値を code=xxx&state=ggg に変更します (古い認証コードはユーザー B ではなくユーザー A に与えられました)。その後、このリプレイ認証コードを使ったアクセストークンのリクエストは順調に進みました。そして、何を推測しますか?以前にユーザー A に与えられた ACCESS TOKEN を再度受け取りました...そして最終的に、ユーザー B はユーザー A として私のアプリケーションにログインできます。
上記と同じリプレイ攻撃を Google OAuth2 サーバーに適用すると、サーバーから不正なリクエスト エラーが返され、Google OAuth2 承認コードが 2 回以上使用されないことに注意してください。コード フローというか、Google ログインと LiveId ログインの実装はまったく同じです。
DotNetOpenAuth.OAuth2.WebServerClient を使用して、Google と LiveId の両方の OAuth2 認証フローを実装しました。繰り返しますが、まったく同じコードですが、Google OAuth2 サーバーは認証コードを再利用すると「不正な要求」を返しましたが、LiveId は以前のユーザーの古いアクセス トークンを返しました。
これは深刻なセキュリティ上の問題です。皆さんがこれについていくつかのアイデアを持っていることを願っています. またはうまくいけば、私はいくつかの点で間違っています。指摘してください。
Phuc Leさん、どうもありがとう。
java - Java FX liveconnect - FX アプリケーションから JavaScript 関数を呼び出す
問題に直面しています。Java FX アプリケーションからブラウザに通信する必要があります。その前に、次のような情報を見つけました:
これで JavaScript 関数にアクセスできます。しかし、私の Java FX アプリケーションはアプレットではありません (実装していませんJApplet
)。では、getWindow() への入力として何を指定できますか。
なにか提案を?
java - javaFx を使用してブラウザーで Json および httpclient jar にアクセスする
私のアプリケーションでは、java Live connect api を使用してブラウザに javafx アプリケーションをロードし、http://docs.oracle.com/javafx/2/deployment/deployment_toolkit.htm で参照されているように、dtjava.js を使用して jsp を介して fx アプリケーションにアクセスしています。fx application(Id="app") を参照して、html/javascript ボタンを使用して fx メイン クラス メソッドにアクセスしています。
app.methodname() がうまくいくまで。
しかし、それらがアクセスしている場合、メソッドにアクセスできません
JSONArray 配列 = 新しい JSONArray();
(すべての jar がサインインしています) json jars(json-lib-2.3-jdk15.jar) または org.apache.commons.httpclient.jar に broser html ボタンからアクセスしているときに問題に直面しています)。
次のようなJavaデバッグコンソールで応答を取得する
提案はありますか?
java - Java から JavaScript への通信 (LiveConnect) が最近壊れましたか?
このリンクを見てください:
http://www.chemaxon.com/marvin/examples/applets/sketch/chemicalterms2.html
このアプレットは信頼され、署名されていますが、動作する構成 (OS/ブラウザー/Java) が見つかりません...
私は持っている:
- Ubuntu 12.04 / FF 25 / Java 1.7.0_45-b18
- Ubuntu 12.04 / Chromoum 30.0.1599.114 / Java 1.7.0_45-b18
- OS X 10.9 / FF25 / 1.7.0_21-b12
- OS X 10.9 / サファリ 7.0 (9537.71) / 1.7.0_21-b12
これらすべての環境で、同じ js エラーが表示されます。
LiveConnect が壊れていますか? どうすれば修正できますか?どんな助けでも大歓迎です!
java - Java 7u51 が利用可能になったので、LiveConnect 呼び出しは 7u45 でブロックされます。
ウィンドウを閉じていくつかのクリーンアップ タスクを実行するときに LiveConnect 呼び出しを行う次の JavaScript コードを含む Java アプレットを含むページがあります。
昨日まで、これは期待どおりに機能し、アプレット内でクリーンアップ タスクを実行していました。
Java 7u51 が利用可能になったので、今日このアプレットにアクセスし、最新バージョンの Java に更新するように求められたときに [後で] を選択しました。ウィンドウを閉じると、JavaScript エラーが発生します。
オブジェクトはプロパティまたはメソッド「closeCheck」をサポートしていません
これを明確にするために、Java 7u45 がインストールされています。
これは予想される動作ですか、それとも 7u45 でも動作させるためにできることはありますか? リリース ノートでこれについての言及を見つけることができません。また、7u51 より前のバージョンでは、最新のセキュリティ ベースラインに準拠していなくても、ライブ コネクト コールは機能していました。
アップデート
上記は、私の Java セキュリティを High に設定したものです。
私はそれをミディアムに変更し、上記を繰り返しました。LiveConnect 通話を許可するかブロックするかを尋ねるメッセージが表示されます。
セキュリティベースライン (7u51) を使用している場合にのみ LiveConnect が機能するという文書化されていない (私が見つけることができる限り) 要件があるようです。
7u51 に更新すると、アプレットに変更を加えることなく、アプレットへの LiveConnect 呼び出しが機能することに注意してください。