问题标签 [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 身份提供者的 Live Connect
我使用 Azure ACS 作为我的应用程序的联合网关,我允许用户使用 Google、Yahoo 和 Windows Live ID 进行身份验证。我需要用户的电子邮件地址。Google 和 Yahoo 提供电子邮件,但 Windows Live ID 不提供。
如果用户使用 Live Connect 进行身份验证,但 Azure ACS 中没有可用的 Live Connect 身份提供程序,我可以获得用户的电子邮件地址。有什么方法可以将 Live Connect 配置为 ACS 中的身份提供者?
java - 使用 javascript 访问 java 变量(通过 java 方法)时出错
由于某种原因,我无法使用 JavaScript 读取变量。
我正在使用一个小程序,我在 Chrome 控制台中遇到的错误是:
未捕获的错误:java.security.AccessControlException:访问被拒绝(“java.lang.RuntimePermission”“getenv.processor_identifer”)
未捕获的错误:在 NPObject 上调用方法时出错。
访问代码:
有任何想法吗?
java - 如何使用 Java 小程序获取绝对文件路径
我正在尝试在网络浏览器中获取绝对文件路径。我了解到使用纯 HTML 和 javascript 是不可能的,而 Java 小程序是最好的途径。不幸的是,我对 Java 的了解充其量只是初级的。到目前为止,我有这个 java 代码:
从我在http://jdk6.java.net/plugin2/liveconnect/#JS_TO_JAVA读到的内容,我可以从 javascript 调用小程序方法,所以我想出了这个测试网页:
但是,在萤火虫控制台中,我得到:
类型错误:fileabs.getFilePath 不是函数
我觉得我错过了一些明显的东西。谁能帮我弄清楚我在这里有什么问题?
liveconnect - Microsoft Live Connect,REST 访问问题
我正在尝试从 Java webapp 访问 Microsoft LiveConnect。而且我在获取令牌时遇到了问题。
问题如下:我遵循了http://msdn.microsoft.com/en-us/library/live/hh243647.aspx#authcodegrant中所示的授权代码授予流程
LiveConnect 使用以下格式的 URL 将用户代理(浏览器)重定向到我的服务器
然后我的网络应用程序使用以下格式向 LiveConnect 发出 REST(POST 请求)
LiveConnect 没有返回一些有意义的数据,而是返回一个包含一些不相关信息的 html 页面,像这样
我还在这里发布了涉及 REST api 的 Java 代码
c# - 用于更新令牌的实时连接 SDK REST 请求
我正在尝试更新令牌,但出现错误“远程服务器返回错误:(400) 错误请求。” 我的代码是:
如果我从浏览器发送它,我会得到
我试图用 POST 来做,但这是同样的问题。有什么想法吗?
oauth-2.0 - Live Connect OAuth2 的重放攻击问题严重吗?为什么允许多次使用授权码?
首先感谢您的时间。我非常担心 Live Connect 的 OAuth2 API。
我遵循这一点,并使用 DotNetOpenAuth 为我们的联合身份和访问管理系统实施/集成 LiveId 身份验证/授权。
http://msdn.microsoft.com/en-us/library/live/hh243647.aspx#authcodegrant
在很长一段时间内一切正常。但是现在我在修复 LiveId 登录模块的重放攻击问题时遇到了严重的麻烦。让我们看一下上面文章中的授权码授予流程。
"*4. 用户代理使用重定向 URI 调用客户端,其中包括授权代码和客户端提供的任何本地状态。例如:...Callback.htm?code=AUTHORIZATION_CODE。 5. 客户端请求来自授权服务器的令牌端点的访问令牌,使用其客户端凭据进行身份验证,并包括在上一步中收到的授权代码。客户端包括用于获取授权代码以进行验证的重定向 URI。*"
在第 4 步之后,Live Connect OAuth2 服务器返回到我的回调端点,并带有授权码和状态,如下所示:
问题是,授权码可以多次使用。因此它会导致严重的重放攻击问题,例如以下场景:
用户 A 在登录我的应用程序时,选择 LiveId 登录,然后他被重定向到 LiveId 登录页面。然后他登录,Live Connect OAuth2服务器返回回调端点,code=xxx&state=yyy...用户A然后使用此授权码获取访问令牌...
用户 B 在登录我的应用程序时,选择 LiveId 登录,然后他在 LiveId 的登录页面登录。Live Connect OAuth2 服务器现在返回 code=kkk&state=ggg
如果我这次,使用 Webscarab 之类的工具来捕获响应/请求,然后将 OAuth2 服务器的返回更改为 code=xxx&state=ggg(旧的授权码是给用户 A,而不是 B)。之后,使用此重放授权码请求访问令牌顺利进行。你猜怎么着?我再次收到了之前给用户 A 的 ACCESS TOKEN……最后,用户 B 可以作为用户 A 登录到我的应用程序。
请注意,对 Google OAuth2 服务器应用与上述相同的重放攻击,我收到来自服务器的错误请求错误,Google OAuth2 授权码永远不能被多次使用。并且代码流程或者确切地说,谷歌登录和 LiveId 登录的实现是完全一样的。
我使用 DotNetOpenAuth.OAuth2.WebServerClient 为 Google 和 LiveId 实现 OAuth2 身份验证流程。再次,完全相同的代码,但谷歌 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 都已登录)我在从 broser html 按钮访问 json jar(json-lib-2.3-jdk15.jar)或 org.apache.commons.httpclient.jar 时遇到问题)。
在 java 调试控制台中获得响应,如
有什么建议吗?
java - Java 到 javascript 的通信 (LiveConnect) 最近坏了?
看看这个链接:
http://www.chemaxon.com/marvin/examples/applets/sketch/chemicalterms2.html
这个小程序是可信的、签名的等,但我找不到它工作的配置(操作系统/浏览器/Java)......
我有:
- Ubuntu 12.04 / FF 25 / Java 1.7.0_45-b18
- Ubuntu 12.04 / 铬 30.0.1599.114 / Java 1.7.0_45-b18
- OSX 10.9 / FF 25 / 1.7.0_21-b12
- OSX 10.9 / Safari 7.0 (9537.71) / 1.7.0_21-b12
在所有这些环境中,我都可以看到相同的 js 错误:
LiveConnect 坏了吗?我该如何解决?任何帮助表示赞赏!
java - 由于 Java 7u51 可用,LiveConnect 调用在 7u45 上被阻止
我有一个带有 Java 小程序的页面,其中包含以下 JavaScript 代码,当窗口关闭以执行一些清理任务时,它会调用 LiveConnect:
直到昨天,这都按预期工作,并在小程序中执行了清理任务。
现在 Java 7u51 可用了,我今天访问了这个小程序,并在提示更新到最新版本的 Java 时选择了“稍后”。现在,当我关闭窗口时,我收到一个 JavaScript 错误:
对象不支持属性或方法“closeCheck”
只是为了澄清这一点,安装了 Java 7u45。
这是预期的行为还是我能做些什么让它在 7u45 上仍然有效?我在发行说明中找不到任何提及这一点,在 7u51 之前,我们的实时连接调用仍然可以在没有最新安全基线的情况下工作。
更新
以上是我的 Java 安全设置为高。
我已将其更改为中并重复上述内容。我现在收到一条消息,询问我是要允许还是阻止 LiveConnect 呼叫。
现在似乎有一个未记录的(据我所知)要求 LiveConnect 仅在您处于安全基线 (7u51) 时才能工作。
请注意,一旦我更新到 7u51,对小程序的 LiveConnect 调用无需对小程序进行任何更改即可工作