NAME

Net::SecurityCenter - Perl interface to Tenable.sc (SecurityCenter) REST API

SYNOPSIS

use Net::SecurityCenter;

my $sc = Net::SecurityCenter('sc.example.org');

if (! $sc->login(username => 'secman', password => 's3cr3t')) {
    die $sc->error;
}

my $running_scans = $sc->scan_result->list_running;

$sc->logout();

DESCRIPTION

This module provides Perl scripts easy way to interface the REST API of Tenable.sc (SecurityCenter).

For more information about the Tenable.sc (SecurityCenter) REST API follow the online documentation:

https://docs.tenable.com/sccv/api/index.html

CONSTRUCTOR

Net::SecurityCenter->new ( host [, $params ] )

Create a new instance of Net::Security::Center using Net::SecurityCenter::REST class.

Params:

  • timeout : Request timeout in seconds (default is 180) If a socket open, read or write takes longer than the timeout, an exception is thrown.

  • ssl_options : A hashref of SSL_* options to pass through to IO::Socket::SSL.

  • logger : A logger instance (eg. Log::Log4perl, Log::Any or Mojo::Log) for log the REST request and response messages.

  • scheme : URI scheme (default: HTTPS).

COMMON METHODS

$sc->client ()

Return the instance of Net::SecurityCenter::REST class

$sc->login ( ... )

Login into SecurityCenter.

See "Username and password authetication" and "API Key authentication" in Net::SecurityCenter::REST.

$sc->logout

Logout from SecurityCenter.

HELPER METHODS

analysis

Return Net::SecurityCenter::API::Analysis instance.

credential

Return Net::SecurityCenter::API::Credential instance.

feed

Return Net::SecurityCenter::API::Feed instance.

file

Return Net::SecurityCenter::API::File instance.

notification

Return Net::SecurityCenter::API::Notification instance.

plugin

Return Net::SecurityCenter::API::Plugin instance.

plugin_family

Return Net::SecurityCenter::API::PluginFamily instance.

policy

Return Net::SecurityCenter::API::Policy instance.

report

Return Net::SecurityCenter::API::Report instance.

repository

Return Net::SecurityCenter::API::Repository instance.

scan

Return Net::SecurityCenter::API::Scan instance.

scan_result

Return Net::SecurityCenter::API::ScanResult instance.

scanner

Return Net::SecurityCenter::API::Scanner instance.

status

Return Net::SecurityCenter::API::Status instance.

system

Return Net::SecurityCenter::API::System instance.

user

Return Net::SecurityCenter::API::User instance.

zone

Return Net::SecurityCenter::API::Zone instance.

SUPPORT

Bugs / Feature Requests

Please report any bugs or feature requests through the issue tracker at https://github.com/giterlizzi/perl-Net-SecurityCenter/issues. You will be notified automatically of any progress on your issue.

Source Code

This is open source software. The code repository is available for public review and contribution under the terms of the license.

https://github.com/giterlizzi/perl-Net-SecurityCenter

git clone https://github.com/giterlizzi/perl-Net-SecurityCenter.git

AUTHOR

  • Giuseppe Di Terlizzi <gdt@cpan.org>

LICENSE AND COPYRIGHT

This software is copyright (c) 2018-2023 by Giuseppe Di Terlizzi.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.