Commit Graph

222 Commits

Author SHA1 Message Date
Victor Vrantchan
eac718e937 add new status to host summary endpoint (#1057)
new_count shows all hosts that have been added to kolide in the last
24 hours
2017-01-20 08:57:47 -05:00
Victor Vrantchan
5f6f9388cd Account for hosts in labels in the total host count (#1056)
For #1039
2017-01-20 08:57:02 -05:00
Victor Vrantchan
02a6fe6870 increase query description length (#1055)
Closes #1053
2017-01-20 08:56:41 -05:00
John Murphy
28130b529b Addresses detail queries that don't return rows (#1044)
* If a detail query doesn't return results, log problem but don't interrupt additional query processing

* changed arg to ingest func to logger interface
2017-01-20 07:28:33 +08:00
Victor Vrantchan
4a095d09a8 default to username when query author doesn't have full name (#1037) 2017-01-19 16:46:28 -05:00
Victor Vrantchan
650bae2ffb remove dev mode from cli options (#1027) 2017-01-19 09:42:45 -05:00
Victor Vrantchan
c13b8cc0cf support JSON output for kolide logs (#1026) 2017-01-19 09:41:28 -05:00
Victor Vrantchan
d45c0103d1 Pack bugs (#1016)
* correctly list packs in response

Using append was adding a default pack response to the list of packs

* handle unique index for packs that exist but are deleted
2017-01-18 14:13:41 -05:00
Victor Vrantchan
42ed377312 when a duplicate email invite is detected, replace the old one (#1002)
* when a duplicate email invite is detected, replace the old one

* update sql
2017-01-18 10:40:51 -05:00
Victor Vrantchan
fa39dcd555 fix various issues with SMTP configuration (#1001)
* fix various issues with SMTP configuration

* handle SplitHostPort error
2017-01-18 10:05:09 -05:00
Kyle Knight
a6b45322ea Style Invite User email template (#998) 2017-01-18 09:43:09 -05:00
Victor Vrantchan
0c93c4db67 fallback to username if Name field is not set (#996)
* fallback to username if Name field is not set

* add orgname field to invite emails
2017-01-17 16:37:00 -05:00
John Murphy
41517aa7d9 Log in user automatically after successful setup (#993)
* Log in user automatically after successful setup

* Handle login failure by omitting token from response
2017-01-18 04:24:13 +08:00
Victor Vrantchan
1be80113d2 fix incorrect scoping in loop (#984)
The inner loop would only execute once and terminate, causing hosts
to show up with null network interfaces.

Closes #981
2017-01-17 12:02:22 -05:00
John Murphy
56b8772f13 Modify User (as a regular user) fails #891 (#959) 2017-01-18 00:43:59 +08:00
Victor Vrantchan
25c41cda94 add default targets for search results (#979)
Adds 5 most recently seen hosts + labels to the search targets response if the query is an empty string. 

Closes #921
2017-01-17 09:51:04 -05:00
Victor Vrantchan
6135f90f57 change recordlabelexecutions to use map[uint]bool instead of map[string]bool (#965)
Closes #345
2017-01-17 01:03:51 -05:00
John Murphy
a2fded1b2c Added hosts for each label (#963) 2017-01-17 06:57:05 +08:00
Mike Arpaia
5cc5220e5b Enforce uniqueness on query name (#915)
* Enforce uniqueness on query name

close #914

* catching the already exists error in MySQL
2017-01-16 15:20:15 -07:00
Mike Arpaia
066ec298b5 Don't return an error if statistics are requested and no hosts are available (#970)
close #966
2017-01-16 12:52:03 -07:00
John Murphy
f9fa65bfaa Changed query columns to TEXT type (#969) 2017-01-17 03:20:11 +08:00
Victor Vrantchan
f74216761a remove binaryFilesystem wrapper from bindata files (#964) 2017-01-16 10:16:50 -05:00
Victor Vrantchan
52a932bc6b Validate password requirements (#962)
Add validation for user password creation/reset
 - at least 7 chars
 - 1 number
 - 1 symbol 

consolidated service errors to a single file.
2017-01-15 18:23:09 -05:00
Victor Vrantchan
3802f3098e remove deprecated errors package (#961) 2017-01-14 15:00:09 -05:00
Mike Arpaia
581000bb64 Revert "Add some basic decorators to the osquery config (#875)" (#953)
This reverts commit 1d029073e5.
2017-01-13 13:21:54 -07:00
John Murphy
6f4dcdd082 Import Config - /config/import #366 (#764) 2017-01-13 12:35:25 -06:00
Victor Vrantchan
de3794b17b remove SMTP CLI flags. SMTP is now handles as app config in db (#949) 2017-01-13 08:54:16 -05:00
Victor Vrantchan
36dfad37ea allow osqueryd endpoints to enroll before app setup is complete (#931)
Closes #929
2017-01-11 19:40:58 -05:00
Mike Arpaia
dcfbe1b2d3 Ensure that manually attached hosts get packs (#922)
Previously, when determining which packs a host should get when it checked in, we were iterating each pack and only checking whether or not the host was apart of a label which was a target of the pack, but we were never checking whether or not the host had been added as a specific target of that pack. This PR makes the necessary modification to `svc.ListPacksForHost`.
2017-01-11 15:24:32 -07:00
Mike Arpaia
cf805aa66c Only return hosts which have been explicitly scheduled from packs API (#909)
* Only return hosts which have been explicitly scheduled from packs API

close #903

* better error handling

* documentation
2017-01-11 13:33:30 -07:00
Victor Vrantchan
1551e46fed add middleware to redirect setup to login if the app has an admin (#900)
user.
2017-01-11 14:05:07 -05:00
Zachary Wasserman
671255b105 Fix bug in saving host detail update time (#888)
Saving a new detail update time when the host details were not actually updated
caused detail updates to be missed. This PR fixes the existing test to catch
the bug, and fixes the bug.
2017-01-11 11:48:24 -07:00
Mike Arpaia
c2084026d1 Call MarkHostSeen from authenticate host (#881) 2017-01-11 09:30:13 -07:00
Mike Arpaia
9987983cb9 Simplifying SMTP Logic (#892)
* Simplifying SMTP Logic

This commit breaks the test email sending into it's own service method
(thus removing the capability from the API- if we want it back, we can
wire up another endpoint for just that). Additionally, error wrapping is
used through the new ModifyAppConfig service method to ensure that an
error or failed email will always result in an error while ensuring that
the submitted record always get committed (unless a serious error
happens).

* never wrap a nil error

* use err instead of individual errors
2017-01-11 01:27:09 -07:00
Victor Vrantchan
f276ff3d90 Wrap email errs (#884)
* wrap errors returned by SMTP client

* remove client hello
2017-01-10 23:56:32 -05:00
Mike Arpaia
efca0947ec SMTP API changes (#883)
* SMTP API changes

* remove smtp buttons

* remove password from api response

* no fields are required in the patch request
2017-01-10 21:41:58 -07:00
Zachary Wasserman
971eca9b2b Push distributed query errors over results websocket (#878)
As of recently, osquery will report when a distributed query fails. We now
expose errors over the results websocket. When a query errored on the host, the
`error` key in the result will be non-null. Note that osquery currently doesn't
provide any details so the error string will always be "failed". I anticipate
that we will fix this and the string is included for future-proofing.

Successful result:

```
{
  "type": "result",
  "data": {
    "distributed_query_execution_id": 15,
    "host": {
    ... omitted ...
    },
    "rows": [
      {
        "hour": "1"
      }
    ],
    "error": null
  }
}
```
Failed result:

```
{
  "type": "result",
  "data": {
    "distributed_query_execution_id": 14,
    "host": {
    ... omitted ...
    },
    "rows": [
    ],
    "error": "failed"
  }
}
```
2017-01-10 19:34:32 -08:00
Mike Arpaia
2371f58705 Remember to enable SMTP after configuring it (#882) 2017-01-10 19:51:40 -07:00
Mike Arpaia
5eb926c891 Make SMTP configuration work (#877)
* add a js validator that makes smtp server port required

* specifying that the InputField should be a number. this doesn't work, but i think that it should.

* casting the port as an int as a stop-gap fix

* email doesn't already have to be enabled to be enabled

* don't return the smtp password from the API

* show a fake placeholder password if the username is also set

* error type for @groob
2017-01-10 19:00:46 -07:00
Mike Arpaia
eea116836f Extra comma in SQL string (#876) 2017-01-10 16:25:26 -07:00
Mike Arpaia
1d029073e5 Add some basic decorators to the osquery config (#875)
close #874
2017-01-10 16:02:42 -07:00
Mike Arpaia
84aaec0d71 Fix a few osquery config bugs (#869) 2017-01-10 15:27:52 -07:00
Victor Vrantchan
9789543f8f add mock package and use in invite tests (#603)
* add mock package and use in invite tests

* mock expired invite test
2017-01-10 16:49:14 -05:00
Victor Vrantchan
1ba5559ae3 Fix race condition and remove outdated assertions from test (#850)
Fixes #751
For #760
Race conditions were caused by running the test in parallel.

Also remove assertions which were no longer true. The RequestPasswordReset
method was refactored in #725, but because of the racy test, the assertions
which should've failed did not.
2017-01-10 16:41:50 -05:00
Zachary Wasserman
72dd667421 Fix result log struct to support snapshot logs (#866)
Snapshot logs have a different schema, and are now (un)serialized correctly.

Fixes #841
2017-01-10 12:54:35 -08:00
Zachary Wasserman
b3213e5921 Fix failing Redis query results test (#864)
Due to the timezone being changed on time.Time's zero value after a roundtrip
serialization, any times being compared in this test must be explicitly set.
2017-01-10 11:56:38 -08:00
Victor Vrantchan
48ca30bffc add the error message to DatabaseError (#846) 2017-01-10 11:01:47 -05:00
Mike Arpaia
ee3940e163 Adding the display_text attribute to the hosts API (#842)
* initial scaffolding of a hostResponseForHost helper to consistently get all required values when returning hosts via the api

* Using the hostname as the display text

* remove err: nil

* groob comments

* pre-allocating the hostResponses slice
2017-01-09 22:05:18 -07:00
Zachary Wasserman
60428e01c4 Fix required password reset flow (#833)
Permissions errors were preventing users from completing this flow

- Add separate endpoint for performing required password reset
- Rewrite frontend reset to use this endpoint

Fixes #792
2017-01-09 21:42:50 -07:00
Victor Vrantchan
71def50756 add missing logs to kolide service (#843)
Add logging middleware for more of the kolide Service interfaces. 
This PR was created through code generation, however it's not likely that the logging middleware can all be continuously regenerated - we're likely to want to add method specific key/values to individual methods. Moving forward, logging middleware should be maintained when changes are made to a service interface method.
2017-01-09 23:40:21 -05:00