Spec-Zone.ru › Web Extensions

pkcs11.getModuleSlots()

Перечисление слотов модуля. Эта функция возвращает массив, содержащий по одной записи для каждого слота. Каждая запись содержит имя слота и, если слот содержит токен, информацию о токене.

Вызывать эту функцию можно только для модуля, установленного в Firefox.

Это асинхронная функция, которая возвращает Promise.

Синтаксис

let getting = browser.pkcs11.getModuleSlots(
  name              // string
)

Параметры

name

string. Имя модуля. Оно должно совпадать со значением свойства name в манифесте PKCS #11 для модуля.

Возвращаемое значение

A Promise, который будет выполнен с массивом объектов, по одному для каждого слота, к которому модуль предоставляет доступ. Каждый объект имеет два свойства:

  • name: имя слота
  • token: если в этом слоте присутствует токен, объект Token. Если в слоте нет токена, это свойство имеет значение null.

Объекты Token имеют следующие свойства:

name

string. Имя токена.

manufacturer

string. Название производителя токена.

HWVersion

string. Версия аппаратного обеспечения, как номер версии PKCS #11 (две 32-битные целые числа, разделенные точкой, например, "1.0").

FWVersion

string. Версия микропрограммного обеспечения, как номер версии PKCS #11 (две 32-битные целые числа, разделенные точкой, например, "1.0").

serial

string. Серийный номер, формат которого определен спецификацией токена.

isLoggedIn

boolean: true если токен уже подключен, false в противном случае.

Если модуль не был найден или произошла какая-либо другая ошибка, обещание будет отклонено с сообщением об ошибке.

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet
getModuleSlots Нет Нет 58 ? Нет Нет ? ? Нет ? Нет ?

Примеры

Установка модуля, затем вывод его слотов и токенов, которые они содержат:

function onInstalled() {
  return browser.pkcs11.getModuleSlots("my_module");
}

function onGotSlots(slots) {
  for (const slot of slots) {
    console.log(`Slot: ${slot.name}`);
    if (slot.token) {
      console.log(`Contains token: ${slot.token.name}`);
    } else {
      console.log("Is empty");
    }
  }
}

browser.pkcs11.installModule("my_module").then(onInstalled).then(onGotSlots);

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/pkcs11/getModuleSlots

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API