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