# coding: utf-8
"""
Fortanix DSM REST API
This is a set of REST APIs for accessing the Fortanix Data Security Manager. This includes APIs for managing accounts, and for performing cryptographic and key management operations.
OpenAPI spec version: 1.0.0-20200608
Contact: support@fortanix.com
Generated by: https://github.com/swagger-api/swagger-codegen.git
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""
from pprint import pformat
from six import iteritems
import re
# NOTE: This class is auto generated by the swagger code generator program.
# Do not edit the class manually.
[docs]class AgreeKeyRequest(object):
"""
Attributes:
swagger_types (dict): The key is attribute name
and the value is attribute type.
attribute_map (dict): The key is attribute name
and the value is json key in definition.
"""
swagger_types = {
'private_key': 'SobjectDescriptor',
'public_key': 'SobjectDescriptor',
'name': 'str',
'group_id': 'str',
'key_size': 'int',
'key_type': 'ObjectType',
'mechanism': 'AgreeKeyMechanism',
'enabled': 'bool',
'description': 'str',
'key_ops': 'list[KeyOperations]',
'custom_metadata': 'dict(str, str)',
'transient': 'bool'
}
attribute_map = {
'private_key': 'private_key',
'public_key': 'public_key',
'name': 'name',
'group_id': 'group_id',
'key_size': 'key_size',
'key_type': 'key_type',
'mechanism': 'mechanism',
'enabled': 'enabled',
'description': 'description',
'key_ops': 'key_ops',
'custom_metadata': 'custom_metadata',
'transient': 'transient'
}
[docs] def __init__(self, private_key=None, public_key=None, name=None, group_id=None, key_size=None, key_type=None, mechanism=None, enabled=None, description=None, key_ops=None, custom_metadata=None, transient=None):
"""
AgreeKeyRequest - a model defined in Swagger
"""
self._private_key = None
self._public_key = None
self._name = None
self._group_id = None
self._key_size = None
self._key_type = None
self._mechanism = None
self._enabled = None
self._description = None
self._key_ops = None
self._custom_metadata = None
self._transient = None
self.private_key = private_key
self.public_key = public_key
self.name = name
if group_id is not None:
self.group_id = group_id
self.key_size = key_size
self.key_type = key_type
self.mechanism = mechanism
if enabled is not None:
self.enabled = enabled
if description is not None:
self.description = description
if key_ops is not None:
self.key_ops = key_ops
if custom_metadata is not None:
self.custom_metadata = custom_metadata
if transient is not None:
self.transient = transient
@property
def private_key(self):
"""
Gets the private_key of this AgreeKeyRequest.
Type: `SobjectDescriptor`
:setter: Sets the private_key of this AgreeKeyRequest.
"""
return self._private_key
@private_key.setter
def private_key(self, private_key):
"""
Sets the private_key of this AgreeKeyRequest.
"""
self._private_key = private_key
@property
def public_key(self):
"""
Gets the public_key of this AgreeKeyRequest.
Type: `SobjectDescriptor`
:setter: Sets the public_key of this AgreeKeyRequest.
"""
return self._public_key
@public_key.setter
def public_key(self, public_key):
"""
Sets the public_key of this AgreeKeyRequest.
"""
self._public_key = public_key
@property
def name(self):
"""
Gets the name of this AgreeKeyRequest.
Name of the agreed-upon key. Key names must be unique within an account. The name is ignored for transient keys and should be the empty string.
Type: `str`
:setter: Sets the name of this AgreeKeyRequest.
"""
return self._name
@name.setter
def name(self, name):
"""
Sets the name of this AgreeKeyRequest.
Name of the agreed-upon key. Key names must be unique within an account. The name is ignored for transient keys and should be the empty string.
"""
self._name = name
@property
def group_id(self):
"""
Gets the group_id of this AgreeKeyRequest.
Group ID (not name) of the security group that this security object should belong to. The user or application creating this security object must be a member of this group. If no group is specified, the default group for the user or application will be used.
Type: `str`
:setter: Sets the group_id of this AgreeKeyRequest.
"""
return self._group_id
@group_id.setter
def group_id(self, group_id):
"""
Sets the group_id of this AgreeKeyRequest.
Group ID (not name) of the security group that this security object should belong to. The user or application creating this security object must be a member of this group. If no group is specified, the default group for the user or application will be used.
"""
self._group_id = group_id
@property
def key_size(self):
"""
Gets the key_size of this AgreeKeyRequest.
Key size of the derived key in bits (not bytes).
Type: `int`
:setter: Sets the key_size of this AgreeKeyRequest.
"""
return self._key_size
@key_size.setter
def key_size(self, key_size):
"""
Sets the key_size of this AgreeKeyRequest.
Key size of the derived key in bits (not bytes).
"""
self._key_size = key_size
@property
def key_type(self):
"""
Gets the key_type of this AgreeKeyRequest.
Type: `ObjectType`
:setter: Sets the key_type of this AgreeKeyRequest.
"""
return self._key_type
@key_type.setter
def key_type(self, key_type):
"""
Sets the key_type of this AgreeKeyRequest.
"""
self._key_type = key_type
@property
def mechanism(self):
"""
Gets the mechanism of this AgreeKeyRequest.
Type: `AgreeKeyMechanism`
:setter: Sets the mechanism of this AgreeKeyRequest.
"""
return self._mechanism
@mechanism.setter
def mechanism(self, mechanism):
"""
Sets the mechanism of this AgreeKeyRequest.
"""
self._mechanism = mechanism
@property
def enabled(self):
"""
Gets the enabled of this AgreeKeyRequest.
Whether the derived key should have cryptographic operations enabled.
Type: `bool`
:setter: Sets the enabled of this AgreeKeyRequest.
"""
return self._enabled
@enabled.setter
def enabled(self, enabled):
"""
Sets the enabled of this AgreeKeyRequest.
Whether the derived key should have cryptographic operations enabled.
"""
self._enabled = enabled
@property
def description(self):
"""
Gets the description of this AgreeKeyRequest.
Description for the new key.
Type: `str`
:setter: Sets the description of this AgreeKeyRequest.
"""
return self._description
@description.setter
def description(self, description):
"""
Sets the description of this AgreeKeyRequest.
Description for the new key.
"""
self._description = description
@property
def key_ops(self):
"""
Gets the key_ops of this AgreeKeyRequest.
Optional array of key operations to be enabled for this security object. If this property is not provided, the DSM server will provide a default set of key operations. Note that if you provide an empty array, all key operations will be disabled.
Type: list[`KeyOperations`]
:setter: Sets the key_ops of this AgreeKeyRequest.
"""
return self._key_ops
@key_ops.setter
def key_ops(self, key_ops):
"""
Sets the key_ops of this AgreeKeyRequest.
Optional array of key operations to be enabled for this security object. If this property is not provided, the DSM server will provide a default set of key operations. Note that if you provide an empty array, all key operations will be disabled.
"""
self._key_ops = key_ops
@property
def custom_metadata(self):
"""
Gets the custom_metadata of this AgreeKeyRequest.
User-defined metadata for this key. Stored as key-value pairs.
Type: map[`str`]
:setter: Sets the custom_metadata of this AgreeKeyRequest.
"""
return self._custom_metadata
@custom_metadata.setter
def custom_metadata(self, custom_metadata):
"""
Sets the custom_metadata of this AgreeKeyRequest.
User-defined metadata for this key. Stored as key-value pairs.
"""
self._custom_metadata = custom_metadata
@property
def transient(self):
"""
Gets the transient of this AgreeKeyRequest.
If this is true, DSM will derive a transient key.
Type: `bool`
:setter: Sets the transient of this AgreeKeyRequest.
"""
return self._transient
@transient.setter
def transient(self, transient):
"""
Sets the transient of this AgreeKeyRequest.
If this is true, DSM will derive a transient key.
"""
self._transient = transient
def to_dict(self):
"""
Returns the model properties as a dict
"""
result = {}
for attr, _ in iteritems(self.swagger_types):
value = getattr(self, attr)
if isinstance(value, list):
result[attr] = list(map(
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
value
))
elif hasattr(value, "to_dict"):
result[attr] = value.to_dict()
elif isinstance(value, dict):
result[attr] = dict(map(
lambda item: (item[0], item[1].to_dict())
if hasattr(item[1], "to_dict") else item,
value.items()
))
else:
result[attr] = value
return result
def to_str(self):
"""
Returns the string representation of the model
"""
return pformat(self.to_dict())
def __repr__(self):
"""
For `print` and `pprint`
"""
return self.to_str()
def __eq__(self, other):
"""
Returns true if both objects are equal
"""
if not isinstance(other, AgreeKeyRequest):
return False
return self.__dict__ == other.__dict__
def __ne__(self, other):
"""
Returns true if both objects are not equal
"""
return not self == other