Commit Graph

1906 Commits

Author SHA1 Message Date
noahtalerman
0566fc57f3
Update action button styles on "Manage packs" page and "Manage queries" page (#960)
- Add `text-icon` variant to buttons on _Manage packs_ page
- Add `text-icon` variant to buttons on _Manage queries_ page
2021-06-04 18:03:32 -04:00
RachelElysia
c68a89b1c3
Team maintainer can add host (#961) 2021-06-04 15:19:39 -04:00
RachelElysia
e52e0747ad
Query Edit/Run: Conditional select targets dropdown (#923)
* Modify targets endpoint to  use queryId
* Conditionally render query page including queryId
* Includes conditionally renders target dropdown

Co-authored by: Sarah Gillespie @gillespi314
Test mods co-authored by: Gabriel Hernandez @ghernandez345
2021-06-04 15:13:59 -04:00
Gabriel Hernandez
f181d24698
enroll secret dropdown completion (#958)
* Add tier permissions for seeing the enroll secret dropdown.
* Hooks up API to show different team enroll secrets when selected from the dropdown.
2021-06-04 11:03:49 -07:00
RachelElysia
e4c866cf7c
Teams grouping in Select Targets Dropdown (#873)
* Renders targets by team
* Conditional rendering for no hosts available
* Update styling to match figma
2021-06-04 12:37:56 -04:00
RachelElysia
af301be81c
403 Page, routing for tier permissions (#920)
* 403 page, svg, routing
* Reroute basic tier pages if no permission to access
2021-06-04 12:34:27 -04:00
Zach Wasserman
16a8e13f85
Fix tls_compatibility key in yaml config (#955)
Closes #271
2021-06-04 08:44:36 -07:00
Zach Wasserman
ec2814d77f
Remove deprecated config options (#954)
Closes #145
2021-06-04 08:40:25 -07:00
Gabriel Hernandez
f127f8c2cd
add new permission routes and messaging (#915)
* add new permission routes and messaging

* add messaing for no permissions

* query-library-os-icons (#913)

Added query library os icons to website assets.

* fix broken check for config before api responds

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
2021-06-04 14:00:14 +01:00
Zach Wasserman
e4358a92bc
Filter hosts and label counts by teams (#949)
- Add TeamFilter to relevant host and label methods.
- Pass appropriate filter in service methods.

The dashboard should now show the appropriate hosts for a user's team membership.
2021-06-03 18:53:43 -07:00
Zach Wasserman
b3bafdce24
Return error messages for authentication errors (#950)
Previously the authorization middleware was masking the error when
authentication failed.
2021-06-03 18:24:23 -07:00
Zach Wasserman
18faa5a06b
Add authorization checks in service (#938)
- Add policy.rego file defining authorization policies.
- Add Go integrations to evaluate Rego policies (via OPA).
- Add middleware to ensure requests without authorization check are rejected (guard against programmer error).
- Add authorization checks to most service endpoints.
2021-06-03 16:24:15 -07:00
RachelElysia
1b131bd9db
Packs page: action icons (#935)
* Render packs page new icons: Enable, disable, delete, search
2021-06-03 16:50:13 -04:00
RachelElysia
875d6bb6ac
Fix firefox icons (#931)
* Firefox compatible icons: plus, carat, x

Note: css property `content: url(imagefile);` only compatible with pseudo elements
2021-06-03 09:20:06 -04:00
RachelElysia
0867c717cf
Roles: only observers, only maintainers (#929)
* User roles render for only team observers and only team maintainers
2021-06-02 15:55:52 -04:00
RachelElysia
0f09c2e837
Render host status icons (#930) 2021-06-02 15:53:20 -04:00
Zach Wasserman
5c09f3e5e1
Make create_figma script executable (#927) 2021-06-02 11:49:57 -07:00
Zach Wasserman
a40c549d95
Add -trimpath to go build flags for release (#909)
Provides cleaner error paths in release binaries.
2021-06-01 16:03:52 -07:00
noahtalerman
2dca66c33d
Add Fleet Core and Fleet Basic user/team creation scripts for manual QA (#919)
- Add `teams/create_core` script
- Add `teams/create_basic` script
- Rename existing script to `teams/create_figma`
2021-06-01 14:50:07 -04:00
RachelElysia
9469cb0bf1
Packs pages: Edit page empty state rendering, Manage page update UI (#885)
* Packs: Update empty state, tables, select targets pills, platform pills, icons, phrasing
2021-06-01 09:10:35 -04:00
Zach Wasserman
417ef2c9b6
Refactor teams service methods (#910)
- Move team-related service methods to `ee/server/service`.
- Instantiate different service on startup based on license key.
- Refactor service errors into separate package.
- Add support for running E2E tests in both Core and Basic tiers.
2021-05-31 17:07:51 -07:00
Zach Wasserman
9876dbe6b6
Implement license loading and validation (#908)
- Load license from ES256 signed JWT key.
- Parse license claims into LicenseInfo struct.
- Update contribution documentation with sample license key.

Closes #816.
2021-05-31 11:35:15 -07:00
Zach Wasserman
a5bd03e5d7 Merge branch 'master' into teams 2021-05-31 10:56:50 -07:00
Zach Wasserman
64f2cfc9cd
Refactor enroll secrets to support Teams (#903)
- Add `team_id` field to secrets.
- Remove secret `name` and `active` fields (migration deletes inactive secrets).
- Assign hosts to Team based on secret provided.
- Add API for retrieving secrets by Team.
2021-05-31 09:02:05 -07:00
Zach Wasserman
7971209fed
Implement license key generation (#906)
Adds a Node script for generating JWT license keys.

See the included README.md for details on usage and implementation.
2021-05-30 19:36:12 -07:00
Mike McNeil
6f09fd53f4
Enable freeform issues 2021-05-29 22:22:26 -05:00
Mike McNeil
54af2d2c29
Restore the usefulness of Noah's GitHub notifications 2021-05-29 21:44:41 -05:00
Mike McNeil
09d9a7ce1d
use latest labeling conventions in issue templates (#904)
* Update feature-request.md

* Update feature-request.md

* Update feature-request.md

* Update config.yml
2021-05-29 21:31:47 -05:00
Zach Wasserman
201fde01c0
Clean up simulated hosts in fleetctl preview (#893)
The `reset` and `stop` subcommands will now clean up the simulated
hosts. Previously these were unintentionally left running.
2021-05-28 17:19:31 -07:00
Mike McNeil
7bb202f961
Publish fleetdm.com/queries (#899)
* /sandbox/queries becomes /queries, etc

* Publish fleetdm.com/queries

Expose query library routes the rest of the way, move remediation data sanitization to the point of entry, and update query library to match (pairing w/ @gillespi314)

* Fix accidental commit of sailsrc (again)
2021-05-28 17:51:47 -05:00
gillespi314
0c236fd701
Ship v1 of standard query library (#898)
* Implement detail page for standard query lib

* Add alt text for image

* Replace id with css class

* Implement query-libary page for fleetdm.com

* Remove console.log

* Implement client-side search for query library

* Add responsive breakppoints

* Fix input tag
2021-05-28 16:57:04 -05:00
Mike McNeil
1512089384
add contributors to a query 2021-05-28 16:46:33 -05:00
gillespi314
e27fda73b2
Implement query-library page for fleetdm.com (#891)
* Implement detail page for standard query lib

* Add alt text for image

* Replace id with css class

* Implement query-libary page for fleetdm.com

* Remove console.log
2021-05-28 16:00:40 -05:00
noahtalerman
c450c86749
In 3-Deployment/2-Configuration add note about mitigating DoS attacks (#897) 2021-05-28 16:47:32 -04:00
Zach Wasserman
e6e3b6e5f4
Add robots noindex to frontend HTML head (#892)
Asks Google and other crawlers not to include the page in search
results.

Closes #890
2021-05-28 11:41:24 -07:00
gillespi314
5ec25e461f
Implement query detail page for standard query library (#887)
* Implement detail page for standard query lib

* Add alt text for image

* Replace id with css class
2021-05-28 12:00:54 -05:00
RachelElysia
19dd6e772b
Teams query manage page: Styling (#881)
* Style query manage page including side panel and table
* Conditional side panel rendering

Additional riders:
* Less brittle team e2e test
* Update all search icons across app
2021-05-27 19:39:35 -04:00
noahtalerman
4cca4e7e7f
Remove @fleetdm.com emails from fleetdm/fleet repo (#882)
- In tests and documentation, replace `@fleetdm.com` with `@example.com`
- In documentation, replace `hello@fleetdm.com` with `fleetdm.com/contact`
- In documentation, replace `security@fleetdm.com` with `fleetdm.com/contact`
- In Dockerfiles, replace `engineering@fleetdm.com` with `hello@fleetdm.com`. These two files are the only remaining files with a `@fleetdm.com` email.
2021-05-27 17:19:14 -04:00
noahtalerman
6a72240860
Add link to release blog post in Software inventory documentation (#878)
- Add link to "Fleet 3.11.0 released with software inventory" to location in docs where software inventory is described.
- Change "host details" to "host vitals"
2021-05-27 17:18:41 -04:00
noahtalerman
dcbcc541a6
Move community project links into Example deployment scenario docs (#883)
- Move the community Fleet deployment tools to `docs/3-Deployment/4-Example-deployment-scenarios.md`
2021-05-27 17:14:10 -04:00
Zach Wasserman
8ee47f8b23
Add support for Teams in targets and live queries (#880)
- Accept Teams as a searchable target type for the target selection API.
- Accept Teams for targets in running live queries.
- Refactoring to support these changes.
- Update API documentation.
2021-05-27 13:18:00 -07:00
RachelElysia
c42f150fac
Query Edit/Run Page: Observer view (#820)
* Query Edit/Run page renders based on user role
* Original UI for global admin/ global maintainer
* New UI for global observer / team maintainer / team observer
* New create new query UI for team maintainer
* Styling matches Figma
* Tests modified accordingly

Styling Closes #859

Co-authored by: Sarah Gillespie @gillespi314
Tests co-authored by: @ghernandez345
2021-05-27 12:06:24 -04:00
Gabe Hernandez
184d375e55
fixes for teams bugs (#869)
* add message for transfering hosts to no team

* fix issue where editing user in members page did not update the table properly
2021-05-27 10:45:45 +01:00
Zach Wasserman
cebd4df0f5
Update live query and targets APIs for Teams (#876)
- Take query_id in live query and target APIs.
- Use query_id to determine observer targets.
- Update documentation.
2021-05-26 20:45:06 -07:00
Mike McNeil
a2eb7f3f9c
(guiltily fixes markdown typo) 2021-05-26 21:16:18 -05:00
noahtalerman
a32c277780
Add Release process document to /handbook (#874)
* Add document

* Spell fix in README

* minor word trimming and added a comma or two.  This looks great!

Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
2021-05-26 21:07:00 -05:00
Zach Wasserman
48c413a254
Split host additional into separate table (#875)
- Move host `additional` into a separate table.
- Join when that data is needed.
- API change: `/api/v1/fleet/hosts` now returns only the requested
  `additional` columns, unless `*` is provided as the sole argument.

Background:

A customer reported that MySQL binlogs grew huge and replication lag
went way up when data was stored in the `additional` column. In this
deployment MySQL was running with ROW replication. This would cause the
entire `additional` data to be copied on each update of the host checkin
time. While switching to STATEMENT or MIXED replication would likely
mitigate the issue, this was not an option in their environment.
2021-05-26 16:24:12 -07:00
noahtalerman
f725a4e7f5
Add check-modified-files-only (#871)
- Set `check-modified-files-only` to `'yes'`
  - This is so we only check modified markdown files instead of checking all markdown files.
2021-05-26 11:07:29 -04:00
Gabe Hernandez
c018823abf
conditionally show add label button (#854) 2021-05-26 13:10:04 +01:00
Gabe Hernandez
d3932d736d
add permission to host page (#852)
* update genreating of available host table headers based on tier

* stoping point for host permissions

* fixed up available headers for teams depending on permissions

* show select column on host table properly
2021-05-26 13:08:42 +01:00