Объекты хранения не являются классом объектов, поэтому не имеют определения CKO_ и включают в себя объекты данных (CKO_DATA), сертификатов (CKO_CERTIFICATE), ключей (CKO_PUBLIC_KEY, CKO_PRIVATE_KEY, CKO_SECRET_KEY) и параметров домена (CKO_DOMAIN_PARAMETERS).
Следующая таблица определяет общие атрибуты объектов хранения, в дополнение к общим атрибутам, определенным для этого класса объектов.
Таблица 2-2. Общие атрибуты объектов хранения
Атрибут | Тип данных | Значение |
CKA_TOKEN | CK_BBOOL | CK_TRUE, если объект является объектом токена (т.е. будет создан на токене) CK_FALSE, если объект является объектом сессии (т.е. будет создан в оперативной памяти). По умолчанию принимает значение CK_FALSE. |
CKA_PRIVATE | CK_BBOOL | CK_TRUE, если это закрытый объект. Значение атрибутов такого объекта можно получить только после ввода PIN-кода CK_FALSE, если это открытый объект. Значение атрибутов такого объекта можно получить без ввода PIN-кода Значение по умолчанию определяется токеном и может зависеть от значения других атрибутов объекта. |
CKA_MODIFIABLE | CK_BBOOL | CK_TRUE, если значения атрибутов объекта после его создания могут быть изменены. По умолчанию принимает значение CK_TRUE. CK_FALSE, если объект создан «только для чтения» и значения атрибутов объекта после его создания не могут быть изменены |
CKA_LABEL | RFC2279 string | Метка объекта (по умолчанию пусто). |
CKA_COPYABLE | CK_BBOOL | CK_TRUE, если объект может быть скопирован с использованием функции C_CopyObject(). По умолчанию принимает значение CK_TRUE. Не может быть изменен на значениеTRUE после FALSE. |
Только атрибут CKA_LABEL может быть изменен после создания объекта. Атрибуты CKA_TOKEN, CKA_PRIVATE и CKA_MODIFIABLE могут быть изменены в процессе копирования объекта.
Атрибут CKA_TOKEN определяет, является ли объект объектом токена или объектом сессии.
Когда атрибут CKA_PRIVATE принимает значение CK_TRUE, пользователь не имеет доступа к объекту до тех пор, пока не выполнит аутентификацию на токене.
Значение атрибута CKA_MODIFIABLE определяет, является ли объект доступным «только для чтения» или нет. Неизменяемый объект может быть удален.
Атрибут CKA_LABEL предназначен для помощи пользователю при просмотре.
Значение атрибута CKA_COPYABLE определяет, доступен ли объект для копирования или нет. Этот атрибут может использоваться в конъюнкции с CKA_MODIFIABLE для предотвращения изменения разрешений использования ключа и других объектов.