Skip to content

Service to scan virus files that will be pulled from applciation API (e.g.: witch_doctor gem )

License

Notifications You must be signed in to change notification settings

equivalent/virus_scan_service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status Code Climate Test Coverage Gitten

VirusScanService

Service gem that provide virus scan runner that will pull down list of files to be scanned from your application server, lunch antivirus check (currently only Kasperky Endponit Security runner Windows or Linux) and send scan result back to server.

If you want to use difrent antivirus (like ClamAV) that's fine, but you will have to implement your own runner :). Pull requests are welcome.

You don't need to have script running this service on the same server as application server VM. (Article comming soon)

Originaly built to work along witch_doctor engine gem however that is not required. All your server has to do is provide API that this secvice can comunicate with:

GET /wd/virus_scans ContentType: application/json

response

{"data":[{"id":"123","scan_result":"","file_url":"http://thisis.test/download/file.png"}]}

PUT /wd/virus_scans/123 ContentType: application/json

request body

{"virus_scan":{"scan_result":"Clean"}}

response

{"data":{"id":"123","scan_result":"Clean","file_url":"http://thisis.test/download/file.png"}}

For more examples check spec/courier_spec.rb, `spec/support/request_response_mocks.rb

JSON API

gem is implementing JSON API standard

Statuses

  • Clean
  • VirusInfected
  • FileDownloadError - couldn't download asset

Installation

Add this line to your external script Gemfile:

gem 'virus_scan_service'

And then execute:

$ bundle

Usage

check https://github.com/equivalent/virus_scan_daemon

Contributing

  1. Fork it ( https://github.com/[my-github-username]/virus_scan_service/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

About

Service to scan virus files that will be pulled from applciation API (e.g.: witch_doctor gem )

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages