Source code for ecl.security_order.v1.host_based_security

# -*- coding: utf-8 -*-

from ecl.security_order import security_order_service
from ecl import resource2
from ecl import exceptions
from ecl import utils

[docs]class HostBasedSecurity(resource2.Resource): resource_key = None resources_key = None base_path = '/API/SoEntryHBS' service = security_order_service.SecurityOrderService() # Capabilities allow_create = True allow_get = True allow_delete = True allow_list = True allow_update = True #: Tenant ID of the owner (UUID). tenant_id = resource2.Body('tenant_id') #: N: Order New Host-based Security. #: M1: Change menu of Host-based Security. #: M2: Change quantity of Host-based Security. #: C: Cancel Host-based Security. sokind = resource2.Body('sokind') #: Requested menu. Set "Managed Anti-Virus", "Managed Virtual Patch" #: or "Managed Host-based Security Package" to this field. service_order_service = resource2.Body('service_order_service') #: Set maximum quantity of Agenet usage. max_agent_value = resource2.Body('max_agent_value') #: Contactable mail address. mailaddress = resource2.Body('mailaddress') #: This value is used for language of Deep Security Manager. #: ja: Japanese, en: English. dsm_lang = resource2.Body('dsm_lang') #: Set "Asia/Tokyo" for JST or "Etc/GMT" for UTC. time_zone = resource2.Body('time_zone') #: Messages are displayed in Japanese or English depending on this value. #: ja: Japanese, en: English. Default value is "en". locale = resource2.Body('locale') #: This value indicates normal or abnormal. 1:normal, 2:abnormal. code = resource2.Body('code', alternate_id=True) #: This message is shown when error has occurred. message = resource2.Body('message') #: Identification ID of Service Order. soid = resource2.Body('soId') #: This value indicates normal or abnormal. 1:normal, 2:abnormal. status = resource2.Body('status') #: Percentage of Service Order Progress Status. progress_rate = resource2.Body('progressRate') #: Region tenant you specified belongs to. region = resource2.Body('region') #: Tenant Name. tenant_name = resource2.Body('tenant_name') #: Description for this tenant. tenant_description = resource2.Body('tenant_description') #: Contract ID which this tenant belongs to. contract_id = resource2.Body('contract_id') #: Customer Name. customer_name = resource2.Body('customer_name') #: Internal Use. (true: Already applied, false: Not applied.) tenant_flg = resource2.Body('tenant_flg')
[docs] def get_order_status(self, session, soid, locale=None): tenant_id = session.get_project_id() uri = '/API/ScreenEventHBSOrderProgressRate?tenant_id=%s&soid=%s' \ % (tenant_id, soid) if locale is not None: uri += '&locale=%s' % locale headers = {'Content-Type': 'application/json'} resp = session.get(uri, endpoint_filter=self.service, headers=headers) self._translate_response(resp, has_body=True) return self
[docs] def get_order_info(self, session, locale=None): tenant_id = session.get_project_id() uri = '/API/ScreenEventHBSOrderInfoGet?tenant_id=%s' % tenant_id if locale is not None: uri += '&locale=%s' % locale headers = {'Content-Type': 'application/json'} resp = session.get(uri, endpoint_filter=self.service, headers=headers) self._translate_response(resp, has_body=True) return self
[docs] def update(self, session, **body): uri = self.base_path resp = session.post(uri, endpoint_filter=self.service, json=body) self._translate_response(resp, has_body=True) return self
[docs] def delete(self, session, body, locale=None): uri = self.base_path resp = session.post(uri, endpoint_filter=self.service, json=body) self._translate_response(resp, has_body=True) return self