コード例 #1
0
ファイル: auditlogs.py プロジェクト: code42/py42
    def get_page(self,
                 page_num=1,
                 page_size=None,
                 begin_time=None,
                 end_time=None,
                 event_types=None,
                 user_ids=None,
                 usernames=None,
                 user_ip_addresses=None,
                 affected_user_ids=None,
                 affected_usernames=None,
                 format=None,
                 **kwargs):
        date_range = {}
        if begin_time:
            date_range[
                "startTime"] = parse_timestamp_to_microseconds_precision(
                    begin_time)
        if end_time:
            date_range["endTime"] = parse_timestamp_to_microseconds_precision(
                end_time)

        uri = "/rpc/search/search-audit-log"
        page_size = page_size or settings.items_per_page
        params = dict(
            page=page_num - 1,
            pageSize=page_size,
            dateRange=date_range,
            eventTypes=to_list(event_types),
            actorIds=to_list(user_ids),
            actorNames=to_list(usernames),
            actorIpAddresses=to_list(user_ip_addresses),
            affectedUserIds=to_list(affected_user_ids),
            affectedUserNames=to_list(affected_usernames),
        )
        params.update(**kwargs)

        headers = HEADER_MAP.get(format.upper()) if format else None
        return self._connection.post(uri, json=params, headers=headers)
コード例 #2
0
ファイル: securitydata.py プロジェクト: ryanvanasse/py42
    def _get_security_detection_events(
        self,
        user_uid=None,
        plan_uid=None,
        cursor=None,
        include_files=None,
        event_types=None,
        min_timestamp=None,
        max_timestamp=None,
        summarize=None,
    ):
        uri = u"/api/SecurityDetectionEvent"

        min_time_str = None
        max_time_str = None

        if min_timestamp:
            min_time_str = parse_timestamp_to_microseconds_precision(
                min_timestamp)

        if max_timestamp:
            max_time_str = parse_timestamp_to_microseconds_precision(
                max_timestamp)

        params = {
            u"userUid": user_uid,
            u"planUid": plan_uid,
            u"cursor": cursor,
            u"incFiles": include_files,
            u"eventType": event_types,
            u"minTs": min_time_str,
            u"maxTs": max_time_str,
            u"summarize": summarize,
        }

        return self._connection.get(uri, params=params)
コード例 #3
0
ファイル: test_util.py プロジェクト: code42/py42
def test_parse_timestamp_to_microseconds_precision_returns_expected_timestamp_with_float_time():
    actual = util.parse_timestamp_to_microseconds_precision(1599653541.001002)
    assert actual == "2020-09-09T12:12:21.001002Z"
コード例 #4
0
ファイル: test_util.py プロジェクト: code42/py42
def test_parse_timestamp_to_microseconds_precision_returns_expected_timestamp_with_datetime_time():
    dt = datetime.strptime("2020-09-09 12:12:21", "%Y-%m-%d %H:%M:%S")
    actual = util.parse_timestamp_to_microseconds_precision(dt)
    assert actual == "2020-09-09T12:12:21.000000Z"
コード例 #5
0
ファイル: test_util.py プロジェクト: code42/py42
def test_parse_timestamp_to_microseconds_precision_when_given_unicode_returns_expected_timestamp_with_str_format_time():
    actual = util.parse_timestamp_to_microseconds_precision("2020-09-09 12:12:21")
    assert actual == "2020-09-09T12:12:21.000000Z"
コード例 #6
0
ファイル: test_util.py プロジェクト: ryanvanasse/py42
def test_parse_timestamp_to_microseconds_precision_returns_expected_timestamp_with_str_format_time(
):
    assert (util.parse_timestamp_to_microseconds_precision(
        u"2020-09-09 12:12:21") == "2020-09-09T12:12:21.000000Z")
コード例 #7
0
ファイル: test_util.py プロジェクト: ryanvanasse/py42
def test_parse_timestamp_to_microseconds_precision_returns_expected_timestamp_with_epoch_time(
):
    assert (util.parse_timestamp_to_microseconds_precision(1599653541) ==
            "2020-09-09T12:12:21.000000Z")
コード例 #8
0
 def _parse_timestamp(value):
     return parse_timestamp_to_microseconds_precision(value)