FileOrbis

Manage FileOrbis operations.

IT Services · FileOrbis

Details

IDFileOrbis
ProviderFileOrbis
CategoryIT Services
From Version6.0.0
Docker Imagedemisto/python3:3.12.13.10116658
Supported ModulesAgentix XSIAM

README

Manage FileOrbis operations.
This integration was integrated and tested with version >10.0.0 of FileOrbis (You should see XSOAR settings on management).

Configure the FileOrbis for Cortex XSOAR

  1. Navigate to Security > XSOAR settings on management.
  2. Click Active checkbox.
  3. Click Save button.
  4. Copy created Client Id and Client Secret.

Configure FileOrbis in Cortex

Parameter Description Required
Url FileOrbis Url. True
Client Id Client id from FileOrbis XSOAR settings. True
Client Secret Client secret from FileOrbis XSOAR settings. True
Trust any certificate (not secure) Trust any certificate (not secure). False
Use system proxy settings Use system proxy settings. False

Commands

You can execute these commands from the CLI, as part of an automation, or in a playbook.
After you successfully execute a command, a DBot message appears in the War Room with the command details.

fileorbis-change-user-status


Changes user status

Base Command

fileorbis-change-user-status

Input

Argument Name Description Required
user_id Id of the user whose status is to be changed. Required
status New status of the user ( 0 = Passive, 1 = Active, 2 = Deleted ). Possible values are: 0, 1, 2. Required

Context Output

Path Type Description
FileOrbis.UserStatus.UserID String User Id to change its status
FileOrbis.UserStatus.Success Boolean True if operation completed successfully
FileOrbis.UserStatus.Status Number Result code of the operation
FileOrbis.UserStatus.Message String User friendly result message of the operation

Command Example

!fileorbis-change-user-status user_id="69a0e65c-54d7-4210-9cc4-08c40d1a0b9d" status="1"

Context Example

{
    "FileOrbis": {
        "UserStatus": {
            "Success": true,
            "Status": 0,
            "Message": "Your Operation is Completed Successfully",
            "UserID": "69a0e65c-54d7-4210-9cc4-08c40d1a0b9d"
        }
    }
}

Human Readable Output

Success Status Message UserID
true 0 Your Operation is Completed Successfully 69a0e65c-54d7-4210-9cc4-08c40d1a0b9d

Configuration parameters

  • url — Url (required)
  • client_id — Client Id (required)
  • client_secret — Client Secret (required)
  • insecure — Trust any certificate (not secure)
  • proxy — Use system proxy settings

Commands (1)

  • fileorbis-change-user-status

    Changes user status

"""Base Integration for Cortex XSOAR - Unit Tests file

Pytest Unit Tests: all funcion names must start with "test_"

More details: https://xsoar.pan.dev/docs/integrations/unit-testing

MAKE SURE YOU REVIEW/REPLACE ALL THE COMMENTS MARKED AS "TODO"

You must add at least a Unit Test function for every XSOAR command
you are implementing with your integration
"""

import json

from FileOrbis import FileOrbisClient


def util_load_json(path):
    with open(path, encoding="utf-8") as f:
        return json.loads(f.read())


def test_change_user_status_success(mocker):
    from FileOrbis import change_user_status_command

    mock_change_user_status_success = util_load_json("test_data/test_change_user_status_success.json")
    mock_login_response = util_load_json("test_data/test_login_response_success.json")
    mock_logout_response = util_load_json("test_data/test_logout_response_success.json")

    client = FileOrbisClient("https://www.fileorbis.com/api/v2", False, False, "test-api-client", "test-api-secret")

    mocker.patch.object(client, "change_user_status", return_value=mock_change_user_status_success)
    mocker.patch.object(client, "login", return_value=mock_login_response)
    mocker.patch.object(client, "logout", return_value=mock_logout_response)

    result = change_user_status_command(client, args={"user_id": "test-user", "status": 1})

    assert result.outputs == mock_change_user_status_success


def test_change_user_status_failure(mocker):
    from FileOrbis import change_user_status_command

    mock_change_user_status_failure = util_load_json("test_data/test_change_user_status_failure.json")
    mock_login_response = util_load_json("test_data/test_login_response_success.json")
    mock_logout_response = util_load_json("test_data/test_logout_response_success.json")

    client = FileOrbisClient("https://www.fileorbis.com/api/v2", False, False, "test-api-client", "test-api-secret")

    mocker.patch.object(client, "change_user_status", return_value=mock_change_user_status_failure)
    mocker.patch.object(client, "login", return_value=mock_login_response)
    mocker.patch.object(client, "logout", return_value=mock_logout_response)

    result = change_user_status_command(client, args={"user_id": "test-user", "status": 1})

    assert result.outputs == mock_change_user_status_failure