Ошибка чтения файла ключа хранилища

Обновлено: 05.07.2024

Метод add() интерфейса IDBObjectStore возвращает объект IDBRequest и в отдельном потоке создает структурированный клон значения и сохраняет клонированное значение в хранилище объектов. Это для добавления новых записей в хранилище объектов.

Чтобы определить, успешно ли завершена операция добавления, прослушивайте событие завершения транзакции в дополнение к событию успеха запроса IDBObjectStore.add, так как транзакция все равно может завершиться неудачно после срабатывания события успеха. Другими словами, событие успеха запускается только тогда, когда транзакция успешно поставлена ​​в очередь.

Метод add предназначен для только вставки. Если в хранилище объектов уже существует запись с ключевым параметром в качестве ключа, то для возвращенного объекта запроса запускается событие ошибки ConstrainError. Вместо этого для обновления существующих записей следует использовать метод IDBObjectStore.put.

Примечание. Эта функция доступна в Web Workers

Синтаксис

Параметры

Сохраняемое значение.

Ключ для идентификации записи. Если не указано, возвращается значение null.

Возврат

Объект IDBRequest, для которого запускаются последующие события, связанные с этой операцией.

Исключения

Этот метод может вызвать исключение DOMException одного из следующих типов:

Вызывается, если транзакция, связанная с этой операцией, находится в режиме только для чтения.

Вызывается, если транзакция этого IDBObjectStore неактивна.

Вызывается, если выполняется одно из следующих условий:

  • Хранилище объектов использует встроенные ключи или имеет генератор ключей, и был предоставлен ключевой параметр.
  • Хранилище объектов использует внешние ключи и не имеет генератора ключей, а параметр ключа не был предоставлен.
  • Хранилище объектов использует встроенные ключи, но не генератор ключей, а путь к ключу хранилища объектов не дает действительного ключа.
  • Параметр ключа был предоставлен, но не содержит действительного ключа.

Вызывается, если хранилище IDBObjectStore было удалено или удалено.

Вызывается, если сохраняемые данные не могут быть клонированы с помощью алгоритма внутреннего структурированного клонирования.

Вызывается, если операция вставки не удалась из-за нарушения ограничения первичного ключа (из-за уже существующей записи с таким же значением первичного ключа).

Пример

В следующем фрагменте кода мы открываем транзакцию чтения/записи в нашей базе данных и добавляем некоторые данные в хранилище объектов с помощью add() . Обратите также внимание на функции, прикрепленные к обработчикам событий транзакций, чтобы сообщать о результатах открытия транзакции в случае успеха или неудачи. Полный рабочий пример см. в нашем приложении "Уведомления о делах" (см. пример в реальном времени).

В этом разделе описываются коды возврата и сообщения об ошибках средства миграции пользовательской среды (USMT) 10.0. Также включена таблица со списком кодов возврата USMT и соответствующими действиями по устранению последствий. Кроме того, в этом разделе приведены советы, которые помогут вам с помощью файлов журналов определить, почему вы получили сообщение об ошибке.

Понимание требований для запуска USMT может помочь свести к минимуму ошибки при миграции USMT. Дополнительные сведения см. в разделе Требования USMT.

В этой теме

Коды возврата USMT

Если вы столкнулись с ошибкой при переносе USMT, вы можете использовать коды возврата и более подробную информацию, предоставленную в соответствующих сообщениях об ошибках USMT, для устранения проблемы и определения шагов по ее устранению.

Коды возврата сгруппированы в следующие широкие категории, описывающие область сообщений об ошибках:

Успех или отмена пользователем

Неверные командные строки

Настройка и инициализация

Рекомендуется установить уровень детализации 5 (/v:5) в командных строках ScanState, LoadState и USMTUtils, чтобы наиболее подробные отчеты были доступны в соответствующие журналы USMT. Вы можете использовать более высокий уровень детализации, если хотите, чтобы вывод файлов журнала направлялся в отладчик.

Сообщения об ошибках USMT

Сообщения об ошибках предоставляют более подробную информацию о проблеме переноса, чем соответствующий код возврата. Например, средство ScanState, LoadState или USMTUtils может возвращать код «11» (для «USMT_INVALID_PARAMETERS») и соответствующее сообщение об ошибке, которое гласит: «/key и /keyfile оба указаны». Сообщение об ошибке отображается в командной строке и указывается в файлах журнала ScanState, LoadState или USMTUtils, чтобы помочь вам определить, почему был получен код возврата.

Дополнительную информацию о любых перечисленных кодах системных ошибок интерфейса прикладного программирования (API) Windows можно получить, введя net helpmsg в командной строке, а затем введя номер кода ошибки. Дополнительные сведения о кодах системных ошибок см. на этом веб-сайте Microsoft.

