问题标签 [keytar]

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.

0 投票
1 回答
498 浏览

javascript - 未处理的拒绝 (TypeError):keytar.setPassword 不是函数

我正在尝试使用 keytar.js 保存密码,由于某种原因,我在使用 keytar 中的任何功能时不断收到此错误。

有关信息:lib。已安装并且功能在那里并且存在(我使用console.log检查)并且它们与catch()一起工作得很好。

这是一些代码:

我在 react 的 componentDidMount() 函数中使用它,

我尝试了这两个版本,但似乎都没有工作:

这里也有一些错误日志:

如果有人可以提供帮助,我将不胜感激。谢谢。

0 投票
2 回答
1877 浏览

electron - 无法在电子项目的 main.js 中使用 keytar

我不断收到此错误:

我已将其background.js设置为主电子文件,package.json因为我正在使用 vue/vuetify,它也使用main.js文件。

搜索,似乎在渲染器进程中使用 keytar 时会发生这种情况。但是 background.js 不是一个渲染器进程。还是我错过了什么?我对电子完全陌生。

0 投票
0 回答
97 浏览

node.js - 防止其他应用读取 Keytar 保存的密码

keytar文档和所有其他文章中,示例显示存储密码只需要ServiceName

是什么阻止了其他软件请求和读取这些数据?

0 投票
0 回答
298 浏览

electron - node-keytar,机器范围的凭证

我需要安全地存储来自 OAuth 的刷新令牌,但我需要我的应用程序可以为机器上的所有用户访问它。据我所知,node-keytar仅支持按用户帐户存储凭据。有没有办法安全地存储刷新令牌?

对于它的价值,这是一个电子应用程序。

0 投票
2 回答
1520 浏览

node.js - 在 WSL 上安装 twilio-cli

使用 npm install -g twilio-cli 安装 twilio-cli 时,它运行时出现错误。

我安装了 nvm 并安装了 node 10 并使用了 npm 并安装了 twilio-cli 但我仍然得到错误。

我尝试安装 keytar 包,但出现以下错误

我需要帮助才能通过 WSL 使用 twilio-cli。直接窗口很好,但对于一些脚本我试图与 WSL 一起使用。

0 投票
1 回答
541 浏览

node.js - 错误:Nodejs keytar.node 不是有效的 Win32 应用程序

我使用 pkg 打包了我的 cli 应用程序,它在 macOS 上运行良好,但不能在 Windows 上运行并抱怨 keytar.node 二进制文件。我正在使用安装在开发机器(macOS)上的相同 keytar.node 来在 Windows 上运行。我想知道它是否会因为在不同的操作系统上编译本机节点二进制文件而引发错误?如果是这种情况,有没有办法使用 keytar.node 跨平台而不在单个操作系统上编译它?

错误://?/C:/Users/alias/bin/keytar.node 不是有效的 Win32 应用程序。

//?/C:/Users/alias/bin/keytar.node

任何形式的帮助将不胜感激。谢谢

0 投票
2 回答
435 浏览

node.js - 在带角度的电子内部使用keytar

我需要将 keytar 与电子一起使用,但我使用的是 Angular 和 Typescript。我已经在 main.ts 中导入了模块

import * as keytar from 'keytar';

但它无法加载。

或者,在一个模块中,我正在使用 import * as keytar from '../../../node_modules/keytar';

但是 Electron 在开发控制台中返回这个错误

未捕获的错误:节点加载器:错误:无效的包 /home/project/angularelectron/node_modules/electron/dist/resources/electron.asar 在对象。(keytar.node:5) 在 Object../node_modules/keytar/build/Release/keytar.node (keytar.node:6) 在webpack_require (bootstrap:79) 在 Object../node_modules/keytar/lib/keytar。 js (keytar.js:1) 在webpack_require (bootstrap:79) 在 Module../src/app/home/home.component.ts (main.js:4089) 在webpack_require (bootstrap:79) 在 Module../ src/app/home/home-routing.module.ts (detail.module.ts:13) 在webpack_require (bootstrap:79) 在 Module../src/app/app-routing.module.ts

如何正确加载 keytar?谢谢

0 投票
1 回答
818 浏览

node.js - Electron Forge v6、Keytar & Node-Loader 错误“找不到合适的图像...文件太短”

我在使Keytar包在 Electron Forge v6 项目(beta.54)中工作时遇到了一些麻烦。

在新生成的项目中,我在运行应用程序时收到有关“文件太短”的错误。下面是来自主进程的错误对话框的摘录:

这个包似乎node-loader有问题。我无法破译正在发生的事情,因为我可以看到包.node文件被复制到./webpack/main/native_modules中,但是在根目录中有一个散列文件名,它似乎导入了本机文件。

注意到的一件奇怪的事情是,哈希文件.webpack/main/9e6f9bf6669542cb15efba32c033f3de.node包含以下内容,而不是本机二进制数据:

随后......这些.node文件/native_modules/build/Release/keytar.node 我所期望的。

应该如何进行?在弄清楚问题出在哪里之前,我并没有急于在 GitHub 上打开问题。

我觉得从根本上说,.node文件的生成方式存在问题keytar,但是谁知道 Webpack 和加载程序发生了什么黑魔法。

重现步骤

  1. 创建一个新的 Electron Forge 项目 `npx create-electron-app app2 --template=typescript-webpack
  2. 安装 Keytarnpm install keytar
  3. 添加const key tar = require('keytar');src/index.ts
  4. 通过运行应用程序npm run start
  5. 体验错误

版本

节点:v14.14.0
NPM:v7.0.13

打包 JSON 依赖项:

0 投票
0 回答
39 浏览

ubuntu - NPM 说即使安装了可选依赖项也没有安装

我正在尝试在具有可选依赖项的项目中执行 npm 脚本,keytar. 即使安装了,npm 错误说没有安装。这是错误。

为了确认依赖项是否存在,我尝试了npm list keytar

仅当我在 linux 环境中而不是在 Windows 中运行此问题时才会出现此问题。

以下是我的依赖列表package.json

任何关于我如何解决这个问题的线索将不胜感激。

0 投票
0 回答
50 浏览

linux - keytar.node 导致 Buildkite 管道出现问题

我正在尝试使用 buildkite 创建一个 CI/CD 管道,其中构建步骤在虚拟机 (Ubuntu) 上运行。keytar但是,一个称为库依赖的 npm 包tedious会导致管道出现问题。

在使用 buildkite-agent 运行其中一个步骤时,它会尝试清理现有存储库。并且在命令期间,由于错误而git clean -fxdq无法删除文件。keytar.nodePermission denied

这是该步骤的完整日志:

/some-repo使用命令检查文件夹ls -l的权限后,权限似乎是drwxr-xr-x,所有者是buildkite-agent. 我很难过这个文件如何没有被删除,而所有其他文件都被删除而没有任何问题。