def update_policies(isamAppliance, name, policies, action, check_mode=False, force=False): """ Update a specified policy set's policies (add/remove/set) Note: Please input policies as an array of policy names (it will be converted to id's) """ pol_id, update_required, json_data = _check_policies( isamAppliance, name, policies, action) if pol_id is None: from ibmsecurity.appliance.ibmappliance import IBMError raise IBMError( "999", "Cannot update data for unknown policy set: {0}".format(name)) if force is True or update_required is True: if check_mode is True: return isamAppliance.create_return_object(changed=True) else: return isamAppliance.invoke_put( "Update a specified policy set", "{0}/{1}/policies{2}".format( uri, pol_id, tools.create_query_string(action=action)), json_data) return isamAppliance.create_return_object()
def get_all(isamAppliance, count=None, start=None, filter=None, check_mode=False, force=False): """ Retrieve a list of federations """ return isamAppliance.invoke_get("Retrieve a list of federations", "/iam/access/v8/federations/{0}".format( tools.create_query_string(count=count, start=start, filter=filter)))
def get_users(isamAppliance, sortBy=None, filter=None, check_mode=False, force=False): """ Get all users that have grants """ return isamAppliance.invoke_get("Get all users that have grants", "/iam/access/v8/grants/userIds{0}".format( tools.create_query_string(sortBy=sortBy, filter=filter)))
def update_attachments(isamAppliance, server, resourceUri, attachments, action, check_mode=False, force=False): """ Update the attachments for a resource Provide attachemnts like so: [{'name': '<policy name>', 'type': 'policy'}, {'name': '<policyset name>', 'type': 'policyset'}] """ ret_obj = get(isamAppliance, server, resourceUri) cur_policies = ret_obj['data']['policies'] if force is True or _check(cur_policies, attachments, action) is True: if check_mode is True: return isamAppliance.create_return_object(changed=True) else: new_policies = _convert_policy_name_to_id(isamAppliance, attachments) return isamAppliance.invoke_put( "Update the attachments for a resource", "{0}/{1}/policies{2}".format( uri, ret_obj['data']['id'], tools.create_query_string(action=action)), new_policies) return isamAppliance.create_return_object()
def get_all(isamAppliance, filter=None, start=None, count=None, check_mode=False, force=False): """ Retrieve a list of bundles """ return isamAppliance.invoke_get("Retrieve a list of bundles", "{0}{1}".format(uri, tools.create_query_string(filter=filter, start=start, count=count)))
def get_cpu(isdsAppliance, statistics_duration, check_mode=False, force=False): """ Retrieving the CPU Usage Statistics """ return isdsAppliance.invoke_get( "Retrieving the CPU Usage Statistics", "/analysis/system_cpu{0}".format( tools.create_query_string(timespan=statistics_duration)))
def get_session(isamAppliance, replica, user="******", max="1024", check_mode=False, force=False): """ Searching for session within a replica set """ return isamAppliance.invoke_get("Searching for session within a replica set", "{0}/{1}/sessions{2}".format(uri, replica, tools.create_query_string(user=user, max=max)), requires_modules=requires_modules, requires_version=requires_version,requires_model=requires_model)
def get_network(isdsAppliance, application_interface, statistics_duration, check_mode=False, force=False): """ Retrieving the Application Interface Statistics """ return isdsAppliance.invoke_get("Retrieving the Application Interface Statistics", "/analysis/interface_statistics{0}".format( tools.create_query_string(prefix=application_interface, timespan=statistics_duration)))
def get_all(isamAppliance, recursive='yes', includeValues='yes', check_mode=False, force=False): """ Retrieve Kerberos Configuration: all Domain to Realm mappings defined """ return isamAppliance.invoke_get("Retrieve Kerberos Configuration: Domains", "{0}{1}".format(uri, tools.create_query_string(recursive=recursive, includeValues=includeValues)), requires_modules=requires_modules, requires_version=requires_version)
def get_all(isamAppliance, filter=None, sortBy=None, check_mode=False, force=False): """ Retrieve a list of Policy Information Points (PIPs) """ return isamAppliance.invoke_get("Retrieve a list of policy information points (pips)", "{0}/{1}".format(uri, tools.create_query_string(filter=filter, sortBy=sortBy)), requires_modules=requires_modules, requires_version=requires_version)
def get(isamAppliance, file_path, length=None, start=None, check_mode=False, force=False): """ Retrieving the contents of a file from the application log files area """ return isamAppliance.invoke_get("Retrieving the contents of a file from the application log files area", "{0}/{1}{2}".format(uri, file_path, tools.create_query_string( length=length, start=start)))
def get_all(isamAppliance, count=None, start=None, filter=None, check_mode=False, force=False): """ Retrieve a list of federations """ return isamAppliance.invoke_get("Retrieve a list of federations", "{0}/{1}".format(uri, tools.create_query_string(count=count, start=start, filter=filter)), requires_modules=requires_modules, requires_version=requires_version)
def get_cpu(isamAppliance, statistics_duration, check_mode=False, force=False): """ Retrieving the CPU Usage Statistics """ return isamAppliance.invoke_get( "Retrieving the CPU Usage Statistics", "/statistics/systems/cpu.json{0}".format( tools.create_query_string(timespan=statistics_duration)), requires_model=requires_model)
def get_all(isamAppliance, recursive='yes', includeValues='yes', addParent='yes', check_mode=False, force=False): """ Retrieve Kerberos Configuration: CA Paths """ return isamAppliance.invoke_get("Retrieve Kerberos Configuration: CA Paths", "{0}{1}".format(uri, tools.create_query_string(recursive=recursive, includeValues=includeValues, addParent=addParent)), requires_modules=requires_modules, requires_version=requires_version)
def get(isamAppliance, instance_id, component_id, file_id, options=None, size=None, start=None, check_mode=False, force=False): """ Retrieving snippet of a trace log file for a component - Reverse Proxy """ return isamAppliance.invoke_get("Retrieving snippet of a trace log file - Reverse Proxy", "{0}/{1}/tracing/{2}/trace_files/{3}".format(uri, instance_id, component_id, file_id, tools.create_query_string( options=options, start=start, size=size)))
def get_all(isamAppliance, file_path='', recursive='yes', flat_details=None, check_mode=False, force=False): """ Retrieving the contents of a directory from the application log files area flat_details - takes 'yes' or 'no' """ return isamAppliance.invoke_get("Retrieving the contents of a directory from the application log files area", "{0}/{1}/{2}".format(uri, file_path, tools.create_query_string( recursive=recursive, flat_details=flat_details)))
def get_all(isamAppliance, filter=None, sortBy=None, check_mode=False, force=False): """ Retrieve a list of configured resources """ return isamAppliance.invoke_get( "Retrieve a list of configured resources", "{0}{1}".format( uri, tools.create_query_string(filter=filter, sortBy=sortBy)))
def get_storage(isamAppliance, statistics_duration, check_mode=False, force=False): """ Retrieving the Storage Usage Statistics """ return isamAppliance.invoke_get( "Retrieving the Storage Usage Statistics", "/statistics/systems/storage.json{0}".format( tools.create_query_string(timespan=statistics_duration)))
def download(isdsAppliance, filename, id, check_mode=False, force=False): """ Download snapshot file(s) to a zip file. Note: id can be a list or a single value """ if force is True or (_check(isdsAppliance, id=id) is True and os.path.exists(filename) is False): if check_mode is False: # No point downloading a file if in check_mode if isinstance(id, list): id = ','.join(id) uri_download = "{0}/download{1}".format(uri, tools.create_query_string(record_ids=id)) return isdsAppliance.invoke_get_file("Downloading snapshots", uri_download, filename) return isdsAppliance.create_return_object()
def get_rp_throughput(isamAppliance, instance, date, duration, check_mode=False, force=False): """ Retrieving throughput records for a specific Reverse Proxy instance """ return isamAppliance.invoke_get( "Retrieving throughput records for a specific Reverse Proxy instance", "/analysis/reverse_proxy_traffic/throughput/{0}{1}".format( instance, tools.create_query_string(date=date, duration=duration)))
def get_all(isamAppliance, count=None, start=None, check_mode=False, force=False): """ Retrieve a list of attributes for all users """ return isamAppliance.invoke_get( "Retrieve a list of access policies", "{0}/{1}".format(uri, tools.create_query_string(count=count, start=start)), requires_modules=requires_modules, requires_version=requires_version)
def get_rp_junction(isamAppliance, instance, date, duration, check_mode=False, force=False): """ Retrieving junction average response times for a Reverse Proxy instance """ return isamAppliance.invoke_get( "Retrieving junction average response times for a Reverse Proxy instance", "/analysis/reverse_proxy_traffic/reqtime{0}".format( tools.create_query_string(date=date, duration=duration, instance=instance)))
def get_all(isamAppliance, filter=None, sortBy=None, check_mode=False, force=False): """ Retrieve a list of devices fingerprints """ return isamAppliance.invoke_get("Retrieve a list of Device Fingerprints", "{0}/{1}".format( uri, tools.create_query_string( filter=filter, sortBy=sortBy)), requires_modules=requires_modules, requires_version=requires_version)
def delete(isdsAppliance, id, check_mode=False, force=False): """ Deleting a support file """ if force is True or _check(isdsAppliance, id=id) is True: if check_mode is True: return isdsAppliance.create_return_object(changed=True) else: if isinstance(id, list): del_uri = "{0}/multi_destroy{1}".format(uri, tools.create_query_string(record_ids=','.join(id))) else: del_uri = "{0}/{1}".format(uri, id) return isdsAppliance.invoke_delete("Deleting a support file", del_uri) return isdsAppliance.create_return_object()
def get_all(isamAppliance, filter=None, sortBy=None, check_mode=False, force=False): """ Retrieve a list of attribute matchers """ return isamAppliance.invoke_get("Retrieve a list of Attribute Matchers", "{0}/{1}".format( am_uri, tools.create_query_string( filter=filter, sortBy=sortBy)), requires_modules=requires_modules, requires_version=requires_version)
def get(isamAppliance, file_id, options=None, size=None, start=None, check_mode=False, force=False): """ Retrieving a snippet of a common log file """ return isamAppliance.invoke_get( "Retrieving a snippet of a common log file", "{0}/{1}{2}".format( uri, file_id, tools.create_query_string(options=options, start=start, size=size)))
def get_rp_traffic_detail_aspect(isamAppliance, instance, date, duration, aspect, aspect_identifier, check_mode=False, force=False): """ Retrieving detailed traffic records for a specific User-Agent on a specific junction in a Reverse Proxy instance """ return isamAppliance.invoke_get( "Retrieving detailed traffic records for a specific User-Agent on a specific junction in a Reverse Proxy instance", "/analysis/reverse_proxy_traffic/traffic/instance/{0}/{1}/{2}/{1}/{2}{3}" .format(instance, aspect, aspect_identifier, tools.create_query_string(date=date, duration=duration)))
def get(isamAppliance, sortBy=None, count=None, start=None, filter=None, check_mode=False, force=False): """ Retrieve alias associations """ return isamAppliance.invoke_get( "Retrieve alias associations", "/iam/access/v8/alias_service{0}".format( tools.create_query_string(sortBy=sortBy, count=count, start=start, filter=filter)))
def get_all(isamAppliance, start=None, count=None, filter=None, sortBy=None, check_mode=False, force=False): """ Retrieve a list of Obligation types """ return isamAppliance.invoke_get( "Retrieve a list of {0}", "{1}/{2}".format( artifact_type, uri, tools.create_query_string(start=start, count=count, filter=filter, sortBy=sortBy)))
def get_all(isamAppliance, start=None, count=None, filter=None, sortBy=None, check_mode=False, force=False): """ Retrieve a list of authentication mechanisms types """ return isamAppliance.invoke_get( "Retrieve a list of authentication mechanisms types", "/iam/access/v8/authentication/mechanism/types{0}".format( tools.create_query_string(start=start, count=count, filter=filter, sortBy=sortBy)))