Устранение неполадок с кодами возврата и сообщениями об ошибках

Следующая информация перечисляет каждый код возврата по числовому значению вместе с соответствующими сообщениями об ошибках и предлагаемыми действиями по устранению неполадок.

Хранилище параметров, функция AWS Systems Manager, обеспечивает безопасное иерархическое хранилище для управления данными конфигурации и управления секретами. В качестве значений параметров можно хранить такие данные, как пароли, строки базы данных, идентификаторы Amazon Machine Image (AMI) и коды лицензий. Вы можете хранить значения в виде простого текста или зашифрованных данных. Вы можете ссылаться на параметры Systems Manager в сценариях, командах, документах SSM, а также в рабочих процессах настройки и автоматизации, используя уникальное имя, указанное при создании параметра. Чтобы начать работу с хранилищем параметров, откройте консоль диспетчера систем. На панели навигации выберите Хранилище параметров.

Хранилище параметров также интегрировано с диспетчером секретов. Вы можете получить секреты Secrets Manager при использовании других сервисов AWS, которые уже поддерживают ссылки на параметры хранилища параметров. Дополнительные сведения см. в разделе Ссылки на секреты AWS Secrets Manager из параметров хранилища параметров.

Для реализации жизненных циклов смены паролей используйте AWS Secrets Manager. Вы можете чередовать, управлять и извлекать учетные данные базы данных, ключи API и другие секреты на протяжении всего их жизненного цикла с помощью Secrets Manager. Дополнительные сведения см. в разделе Что такое AWS Secrets Manager? в Руководстве пользователя AWS Secrets Manager.

Какую пользу может принести Parameter Store моей организации?

Магазин параметров предлагает следующие преимущества:

Используйте безопасную, масштабируемую, размещенную службу управления секретами без серверов для управления.

Повысьте уровень безопасности, отделив данные от кода.

Хранить данные конфигурации и зашифрованные строки в иерархиях и отслеживать версии.

Контролируйте и проверяйте доступ на детальном уровне.

Надежное хранение параметров, поскольку хранилище параметров размещено в нескольких зонах доступности в регионе AWS.

Кому следует использовать хранилище параметров?

Любой клиент AWS, который хочет иметь централизованный способ управления данными конфигурации.

Разработчики программного обеспечения, которые хотят хранить разные логины и ссылочные потоки.

Администраторы, которые хотят получать уведомления, когда их секреты и пароли изменены или не изменены.

Каковы функции хранилища параметров?

Изменить уведомление

Вы можете настроить уведомления об изменениях и вызвать автоматические действия как для параметров, так и для политик параметров. Дополнительные сведения см. в разделе Настройка уведомлений или инициирующих действий на основе событий хранилища параметров.

Организовать и контролировать доступ

Вы можете пометить свои параметры по отдельности, чтобы помочь вам идентифицировать один или несколько параметров на основе присвоенных им тегов. Например, вы можете пометить параметры для определенных сред, отделов, пользователей, групп или периодов. Вы также можете ограничить доступ к параметрам, создав политику AWS Identity and Access Management (IAM), в которой указаны теги, к которым может получить доступ пользователь или группа. Дополнительную информацию см. в разделе Тегирование параметров Systems Manager.

Ярлык версий

Вы можете связать псевдонимы версий вашего параметра, создав ярлыки. Ярлыки помогают запомнить назначение версии параметра, когда существует несколько версий.

Проверка данных

Вы можете создать параметры, которые указывают на экземпляр Amazon Elastic Compute Cloud (Amazon EC2), и Parameter Store проверит эти параметры, чтобы убедиться, что они ссылаются на ожидаемый тип ресурса, что ресурс существует и что у клиента есть разрешение на использование ресурс. Например, можно создать параметр с идентификатором Amazon Machine Image (AMI) в качестве значения с типом данных aws:ec2:image, а хранилище параметров выполнит асинхронную операцию проверки, чтобы убедиться, что значение параметра соответствует требованиям к форматированию для AMI. ID и что указанный образ AMI доступен в вашем аккаунте AWS.

Справочные секреты

Хранилище параметров интегрировано с AWS Secrets Manager, поэтому вы можете получать секреты Secrets Manager при использовании других сервисов AWS, которые уже поддерживают ссылки на параметры хранилища параметров.

Доступно из других сервисов AWS

Параметры хранилища параметров можно использовать с другими возможностями Systems Manager и сервисами AWS для извлечения секретов и данных конфигурации из центрального хранилища. Параметры работают с такими возможностями Systems Manager, как Run Command, Automation и State Manager, возможностями AWS Systems Manager. Вы также можете ссылаться на параметры в ряде других сервисов AWS, включая следующие:

Читайте также: