- Notifications
You must be signed in to change notification settings - Fork31
Sqreen's Application Security Management for the Go language
License
sqreen/go-agent
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Sqreen's Application Security Management for Go
After performance monitoring (APM), error and log monitoring it’s time to add asecurity component into your app. Sqreen’s microagent automatically monitorssensitive app’s routines, blocks attacks and reports actionable infos to yourdashboard.
Sqreen provides automatic defense against attacks:
Protect with security modules: RASP (Runtime Application Self-Protection),in-app WAF (Web Application Firewall), Account takeovers and more.
Sqreen’s modules adapt to your application stack with no need ofconfiguration.
Prevent attacks from the OWASP Top 10 (Injections, XSS and more), 0-days, dataLeaks, and more.
Create security automation playbooks that automatically react against youradvanced business-logic threats.
For more details, visitsqreen.com
Use the middleware function for the Go web framework you use:
If your framework is not listed, it is usually possible to use instead thestandard
net/http
middleware. If not, please, let us knowbycreating an issue.Compile your program with Sqreen
Sqreen's dynamic configuration of your protection is made possible thanks toGo instrumentation. It is safely performed at compilation time by thefollowing instrumentation tool.
Install the following instrumentation tool and compile your program using itin order to enable Sqreen.
Use
go install
to compile the instrumentation tool:$go install github.com/sqreen/go-agent/sdk/sqreen-instrumentation-tool
By default, the resulting
sqreen-instrumentation-tool
tool is installedin thebin
directory of theGOPATH
. You can find it usinggo env GOPATH
.Configure the Go toolchain to use it:
Use the instrumentation tool using the go options
-a -toolexec /path/to/sqreen-instrumentation-tool
.It can be done either in your Go compilation command lines or by settingthe
GOFLAGS
environment variable.For example, the following two commands are equivalent:
$go build -a -toolexec$(go env GOPATH)/bin/sqreen-instrumentation-tool my-project$env GOFLAGS="-a -toolexec$(go env GOPATH)/bin/sqreen-instrumentation-tool" go build my-project
Signup to Sqreen to get your app credentials:
app_name: Your Go app nametoken: your token
This file can be stored in your current working directory when starting theexecutable, the same directory as your app's executable file, or in any otherpath by defining the configuration file location into the environmentvariable
SQREEN_CONFIG_FILE
.
Congratulations, your Go web application is now protected by Sqreen!
Optionally, use the SDK toperformuser monitoringorcustom security events you wouldlike to track and possibly block.
About
Sqreen's Application Security Management for the Go language