标签: google-chrome-os

无法从Chromebook登录窗口注册U2F令牌

我们有自己的SSO服务器,它具有允许在身份验证过程中注册U2F令牌的功能.

此功能适用于使用Chrome的PC(带或不带U2F浏览器扩展程序).在用户成功通过身份验证后,在Chromebook上的浏览器中使用它也很有效.

但是,当我们在Chromebook上启用SSO并尝试在身份验证过程中注册U2F令牌时,注册似乎不起作用.经过一些调试后,我们发现onMessage在向u2f_register_request通道发送U2F寄存器请求后没有调用事件监听器.

但是,对于签名请求(在使用PC注册后进行身份验证时)也是如此.当我们发送请求时,u2f_sign_request我们在onMessage回调上成功收到消息.

有没有人遇到过这个问题?或者知道可以让我们在认证过程中进行注册?

以下显示了用于发布到频道的一些代码:

// 1.连接到扩展

var port = chrome.runtime.connect("kmendfapggjehodndflmmgagdbamhnfd", {'includeTlsChannelId': true});
Run Code Online (Sandbox Code Playgroud)

// 2.绑定回调函数

port.onMessage.addEventListener(function(message) {
// this callback not been invoked if post 'u2f_register_request' message to channel in chrome OS login page
     handler({'data': message});
});
Run Code Online (Sandbox Code Playgroud)

// 3.将消息发布到扩展名.

port.postMessage({
     type: 'u2f_register_request',
     signRequests: signRequests,
     registerRequests: registerRequests,
     timeoutSeconds: (typeof opt_timeoutSeconds !== 'undefined' ?
     opt_timeoutSeconds : u2f.EXTENSION_TIMEOUT_SEC),
     requestId: reqId
});
Run Code Online (Sandbox Code Playgroud)

使用的代码可以在(https://github.com/Yubico/java-u2flib-server/blob/master/u2flib-server-demo/src/main/resources/assets/u2f-api.js)找到.

Chromebook信息如下:

谷歌Chrome版本(和Chromebook信息)
版本:43.0.2357.125
框架版本:6946.58.0(官方版本)stable-channel kip
软件版本:Google_Kip.5216.227.5
开始模式:已验证
型号:HP Chromebook 11 …

javascript authentication google-chrome-os chromebook fido-u2f

5
推荐指数
0
解决办法
235
查看次数

如何检测Pixelbook Pen按钮?

我遵循此处的文档以在绘制时捕捉Pixelbook笔上按下的按钮,但是永远不会引发TOOL_TYPE_ERASER事件。当我尝试打印日志时,按住和释放按钮之间没有任何区别:

onTouchEvent:MotionEvent { action=ACTION_DOWN, actionButton=0, id[0]=0, x[0]=2010.4766, y[0]=778.10156, toolType[0]=TOOL_TYPE_STYLUS, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=0, eventTime=1395185, downTime=1395185, deviceId=1, source=0x1002 }
2018-09-29 16:15:35.527 2926-2926/com.  onTouchEvent:MotionEvent { action=ACTION_MOVE, actionButton=0, id[0]=0, x[0]=2009.2734, y[0]=777.6406, toolType[0]=TOOL_TYPE_STYLUS, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=4, eventTime=1395195, downTime=1395185, deviceId=1, source=0x1002 }
2018-09-29 16:15:35.552 2926-2926/com.  onTouchEvent:MotionEvent { action=ACTION_MOVE, actionButton=0, id[0]=0, x[0]=2008.0703, y[0]=776.71484, toolType[0]=TOOL_TYPE_STYLUS, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=9, eventTime=1395221, downTime=1395185, deviceId=1, source=0x1002 }
2018-09-29 16:15:35.569 2926-2926/com.  onTouchEvent:MotionEvent { action=ACTION_MOVE, actionButton=0, id[0]=0, x[0]=2007.8867, y[0]=776.25, toolType[0]=TOOL_TYPE_STYLUS, buttonState=0, metaState=0, flags=0x0, …
Run Code Online (Sandbox Code Playgroud)

android google-chrome-os touch-event stylus-pen

5
推荐指数
1
解决办法
85
查看次数

您将提倡哪些研究 - 操作系统功能,包括谷歌Chrome操作系统

想象一下,一个大型玩家正在构建一个新的操作系统,其中向后兼容性要求仅限于:

  • 运行用(或编译)JavaScript编写的现有应用程序,这些应用程序以HTML5格式呈现并使用CSS3进行样式设置

  • 即插即用支持打印机,外部存储和光驱

  • 与互联网断开连接时优雅地降级

  • 足够的流程配额,支持安全地允许任务在后台运行,包括计时器

现有研究操作系统(如计划9)的哪些特定功能您希望通过此渠道进入主流?请将您的建议限制为已实施的内容,并提供实施链接(或至少搜索条款).

Plan 9 docs:

计划9始于20世纪80年代后期,试图将其与两种方式结合起来:使用廉价的现代微型计算机作为计算元素,建立一个集中管理并具有成本效益的系统.

上网本有资格成为廉价的现代微型计算机,而云计算资格为集中管理.有机会实现我们希望上网本除了扩展1970年代分时操作系统之外的功能(用DDaviesBrackett的话说); 研究操作系统可能已经通过实例证明了替代品的价值.


Plan 9 FAQ:

主题:它的主要观点是什么?

计划9尽可能利用三个基本技术思想:首先,所有系统对象都将自己呈现为由读/写操作操纵的命名文件; 第二,所有这些文件可以本地或远程存在,并响应标准协议; 第三,文件系统名称空间 - 程序可见的对象集 - 可以为特定机器上运行的每个程序动态地和单独地调整.前两个想法在Unix中预示着,在其他系统中则较少,而第三个是新的:它允许新的工程解决方案解决分布式计算和图形问题.Plan 9的方法意味着应用程序不需要知道它们的运行位置; 运行Plan 9计划的地点和计算机是一种经济决策,不会影响应用程序本身的构建.

这似乎不适合上网本/云域吗?

google-chrome-os plan-9

4
推荐指数
1
解决办法
1790
查看次数

在Google键盘上插入模式

我刚刚在网上的浏览器标签中输入HTML,并且突然在Chromebook(Chrome OS)上使用键盘触发了插入模式(键入时覆盖了以下字符) - 我不知道如何关闭它只需保存我的草稿.我从来不知道我有这种能力,也无法弄清楚如何重新获得它.该快捷键列表在线提供任何提示!

我想我正在玩ctrl shift和alt但不知道其他键不幸...

google-chrome-os

4
推荐指数
1
解决办法
7274
查看次数

Snap 无法在 Debian Buster Crostini 上安装其 squashfs 映像

我需要帮助解决 Debian Buster Crostini 上的 Snap Package Manager 的大问题。每当我尝试使用 Snap 包管理器安装 Anbox 时,都会出现错误:

error: system does not fully support snapd: cannot mount squashfs image using
   "squashfs": mount: /tmp/sanity-mountpoint-772933788: mount failed:
   Operation not permitted.
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助解决这个问题吗?

debian google-chrome-os squashfs crostini

4
推荐指数
1
解决办法
4250
查看次数

如何在打包的应用程序中为Chrome OS或Chrome扩展程序启用相机和麦克风?

我正在测试以下场景:我在单独的窗口中调用视频群聊网页,但应用程序无法访问麦克风和摄像头-按钮为红色,消息提示“环聊无法使用所选的麦克风/摄像头”。

我已包含权限"audioCapture""videoCapture"

要使其工作必须做什么?

编辑:

允许媒体应用访问摄像头和麦克风后-我可以在环聊设置中看到这一点,但图片和语音不会通过环聊传输给其他参与者。我必须为流媒体设置什么?

我已经有了这段代码:

navigator.webkitGetUserMedia({ audio: true, video: true },
            function (stream) {
                mediaStream = stream;
            },
            function (error) {
                console.error("Error trying to get the stream:: " + error.message);
            });    
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome-os google-chrome-app getusermedia

3
推荐指数
1
解决办法
3857
查看次数

如何在没有 Chromebook 硬件的情况下测试 Android 应用程序的 Chromebook 兼容性?

谷歌宣布在 Chromebook 上的 Chrome OS 中支持 Android 应用程序。是否可以在没有 Chromebook 硬件的情况下在 Chromebook 上测试我的 android 应用程序?任何模拟器或 VirtualBox 图像等?

android virtual-machine google-chrome-os android-emulator chromebook

3
推荐指数
1
解决办法
1098
查看次数

如何找到Crostini容器的IP地址?

我正在Crostini上运行Node.js服务器,并尝试通过localhost从同一个Chrome OS设备上运行的Android浏览器访问它:8080不起作用.

我试过了penguin.linux.test:8080,但那也没用.看起来Android容器没有得到正确的DNS设置.

那么如何获取Linux容器的IP地址?ifconfig没有安装,apt install无法获得它.

google-chrome-os crostini

3
推荐指数
1
解决办法
1166
查看次数

dbus-1.0/dbus/dbus.h:29:10:致命错误:找不到“dbus/dbus-arch-deps.h”文件

我在程序中使用 dbus,但是当我包含时 #include <dbus-1.0/dbus/dbus.h> 出现错误: dbus-1.0/dbus/dbus.h:29:10: fatal error: 'dbus/dbus-arch-deps.h' file not found

dbus文件夹中没有dbus-arch-deps.h文件。

我可以在文件夹中看到该文件lib64/dbus-1.0/include/dbus/dbus-arch-deps.h

任何人都可以帮我编译这个吗?或任何建议,因为我被困在这里。

dbus google-chrome-os

3
推荐指数
1
解决办法
5631
查看次数

有没有办法从 Android 应用程序获取 Chromebook 的真实 IP?

我有一个Android应用程序,需要设备的真实IP,而不是虚拟网络IP。我不需要公共IP,除非Chromebook位于公共IP上,我只需要LAN的私有IP,但现在我得到了一个虚拟IP,我猜这是Android的虚拟网络应用。

使用两者WifiManagerNetworkInterface.getNetworkInterfaces()我得到的只是虚拟IP。调用外部服务器是行不通的,因为这会让我获得公共IP。

我知道过去有人问过这个问题,但我只是想检查一下是否有人找到了方法?

android google-chrome-os chromebook

3
推荐指数
1
解决办法
995
查看次数