Application
Schema
| Attribute | Description |
|---|---|
| uuid | Unique ID |
| name | Name of the application |
| data_source | Source where application information was fetched. For locally created apps, this value is LOCAL, otherwise it indicates the IdP source |
| description | Description for the application |
| protocol | Indicates whether an L3 ('tcp', 'udp') or L4 app ('http' or 'https') |
| host | Internet facing hostname for the application |
| port | Internet facing port for the application |
| reverse_proxy_name | Relevant for apps for which Lacework Edge acts as reverse proxy |
| connector_unique_name | Name of connector, relevant for apps routed via connector |
| internal_protocol | Protocol for the private application |
| internal_host_pattern | Hostname for the private application |
| port | Port for the private application |
| tags | tags associated with the application (could be k8s, aws or any custom tag that can used to group multiple apps) |
| create_time | Creation time of the application |
| update_time | Last update time for application |
| status | Status can be INIT, ACTIVE, SUSPENDED |
Create a LOCAL application
CLI
Create a json file, say create-app.json, with contents as follows:
{
"name": "<name of the app>",
"description": "<description for the app>",
"protocol": "https",
"host": "external.hostname.com",
"port": 443,
"connector_unique_name": "my-favorite-connector",
"internal_protocol": "tcp",
"internal_host_pattern": "private-nginx-app",
"internal_port": 443,
"status": "ACTIVE"
}
Following egcli command can be run to create the application (assumes token is present in environment variable)
./egcli nervecenter --address nerve-grpc.edge-guardian.io:443 create-app \
--from_file create-app.json
REST API
POST /api/v1/apps
Body
{
"name": "<name of the app>",
"description": "<description for the app>",
"protocol": "https",
"host": "external.hostname.com",
"port": 443,
"connector_unique_name": "my-favorite-connector",
"internal_protocol": "tcp",
"internal_host_pattern": "private-nginx-app",
"internal_port": 443,
"status": "ACTIVE"
}
Query all applications in your account
CLI
Running following egcli command will return all applications in your account.
./egcli nervecenter --address nerve-grpc.edge-guardian.io:443 query-apps
REST API
GET /api/v1/apps
Get details about specific application
CLI
Running following egcli command will return all attributes for specified application UUID.
./egcli nervecenter --address nerve-grpc.edge-guardian.io:443 get-app --uuid <UUID>
REST API
GET /api/v1/apps/:app_uuid