Commit graph

2603 commits

Author SHA1 Message Date
RachelElysia
e9a11c429a
Fleet UI: Link improvements (Back links and dashboard tiles right clickable, fix queries link on nav bar) (#13361) 2023-08-23 08:56:32 -04:00
Lucas Manuel Rodriguez
77c817aa0b
Fix Windows CIS policies issues found by new fleetctl apply checks (#13460)
Found while working on #12696.

This was caught be a recent check added by @mostlikelee to `fleetctl
apply` (#13294).

Sample error:
```sh
$ fleetctl apply --context loadtest -f ee/cis/win-10/cis-policy-queries.yml
Error: applying policies: policy names must be globally unique. Please correct policy "CIS - Ensure 'Windows Firewall: Public: Firewall state' is set to 'On (recommended)'\n" and try again.
```
2023-08-23 07:42:41 -03:00
RachelElysia
38c5c58f8a
Fleet UI: [feature] All table links can open in a new tab (#13349) 2023-08-22 09:20:40 -04:00
Martin Angers
de32faefdb
Add /scripts/run and scripts/run/sync API endpoints to run scripts (part 1) (#13417) 2023-08-21 14:47:19 -04:00
Tim Lee
3b61adf7a4
Add validation for policy specs (#13294) 2023-08-21 10:22:07 -06:00
gillespi314
e08bb000c9
Update nanomdm dependency (#12721)
Updates include:
- Fix issues where `GetBootstrapToken` returned `500` instead of no data
and no error per Apple MDM
[documentation](https://developer.apple.com/documentation/devicemanagement/get_bootstrap_token)
- Incorporate additional updates from the upstream nanomdm repo
2023-08-21 11:07:57 -03:00
Roberto Dip
3b815b04c2
adjust MDM migration copy and timers (#13366)
for #13158
2023-08-18 18:58:40 -03:00
Lucas Manuel Rodriguez
6a91bc54cf
Add tooling for load testing Windows CIS policies and fix typos in policy queries (#13384)
#11939

- This PR fixes typos in three CIS Windows queries (the queries were
failing with `invalid SQL syntax`).
- Also adds tooling to perform similar testing that we ran for macOS
(using `fleetd_tables` as an extension).
2023-08-18 17:32:22 -03:00
Roberto Dip
19a5ae6465
update macadmins/osquery-extension to v0.0.15 (#13371)
changelog for the version bump can be found here:
https://github.com/macadmins/osquery-extension/releases/tag/v0.0.15

related to #13158 as this fixes a bug in the extension causing `profiles
show --type enrollment` to be run almost every time we queried something
from the `mdm` table.

I couldn't find any new tables. Other than that, some dependencies were
updated on their repo as well, most notably `osquery/osquery-go`
2023-08-18 12:38:49 -03:00
RachelElysia
8e74f7c42d
Fleet UI: [released tiny bug] Fix dashboard double scroll bar (#13309) 2023-08-18 09:15:44 -04:00
RachelElysia
ccdd1a02f4
Fleet UI: Convert URLs in Policy resolution text to be clickable links (#13023) 2023-08-18 09:15:23 -04:00
Luke Heath
1260db9360
Prepare v4.36.0 (#13364) 2023-08-17 16:11:19 -05:00
Roberto Dip
902e064d04
fix issues with migration flow (#13297)
For #13094
2023-08-14 09:56:59 -03:00
RachelElysia
78d070d0b2
Fleet UI: [bug fix] Selected organization tab styling (#13269) 2023-08-11 09:32:02 -04:00
Roberto Dip
d845720c2d
fix: ensure we assign ABM profiles for modified hosts (#13275)
for #12958 and #13110
2023-08-10 19:51:17 -03:00
Jacob Shandling
ed229c28f2
Prevent host page label filter text from jumping at low viewport width (#13256) 2023-08-10 14:41:49 -07:00
Luke Heath
f3b9bcc02a
Prepare v4.35.1 (#13163) 2023-08-10 08:43:52 -07:00
RachelElysia
e8889a4d61
Fleet UI: Disable save button for invalid sql or name (#12994) 2023-08-09 16:24:46 -04:00
Martin Angers
b3d0192995
Return 403 instead of 500 when conditions are not met to perform a required pwd reset (#13244) 2023-08-09 15:28:04 -04:00
RachelElysia
e2d68b9b51
Fleet UI: (Styling bug) Search bar alignment, hover state (#13151) 2023-08-09 13:35:28 -04:00
Jacob Shandling
a7f1501054
Update fleetctl convert for schedulable queries (#13125) 2023-08-08 10:39:20 -07:00
Gabriel Hernandez
6555d8def4
Feat UI windows automatic enrollment (#12988)
relates to #12606

Implementation of the Windows automatic enrollment Fleet UI pages. This
includes implementation of card for windows automatic enrollment, the
setup page for windows automatic enrollment, and terms and conditions
page for windows (This is currently still being worked on as our current
solution is not working).

**windows mdm auto enrollment card**


![image](https://github.com/fleetdm/fleet/assets/1153709/d4dc1813-dc28-4a63-bacd-cb7e43e18170)

**windows auto enrollment setup page**


![image](https://github.com/fleetdm/fleet/assets/1153709/92da4b05-0d5d-4404-867f-6d315957bdc3)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Marcos Oviedo <marcos@fleetdm.com>
2023-08-08 15:57:55 +01:00
Roberto Dip
6d186602cd
add flags to configure Windows MDM certs using their contents (#13184)
related to #13033

seems like we're not currently documenting any Windows MDM config flags,
so I left those undocumented too.
2023-08-08 10:54:50 -03:00
Gabriel Hernandez
b4ee1c58b5
update OSversion service method to not search on for no team (#13127)
relates to #12986

This is a fix for a case where the `os_versions` endpoint was returning
a 404 when searching for `no teams`.

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-08-08 13:30:29 +01:00
Martin Angers
37ba43d404
Add fleetctl upgrade-packs command to migrate 2017 packs to queries (#13078) 2023-08-08 08:21:57 -04:00
Martin Angers
554e024f7b
Fix gitops access when using --dry-run with fleetctl apply (#13178) 2023-08-07 13:51:11 -04:00
Jacob Shandling
82858f8c3e
UI: Add padding to users count in host details (#13165) 2023-08-07 09:21:48 -07:00
Jacob Shandling
4527d52ead
UI – add grey dashboard icons (#13015) 2023-08-07 09:21:02 -07:00
Roberto Dip
8fda48db8b
use only the UUID part of external_host_identifier for Puppet runs (#13176)
related to #12483, we have found out that in distributed scenarios, the
URL of the Puppet server used for the request is appended to the
identifier, and it can be different between `/preassign` and `/match`
calls.

to account for this, we're only grabbing the first 36 characters of the
identifier.
2023-08-07 12:41:13 -03:00
gillespi314
9ae3aa8036
Update MDM profile verification (#13138) 2023-08-07 09:46:03 -05:00
gillespi314
5b27581fdc
Configure bootstrap package and end user auth for newly created teams in MDM pre-assignment flow (#13089) 2023-08-07 09:43:39 -05:00
Luke Heath
4cc5bfbe4a
UI: Add missing call to new query path making function (#13162)
Reapplies https://github.com/fleetdm/fleet/pull/13156/
2023-08-04 14:49:25 -07:00
Luke Heath
8d1fb85d9c
Revert UI query path fix (#13161) 2023-08-04 14:22:15 -07:00
Jacob Shandling
576cb198d4 changefile 2023-08-04 13:06:14 -07:00
Roberto Dip
29b9a7fe88
account for NULL values in scheduled_query columns in data migration (#13142)
Prior to 4.35.0, some rows in the scheduled_query table might have a
`NULL` value due to a race condition with database replicas and the way
`ds.EnsureGlobalPack` and `ApplyPackSpecs` work together.

This is no longer the case, but some databases are left in weird states,
which were not accounted by this migration.

Chaning the migration in-place because that's the approach we took in
previous migrations with similar problems.
2023-08-04 09:24:36 -07:00
RachelElysia
3c8244b246
Fleet UI: Dynamic autofill for SQL editor (#13093) 2023-08-03 12:42:51 -04:00
Gabriel Hernandez
cb89b725ea
implement fleetctl apply new team with secret (#13062)
relates to #12907

implement adding an enroll secret when creating a new team with
`fleetctl apply` if none is provided.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [ ] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-08-02 17:42:01 +01:00
RachelElysia
3477178758
Fleet UI: No role = no access, refactor jsx class components to typescript functional components (#12953) 2023-08-02 11:29:49 -04:00
Luke Heath
648b25bf4d
Prepare v4.35.0 (#13077) 2023-08-01 09:22:01 -07:00
Luke Heath
c8dee16121
Prepare v4.34.1 (#13073) 2023-07-31 16:54:24 -07:00
Marcos Oviedo
7cfea0787e
Windows Installer changes to support MDM Azure flow (#13025)
This relates to #12600 

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [X] Manual QA for all new/changed functionality
2023-07-31 12:12:06 -03:00
Jacob Shandling
0c0ff35a37 changes 2023-07-28 13:28:44 -07:00
Jacob Shandling
3bf0344396 Merge branch 'main' into 7765-combined-schedules-and-queries 2023-07-28 13:21:04 -07:00
RachelElysia
feddda299b Fleet UI: New manage query automations modal (#12747) 2023-07-27 13:47:54 -07:00
Jacob Shandling
4cab838864 Revert "Fleet UI: New manage query automations modal (#12747)"
This reverts commit e13644d664.
2023-07-27 13:44:40 -07:00
Jacob Shandling
c69bba6d0e Merge branch '7765-frontend' into 7765-combined-schedules-and-queries 2023-07-27 13:35:07 -07:00
Jacob Shandling
1daf6f02c6 Revert "Merge front-end changes into 7765 Master Dev branch (#12905)"
This reverts commit 7bff7447b0.
2023-07-27 13:32:24 -07:00
Jacob Shandling
266e9bf2e0
UI – Update platforms column to only display compatible platforms (#13003)
## Addresses #12999 

<img width="1282" alt="Screenshot 2023-07-27 at 11 59 01 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/b60d3b41-3d7b-4550-ba7c-8615bae085a6">


# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-27 12:10:22 -07:00
gillespi314
abfa113083
Disable nudge in case of launch error (#12906) 2023-07-26 14:40:03 -05:00
Roberto Dip
d9de78e9fc
upgrade Go version to 1.19.11 (#12902) 2023-07-26 11:09:22 -07:00
Roberto Dip
442e03b276
Improve the error handling for MDM SSO during DEP enrollment (#12966)
For #12692
2023-07-26 14:20:36 -03:00
Roberto Dip
833c851706
fetch the correct hiera information based on the node env (#12944)
For https://github.com/fleetdm/fleet/issues/12897
2023-07-26 12:04:11 -03:00
Luke Heath
cd94d11ad7
Fixed URL used to check Gravatar network availability (#12949) 2023-07-25 10:08:57 -07:00
Jacob Shandling
fd50360278
Fix setup page styling (#12936)
## Addresses #12935 
<img width="780" alt="Screenshot 2023-07-24 at 11 04 11 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/5d4b335a-3abd-4f7c-beaa-79ee151c490f">
<img width="1243" alt="Screenshot 2023-07-24 at 11 03 10 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/3b79ce91-34d6-4b6a-8eb6-50a7ac9f39d3">

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-24 11:13:02 -07:00
Juan Fernandez
7bff7447b0
Merge front-end changes into 7765 Master Dev branch (#12905)
Front-end changes for combined schedules and queries.
2023-07-24 09:47:05 -04:00
Juan Fernandez
6b664a2a82
Merge branch 'main' into 7765-combined-schedules-and-queries 2023-07-21 13:53:13 -04:00
Marcos Oviedo
501ef480b0
Windows mdm TOS endpoint (#12900)
This relates to https://github.com/fleetdm/fleet/issues/12604 and
https://github.com/fleetdm/fleet/issues/12600

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
2023-07-21 14:36:26 -03:00
Roberto Dip
ee461bac2e
optimizations to profile delivery (#12808)
for #12481
2023-07-20 18:11:45 -03:00
gillespi314
b8ab1fb183
Update ingestion of host detail queries for MDM so hosts that report empty results are counted as "Off" (#12700) 2023-07-19 12:38:42 -05:00
Marcos Oviedo
f429c6db49
12613 Azure AD JWT Auth token support (#12817)
This PR adds support to parse Azure JWT tokens, and it also adds the STS
endpoint ([Section
3.2](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-mde2/27ed8c2c-0140-41ce-b2fa-c3d1a793ab4a)
on the MS-MDE2 spec)

This relates to #12614 and #12613 

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
2023-07-19 13:30:24 -03:00
RachelElysia
e13644d664
Fleet UI: New manage query automations modal (#12747) 2023-07-18 17:10:45 -04:00
RachelElysia
a45edfdffa
Fleet UI: New edit query page (#12777) 2023-07-18 16:58:52 -04:00
Jacob Shandling
1d6870f0a7
UI: Update the save query modal with scheduling-related fields (#12741)
## Addresses #12646
### See issue for list of completed work
![Screenshot 2023-07-12 at 5 41 05
PM](https://github.com/fleetdm/fleet/assets/61553566/b4ece0c9-5df1-4320-9dce-1cd8c2758c6c)


### Also see PR #12713 **notes for review** on that PR for help manually
testing this work in lieu of the completed API.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-17 14:09:59 -07:00
Gabriel Hernandez
c5a4fa60b7
Feat UI update macos windows setup (#12744)
relates to #12168

Updates the fleet UI so that the macOS mdm setup flow is similar to the
windows mdm setup. This includes:

**Adding a new macos setup card:**


![image](https://github.com/fleetdm/fleet/assets/1153709/dc3371a6-864b-4af8-8e97-d716d5a51361)


![image](https://github.com/fleetdm/fleet/assets/1153709/5d7ebb54-6c80-45ac-86b2-93d452357b96)

**Adding a new mac os mdm page on a new URL:**


![image](https://github.com/fleetdm/fleet/assets/1153709/30e42176-d4ab-4087-bde0-d74c81fde613)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-07-17 15:51:40 +01:00
Juan Fernandez
8d55966553
Updated osquery/config endpoint to include scheduled queries (#12723)
Updated GetClientConfig API endpoint
2023-07-14 13:37:09 -04:00
Roberto Dip
e8070e0bd8
properly report changed profiles in the Puppet module (#12719)
For #12480
2023-07-14 12:53:03 -03:00
gillespi314
e716406ed5
Mask URL params in server logs for webhook POSTs (#12761) 2023-07-13 17:47:34 -05:00
Jacob Shandling
7ff4b77fb9
UI: Merge scheduling functionality into queries page (#12713)
## Addresses #12636 

### See issue for list work done
![Screenshot 2023-07-12 at 6 47 04
PM](https://github.com/fleetdm/fleet/assets/61553566/47e3e5b2-0195-4f54-a377-8e5c03313acf)


![Frame-12-07-2023-06-43-32](https://github.com/fleetdm/fleet/assets/61553566/f72f2d41-609f-4409-8595-5f3e4f06d9bb)


### Notes for review:
- Because other work is based on this branch, TODOs / fixes are noted
here until the team comes to a strategy for merging all of the work:
- Add missing space in the Performance impact column "Undetermined"
tooltip text
- I'm having trouble confirming that the inherited queries table is
working right with the mock hard-coded data, though I did see it working
correctly previously. There's an issue with the page reverting to "All
teams" when trying to show the inherited table, though it does show the
table before re-rendering.

- This work is organized clearly by commit, so that might be a
manageable way to go through this code.
- Since the updated API for this work is not yet complete, this work can
be manually tested by either:
    - Using mock API infrastructure, or
- in `ManageQueriesPage.tsx`, comment out the two `useQuery` calls and
add appropriate mock data. You can then modify any fields of interest to
test their related UI functionality. For example, lines 119 -242 might
read:
```
// const {
  //   data: curTeamEnhancedQueries,
  //   error: curTeamQueriesError,
  //   isFetching: isFetchingCurTeamQueries,
  //   refetch: refetchCurTeamQueries,
  // } = useQuery<IListQueriesResponse, Error, IEnhancedQuery[]>(
  //   [{ scope: "queries", teamId: teamIdForApi }],
  //   () => queriesAPI.loadAll(teamIdForApi),
  //   {
  //     refetchOnWindowFocus: false,
  //     enabled: isRouteOk,
  //     select: (data) => data.queries.map(enhanceQuery),
  //   }
  // );

  // // If a team is selected, fetch inherited global queries as well
  // const {
  //   data: globalEnhancedQueries,
  //   error: globalQueriesError,
  //   isFetching: isFetchingGlobalQueries,
  //   refetch: refetchGlobalQueries,
  // } = useQuery<IListQueriesResponse, Error, IEnhancedQuery[]>(
  //   [{ scope: "queries", teamId: -1 }],
  //   () => queriesAPI.loadAll(),
  //   {
  //     refetchOnWindowFocus: false,
  //     enabled: isRouteOk && isAnyTeamSelected,
  //     select: (data) => data.queries.map(enhanceQuery),
  //   }
  // );

  const [
    curTeamEnhancedQueries,
    curTeamQueriesError,
    isFetchingCurTeamQueries,
    refetchCurTeamQueries,
  ] = useMemo(() => {
    return [
      [
        {
          created_at: "2023-06-08T15:31:35Z",
          updated_at: "2023-06-08T15:31:35Z",
          id: 2,
          name: "test",
          description: "",
          query: "SELECT * FROM osquery_info;",
          team_id: 43,
          platform: "darwin",
          min_osquery_version: "",
          automations_enabled: true,
          logging: "snapshot",
          saved: true,
          // interval: 300,
          interval: 0,
          observer_can_run: false,
          author_id: 1,
          author_name: "Jacob",
          author_email: "jacob@fleetdm.com",
          packs: [],
          stats: {
            // system_time_p50: 1,
            // system_time_p95: null,
            // user_time_p50: 1,
            // user_time_p95: null,
            // total_executions: 1,
          },
          performance: "Undetermined",
          platforms: ["darwin"],
        },
      ] as IEnhancedQuery[],
      undefined,
      false,
      () => {
        console.log("got the new queries");
      },
    ];
  }, []);

  const [
    globalEnhancedQueries,
    globalQueriesError,
    isFetchingGlobalQueries,
    refetchGlobalQueries,
  ] = useMemo(() => {
    return [
      [
        {
          created_at: "2023-06-08T15:31:35Z",
          updated_at: "2023-06-08T15:31:35Z",
          id: 200,
          name: "test",
          description: "",
          query: "SELECT * FROM osquery_info;",
          team_id: null,
          platform: "darwin",
          min_osquery_version: "",
          automations_enabled: true,
          logging: "snapshot",
          saved: true,
          // interval: 300,
          interval: 0,
          observer_can_run: false,
          author_id: 1,
          author_name: "Jacob",
          author_email: "jacob@fleetdm.com",
          packs: [],
          stats: {
            // system_time_p50: 1,
            // system_time_p95: null,
            // user_time_p50: 1,
            // user_time_p95: null,
            // total_executions: 1,
          },
          performance: "Undetermined",
          platforms: ["darwin"],
        },
      ] as IEnhancedQuery[],
      undefined,
      false,
      () => {
        console.log("got the new inherited queries");
      },
    ];
  }, []);
```

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-07-13 12:11:11 -07:00
Gabriel Hernandez
9aa7c0c714
add dark and light background logo colors and show them on mdm migrat… (#12681) 2023-07-13 19:35:25 +01:00
Juan Fernandez
bfe6a5c3ad
Invalid policies should be ignored in the desktop endpoint (#12523)
Updated the `/desktop` endpoint to ignore invalid policies
2023-07-13 14:13:36 -04:00
RachelElysia
93a03ad216
Fleet UI: Observer plus can run any custom query (#12749) 2023-07-13 14:02:15 -04:00
Roberto Dip
eb75e303ec
change how team assignment works for the Puppet module (#12566)
For #12532, all details of how this works/why is done are in the issue
description.
2023-07-13 15:00:45 -03:00
Roberto Dip
53f0e281bf
set DeferForceAtUserLoginMaxBypassAttempts in FV profile (#12729)
Related to #12608, this automatically sets the
`DeferForceAtUserLoginMaxBypassAttempts` property to `1` on the
FileVault profile that's generated by Fleet.

This changeset also includes a migration to modify old FileVault
profiles that already exist in the database, and by virtue of that a
`InstallProfile` command will be issued to hosts that already have FV
enabled. During testing we found:

1. This doesn't affect users with FV already installed, they silently
get the profile updated without any changes.
2. Since the profile needs to be re-delivered, it'll go through the full
"pending" -> "verifying" -> "verified" cycle.
2023-07-13 11:54:05 -03:00
Luke Heath
a001fbf3ec
Prepare v4.34.0 (#12706) 2023-07-11 14:38:57 -07:00
Marcos Oviedo
a49e980394
Windows MDM identity certs missing check (#12702)
This is related #12701 

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [X] Manual QA for all new/changed functionality
2023-07-10 17:36:17 -03:00
Juan Fernandez
be1f4cfa12
Fixed typo 2023-07-06 18:16:02 -04:00
Juan Fernandez
e3d7269c3d
Fixed typo 2023-07-06 18:13:49 -04:00
Juan Fernandez
2eacb3bcc2
Added changes 2023-07-06 18:11:32 -04:00
Marcos Oviedo
96449dd47b
Adding support for RequestSecurityToken messages - Windows MDM enroll endpoint (#12555)
This relates to #12263 

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [X] Added/updated tests

---------

Co-authored-by: Roberto Dip <me@roperzh.com>
2023-07-05 10:06:37 -03:00
Juan Fernandez
91f048e98a
Fixed iCloud false positives (#12551)
Added new type `CPEMatchingRule` used for fixing false positives caused by 'bad' entries in the NVD dataset.
2023-06-30 13:05:34 -04:00
Luke Heath
cc8a2d0605
Prepare v4.33.1 (#12417) 2023-06-30 09:49:50 -07:00
Roberto Dip
5ddd940cb8
ensure profiles and commands are delivered when MDM is turned on (#12580)
Related to #12482 and #12453, this cleans up Fleet tables that track
profile and bootstrap package status on re-enrollment.
2023-06-30 12:30:49 -03:00
Roberto Dip
4b139245cb
only show Nudge to hosts with MDM features turned on (#12588)
For #12582
2023-06-30 12:29:27 -03:00
gillespi314
83746aa130
Fix UI bug in host software table search (#12590) 2023-06-30 10:17:37 -05:00
Gabriel Hernandez
0ce66b952d
add org support url input to org info form (#12591)
relates to #12568

adds the missing org support URL input on the settings page org info
form.


![image](https://github.com/fleetdm/fleet/assets/1153709/4e7e1fa4-f462-4fc7-ad2d-49a47edded57)


- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-06-30 16:08:26 +01:00
Lucas Manuel Rodriguez
810eb58b95
macOS CIS: Use find command (exposed as fleetd table) instead of relying on the osquery core file table (#12560)
#10292, #12554

When scanning tens of thousands of files for permissions, using the
`find` command exposed as a fleetd table is more performant than trying
to use the `file` table. This change caused the watchdog to *stop*
killing osquery because of exceeding memory or CPU limit.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- [X] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-06-29 16:22:41 -03:00
Gabriel Hernandez
9f3331ef94
Fix word wrapping on TruncatedTextCell tooltip (#12567)
relates to #12473

Fixes ui bug where the wrapping text on a tooltip in TruncatedTextCell
did not display properly. I fixed this by adding a prop to the component
`tooltipBreakOnWord` which allows devs to configure if the tooltip
breaks on a word, or by default on any character.

**Breaking on a word:**


![image](https://github.com/fleetdm/fleet/assets/1153709/1e3488fd-0051-4bed-8597-e4249a654da3)

**Breaking on any character (default behaviour):**


![image](https://github.com/fleetdm/fleet/assets/1153709/cbb9481f-5cab-4c9b-873a-2343721ebdfe)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-06-29 17:04:25 +01:00
RachelElysia
e04e349baf
Fleet UI: Clean up query/policy targets dropdown styling (#12557) 2023-06-28 18:18:43 -07:00
Martin Angers
f641c3ec57
Add activities when Windows MDM is turned on/off (#12533) 2023-06-28 12:53:46 -04:00
Gabriel Hernandez
36ca97ff2a
Feat UI activities for windows mdm (#12552)
relates to #12289

Implements enable and disable Windows mdm activity UI

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2023-06-28 17:28:17 +01:00
Jacob Shandling
569bf15fa5
UI - remove extra loading Spinner from Software page (#12519)
## Addresses #11355, pt.1 (pt. 2 already fixed)

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` 
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-06-28 08:57:02 -07:00
Roberto Dip
78cc59e690
lowercase DisplayName attributes when reading SSO response (#12545)
this is to accommodate providers like [Okta][1] that send the user's
full name as an attribute named `displayName`

[1]:
https://developer.okta.com/docs/reference/api/users/#default-profile-properties
2023-06-28 12:19:13 -03:00
Martin Angers
1db2f7646a
Implement Windows MDM programmatic unenrollment (notification + orbit trigger) (#12505) 2023-06-28 09:13:37 -04:00
Martin Angers
e323a3d881
Consider an empty EULA pdf file the same as an invalid one, returning 400 Bad Request (#12542) 2023-06-28 08:19:42 -04:00
Marcos Oviedo
821f6b064f
Adding support for GetPolicies message (#12477)
This relates to #12262 

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
2023-06-27 12:59:33 -03:00
Lucas Manuel Rodriguez
feb4e65be6
Optimize macOS CIS query 5.1.5 (#12506)
#10292

The query was processing *every* file under `/Applications/`, which
makes it super expensive both in CPU usage and Memory footprint. This
query was the main culprit of triggering worker process kills by the
watchdog.

On some runs it triggered CPU usage alerts:
```
7716:W0623 15:38:05.402959 221732864 watcher.cpp:415] osqueryd worker (72976) stopping:
Maximum sustainable CPU utilization limit 1200ms exceeded for 12 seconds
```
And on other runs it triggered memory usage alerts:
```
4431 W0626 07:28:50.868021 147312640 watcher.cpp:424] osqueryd worker (21453) stopping:
Memory limits exceeded: 214020096 bytes (limit is 200MB)
```

For the above logs I used a custom osqueryd branch to be able to print
more information: https://github.com/osquery/osquery/pull/8070

The metrics for the old query were CPU usage: ~4521 ms
```
435:level=warn ts=2023-06-26T09:58:29.665712Z query=fleet_policy_query_1233 queryTime=4521 memory=12226560 msg="distributed query performance is excessive" hostID=308 platform=darwin
```
With the new query, CPU usage: ~210 ms.
```
23893:level=debug ts=2023-06-26T18:06:08.242456Z query=fleet_policy_query_1233 queryTime=210 msg=stats memory=0 hostID=308 platform=darwin
```
Basically a ~20x improvement.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- ~[ ] Added/updated tests~
- [X] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-06-27 11:06:26 -03:00
Gabriel Hernandez
792e9c7cd1
turn on/off windows mdm from the fleet UI (#12497)
relates to #12258

Implements turning on and off windows MDM from the Fleet UI.

**On UI:**


![image](https://github.com/fleetdm/fleet/assets/1153709/2cb0e1b4-1b87-421e-b9c0-899d12e0f463)


![image](https://github.com/fleetdm/fleet/assets/1153709/e26453cc-0467-446e-975c-dbb2293b7199)

**Off UI:**


![image](https://github.com/fleetdm/fleet/assets/1153709/cd4c9b8f-571b-4b01-9be4-322154a5c954)


![image](https://github.com/fleetdm/fleet/assets/1153709/757d0b23-9e1b-45bf-b84b-82b079dd0ccc)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-06-26 17:54:34 +01:00
Martin Angers
ca02abb660
Trigger Windows MDM host enrollment on device when notified that it is enabled (#12426) 2023-06-26 12:13:17 -04:00
Martin Angers
8b95155ae2
Add mdm_enabled field to response of PATCH /config (#12498) 2023-06-26 09:16:42 -04:00
Jacob Shandling
2855bc8f7f
ChromeOS privacy_preferences table (#12441)
## Addresses #11037 

### Implement the `privacy_preferences` table for the Fleetd Chrome
extension. Columns correspond to the available properties of
[`chrome.privacy`](https://developer.chrome.com/docs/extensions/reference/privacy/).

Chrome on mac:
<img width="816" alt="Screenshot 2023-06-23 at 11 55 21 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/a4700749-6325-442e-acf2-c14b1c9adf8f">

Chromebook with enterprise access (actual use case):
![Image from
iOS](https://github.com/fleetdm/fleet/assets/61553566/93f2243d-357a-4d85-bd20-0aebd178388c)

* Chromebook w/o enterprise access: as you can see, sometimes certain
APIs are not available - this error occurs because the expected API
object that would have a `get` method is actually `undefined` TODO – How
to handle this case given that we want to let errors bubble up to the
level at which Fleet can catch them? Maybe it would be nice to catch
such errors and send them up to the Fleet layer, and still allow the
loop to continue to populate the columns whose APIs _are_ available.
_Decision: catch API errors here to preserve functionality of the
remaining columns_

![IMG_9407](https://github.com/fleetdm/fleet/assets/61553566/7fb26eb4-44e8-43f8-90c0-8b3d718c5ace)

- [x] Changes file
- [x] Manual QA

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-06-23 14:52:16 -07:00
Marcos Oviedo
22bb16bf2e
Pushing initial support for MS-MDE2 Discovery message (#12387)
This PR requires the Windows MDM configuration changes - This will be
updated next week

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [x] Documented any permissions changes
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
2023-06-22 17:31:17 -03:00
gillespi314
dfd16a1ef6
Add transferred hosts to activity feed UI (#12442) 2023-06-22 11:01:42 -05:00
RachelElysia
acf44e5737
Fleet UI: [tiny bug] Fix weird scroll behavior (#12435) 2023-06-22 08:24:57 -07:00
Gabriel Hernandez
69fdbc1949
add better messaging for ABM 400 error (#12425)
relates to #11932

This improves the UI error messaging for AMB 400 errors


![image](https://github.com/fleetdm/fleet/assets/1153709/ffe42a9c-c6a4-4afc-8d52-feaa78967b31)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- [ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2023-06-22 15:08:21 +01:00
Juan Fernandez
0c172c85c3
SSO Metadata URL can only be https/http (#12388)
When setting up SSO, validate that the Metadata URL has the proper scheme.
2023-06-22 08:17:37 -04:00
Juan Fernandez
d70ae633c0
Return proper status code if SMTP conf is invalid (#12389)
When setting up SMTP return the proper status code if config is invalid.
2023-06-21 14:40:26 -04:00
Juan Fernandez
d08cc18111
Don't analyze non-windows OS using the MSRC scanner (#12421)
Don't analyze non-windows OS using the MSRC scanner
2023-06-21 14:19:55 -04:00
gillespi314
8cc7d38300
Mark "verifying" or "verified" MDM profiles as "failed" if osquery cannot confirm they are installed (#12414) 2023-06-21 13:00:49 -05:00
RachelElysia
54e811f44f
Fleet UI: [tiny bug] See software search and vuln dropdown when no vuln software (#12412) 2023-06-21 09:15:25 -04:00
RachelElysia
65bca34825
Fleet UI: [tiny bug] Copy message (#12411) 2023-06-21 09:14:47 -04:00
Martin Angers
1c249b60da
Add support to configure and enable Windows MDM, notify elegible hosts (#12340) 2023-06-20 14:06:45 -04:00
RachelElysia
2c45d25ad3
Fleet UI: Empty software SVG update (effort to fix broken image in Sandbox) (#12378) 2023-06-19 15:41:04 -04:00
Martin Angers
96aec85a0a
Add mechanism to force read from primary DB, use it for puppet matching (#12396) 2023-06-19 13:55:15 -04:00
RachelElysia
2efb48ee0c
Fleet UI: Clean up dashboard loading state (#12395) 2023-06-19 12:08:33 -04:00
RachelElysia
39a60e037e
Fleet UI: Variable Fleet URL for ChromeOS extension (#12393) 2023-06-19 11:28:11 -04:00
RachelElysia
eefd81233f
Fleet UI: Hiding tables and columns from the UI if they are set to hidden (#12298) 2023-06-16 11:38:52 -04:00
Lucas Manuel Rodriguez
bac309c978
Provide feedback to user in fleetctl login when using env vars (#12371)
Issue reported by @jarodreyes.

The user was not informed that `fleetctl login` was using the PASSWORD
environment variable:

`main`:
```sh
export PASSWORD=wrong

fleetctl login
Log in using the standard Fleet credentials.
Email: a@b.c
Error: Login failed: login received status 401 Authentication failed: Authentication failed
```
And with the changes on this PR:
```
export PASSWORD=wrong

fleetctl login
Log in using the standard Fleet credentials.
Email: a@b.c
Using value of environment variable $PASSWORD as password.
Error: Login failed: login received status 401 Authentication failed: Authentication failed
```
2023-06-16 11:42:04 -03:00
Juan Fernandez
55d56ba2db
If the fleet/forgot_password endpoint is rate limited, it should return the proper status code (#12323)
Return proper HTTP status code if endpoint is rate limited.
2023-06-15 15:41:04 -04:00
Juan Fernandez
7226b7f087
Warnings in fleetctl should use Stderr not Stdout (#12316)
Fixed issue were the expired license banner was being sent to Stdout instead of Stderr
2023-06-15 13:13:41 -04:00
Juan Fernandez
e7ded8d0c8
When authorizing users on the PolicySpec endpoint, return proper status code if team not found (#12335)
Return proper status code on policy spec endpoint if team not found.
2023-06-15 12:46:54 -04:00
gillespi314
87fe00db71
Create new Fleet osquery extension table to read escrowed FileVault key (#12198) 2023-06-15 10:23:59 -05:00
RachelElysia
adee3fb447
Fleet UI: [Released styling bug] Fix setup icon pushed off setup steps (#12318) 2023-06-14 08:52:31 -04:00
Martin Angers
09d2ccd009
Add Windows MDM feature flag environment variable (#12306) 2023-06-14 08:44:42 -04:00
Martin Angers
68fa60c54d
Add a transferred_hosts activity when hosts are transferred to a new team (#12287) 2023-06-14 08:15:05 -04:00
Luke Heath
55387eb189
Prepare v4.33.0 (#12302) 2023-06-12 20:35:28 -05:00
RachelElysia
215331cd08
Fleet UI: Fix released bug where deleting multiple pages of hosts only deleted first 50 (#12247) 2023-06-09 12:56:09 -04:00
Juan Fernandez
98d9f1b068
If user is a global/team observer/observer+, 'teams' endpoints should not include secrets (#12216)
Fixed auth. issue with Obs/Obs+
2023-06-08 17:30:34 -04:00
Jacob Shandling
1c18765dfa
UI: Security patch (#12229)
## Addresses
[confidential/2940](https://github.com/fleetdm/confidential/issues/2940)

Patched a potential security issue in UI

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-06-08 13:13:27 -04:00
Roberto Dip
ba68082543
return a 4xx error if a SSO session is not found (#12211)
for #12113
2023-06-07 21:12:44 -03:00
Roberto Dip
ab9ac28538
upgrade go version to 1.19.10 (#12187)
for #12177
2023-06-07 17:59:30 -03:00
RachelElysia
13e3d8b9b2
Fleet UI: Click dropdown label option again to deselect on manage host table (#12202) 2023-06-07 16:47:10 -04:00
Lucas Manuel Rodriguez
2a532ede94
Do not return empty SSO and SMTP settings for non-global-admins (#12180)
#11266

PS: I first attempted a serialization trick by introducing a new
`appConfigResponse` and implementing `json.Marshal` to exclude these
fields but it was too hacky and hard to maintain moving forward, so I'm
bitting the bullet now. Happy to hear other ideas.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-06-07 16:06:36 -03:00
Martin Angers
f390055847
Fix table formatting of fleetctl get mdm-command-results output (#12197) 2023-06-07 14:35:48 -04:00
Martin Angers
68ddaafac0
Fix bug preventing gitops role from fleetctl applying macos setup assistant (and bootstrap package) (#12193) 2023-06-07 13:29:36 -04:00
RachelElysia
95e7b9eda3
Fleet UI: Improvements to Sandbox mode styling (#12195) 2023-06-07 12:00:02 -04:00
Jacob Shandling
9c44ce040f
UI: Add ChromeOS supporting features to the ManageHosts page (#12185)
## Addresses #11828 
- [x] Add ChromeOS platform filter
- [x] Increase dropdown widths to 180px for screen >1100px of:
   - [x] platform dropdown
   - [x] Labels dropdown (for consistency)
- [x] Add new null empty cell value “Not supported” for Chromebooks
- [x] Apply to the following columns:
    - [x] Disk space available
    - [x] MDM status
    - [x] MDM server URL
    - [x] Last restarted
- [x] Fix a misaligned icon in the labels dropdown, other small fixes
 
<img width="1184" alt="Screenshot 2023-06-06 at 7 09 26 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/ee6fb72c-f66e-44a4-a321-8eaefff3b70b">


# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-06-06 19:37:25 -04:00
Roberto Dip
6617938393
ensure we send post-enrollment commands if a DEP device is enrolling (#12159)
for #11257, h/t to @mna for the idea of resetting `token_update_tally`.

this is to cover scenarios where a host might be re-enrolling (eg: the
device has been wiped) but we don't know about it.

since `TokenUpdate` might be called multiple times during the lifecycle
of an MDM enrollment, we add a check on the value of
`nano_enrollments.token_update_tally`. For the scenarios described
above, the tally is still `> 0` even thought the host is enrolling for
the first time.

to mitigate this, we reset its value to 0 when we receive an
`Authenticate` message (which only happens only per enrollment)

I set the value to `0` because it's incremented to `current_value+1` by
nanomdm before calling our handler.
2023-06-06 20:18:14 -03:00
Jacob Shandling
7da0503ada
UI: Add ChromeOS UI elements to the Host Details page (#12093)
## Addresses #11830 
[Demo with simulated Chromebook
host](https://loom.com/share/5d6dda3a9c4a47bfbf1aadc900e1750a)
- Add features for ChromeOS
- Address some technical debt around this area
<img width="441" alt="agent options with tooltip and hardcoded values"
src="https://github.com/fleetdm/fleet/assets/61553566/0e0448f6-a896-4804-9b65-8eb289798c55">
<img width="1150" alt="disabled Schedule tab for chromeOS"
src="https://github.com/fleetdm/fleet/assets/61553566/ce6963ca-643a-45d1-9e68-6699eaa3a8f6">
<img width="411" alt="disk encryption"
src="https://github.com/fleetdm/fleet/assets/61553566/df486abd-bca6-43d1-92ab-8f6ea33dfb39">
<img width="1118" alt="no disk space graph"
src="https://github.com/fleetdm/fleet/assets/61553566/91823896-c824-40f1-ac15-6c8197aedd6b">

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-06-06 17:30:51 -04:00
Jacob Shandling
5cc6e5e445
UI: Add ChromeOS features to the Dashboard page (#12105)
## Addresses #11825 

- [x] Add ChromeOS to Dashboard page: <img width="1365" alt="Screenshot
2023-06-02 at 4 01 12 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/e846c4b6-5fcb-4847-af05-67b2237ada39">
- [x] Add to platforms dropdown, confirm order of platform options, add
route
    - [x] Hosts summary card
- [x] Add responsiveness for <980px <img width="952" alt="Screenshot
2023-06-02 at 4 02 44 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/93662957-c590-40e0-876d-6ce4adabad2b">
- [x] TODO: Confirm label number of chrome hosts label - ask Juan on
[this issue](https://github.com/fleetdm/fleet/issues/11829) - needed to
call an API to get this id
    - [x] Missing hosts card (didn’t need any changes)
    - [x] Low disk space hosts card (Not supported)
    - [x] Operating systems card

**Note for reviewers:** There is an API call happening from the
HostsSummary component to get the id for the ChromeOS label needed for
the URL to the filtered manage hosts page. This feature working properly
depends on the response from that endpoint, which is WIP. UPDATE 6/5 -
the endpoint is now working and being called correctly, though the id
being returned is WIP (backend). No need to replace anything to test.


## Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/` 
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-06-06 16:44:21 -04:00
Jacob Shandling
cecb96e828
Live query performance improvements (#11995)
## Addresses #11856 

Improve performance of the rendering of live query results by:
- rendering the table on a set interval instead of with each new result
- preventing redundant rerenders of various sorts



Partial run, with memory leak:
<img width="2552" alt="partial run with memory leak, after smaller
optimizations, before debouncing queryResults"
src="https://github.com/fleetdm/fleet/assets/61553566/5288bffb-6940-43da-9083-59adb4a25916">

Full run after debounce, no memory leak (10x improvement of max JS heap
size):
<img width="2559" alt="full run after debounce, no memory leak"
src="https://github.com/fleetdm/fleet/assets/61553566/be056610-e7a5-4289-a433-1070cf016e83">

**NOTE** - there are further optimizations to try on this page, and the
debounce interval can potentially be shortened to improve UX. In
experimenting with that, it's not immediately clear what a good balance
of UX / performance is. Since the customer seems keen to solve this, I
think we should merge as-is and send them a demo build to confirm this
fixes their problem, then iterate once they've confirmed it does.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
Co-authored-by: Sarah Gillespie <sarah@fleetdm.com>
2023-06-06 16:23:09 -04:00
Martin Angers
f27fcddd55
Prevent clearing macos updates settings when applying/modifying a team without those settings (#12160) 2023-06-06 14:31:33 -04:00
Roberto Dip
3127c9fffd
handle "modified" and "deleted" operation types in DEP sync (#12150)
for #10605, this modifies the cron used to ping the list/sync devices
API from ABM to account for the "deleted" and "modified" operation
types.

We know that:

1. Sometimes, Apple sends a "modified" operation type when a device's
MDM server is reassigned in ABM, up until now, we were ignoring these
devices.
2. Devices that are no longer assigned to Fleet in ABM can't be
migrated.
2023-06-06 15:04:59 -03:00
Gabriel Hernandez
2c9c9b4f0e
add verified status to UI for profile statuses (#11886)
relates to #11238

This implements the Verified status for the profile statute on the macOS
settings pages and the Host Details and My Device pages.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2023-06-06 15:52:10 +01:00
Juan Fernandez
1eb8bb800e
Bug: spec/labels endpoint should include the id (#12135)
spec/labels endpoint should include the ID prop
2023-06-06 09:11:03 -04:00
Juan Fernandez
90197d83ae
Bug 11525: Fixed navigation issues on 'My Device' page (#12102)
Fixed navigation on DeviceUserPage Tab components.
2023-06-06 06:46:46 -04:00
Martin Angers
9f064acd2e
Match pre-assigned profiles to a team (or create one) and assign host to team (#12127) 2023-06-05 15:08:21 -04:00
gillespi314
372c77ff23
Add backend for verified MDM profiles (#12078) 2023-06-05 12:05:28 -05:00
Martin Angers
48774876ea
Move post-DEP-enrollment processing to a worker job (#12017) 2023-06-05 11:58:23 -04:00
Roberto Dip
3fa809e167
strip query strings from MDM server_url during ingestion (#12107)
for #12106
2023-06-05 12:53:36 -03:00
gillespi314
b08881b0d9
Added "Action required" status for disk encryption MDM profile in UI for host details and device user pages (#11970) 2023-06-05 10:52:57 -05:00
RachelElysia
9ecf9dc09a
Fleet UI: Update icons (6 icons only) (#11907) 2023-06-02 09:48:17 -04:00
Martin Angers
2f59a8cde1
MDM docs: Instructions for viewing recent MDM commands (#12006)
- Add section for viewing recent MDM commands using fleetctl get mdm-commands
- Add example output for fleetctl get mdm-commands and fleetctl get mdm-command-results
2023-06-02 09:46:12 -04:00
RachelElysia
695fa7d1b0
Fleet UI: Activity dashed lines to be variable length using grids (#12101) 2023-06-02 09:43:53 -04:00
RachelElysia
de57747045
Fleet UI: Fix jumpy tabs (#11994) 2023-06-02 09:30:41 -04:00
Gabriel Hernandez
75212d81d4
Feat UI add end user auth to controls page (#11991)
relates to #11002

Implements the UI for mdm macos setup end user authentication page.


![image](https://github.com/fleetdm/fleet/assets/1153709/1af6c5d7-99d0-401d-9938-a78617eca817)


![image](https://github.com/fleetdm/fleet/assets/1153709/8f0ed8cc-63f5-425b-8f3a-f2f83ed018f7)



- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2023-06-02 14:14:39 +01:00
Lucas Manuel Rodriguez
2d21b2be29
Provide more feedback to the user when there's a Redis connection issue when running live queries (#11947)
This could help future users to detect this issue: #10957
It also adds an error log in Fleet that prints the actual error.

The error is displayed if I kill Redis during a live session or if I set
`client-output-buffer-limit` to something real low like `CONFIG SET
"client-output-buffer-limit" "pubsub 100kb 50kb 60"`:
![Screenshot 2023-05-25 at 09 08
08](https://github.com/fleetdm/fleet/assets/2073526/f021a77a-3a22-4b48-8073-bae9c6e21a11)

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- [X] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- ~[ ] Added/updated tests~
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-06-01 16:11:55 -03:00
Roberto Dip
46ee3af436
fix issues with MDM migration modal (#12059)
For issues #12003 and #12051

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-05-31 17:25:22 -03:00
Martin Angers
4322a28f5a
Implement preassign endpoint as first step to match profiles and hosts to teams (#12046) 2023-05-31 09:24:22 -04:00
Juan Fernandez
43ab81ee11
Feature 11829: Tailor host table response to ChromeOS (#12002)
Updated ingestion logic and fixed ChromeOS virtual tables to accommodate the requested UI changes.
2023-05-30 22:13:42 -04:00
RachelElysia
bc8d89f804
Fleet UI: Add ChromeOS hosts (#11984) 2023-05-30 19:17:14 -04:00
Lucas Manuel Rodriguez
33d61044b5
Change role of existing users only if SSO attributes are present in the SAMLResponse (#11966)
#10784

The removal of the now deprecated `sso_settings.enable_jit_role_sync`
config will be tackled in: #10688.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-05-30 17:49:59 -03:00
Jacob Shandling
a6099a9f92
UI: Set sandbox add hosts modal to standard width (#12001)
## Addresses #11993 

**before:**
<img width="730" alt="dc2b128e-a8b2-46ac-a61d-945c04344c02"
src="https://github.com/fleetdm/fleet/assets/61553566/d9366265-5de1-41ef-971c-3c9c02ea986c">

**now:**
<img width="1504" alt="Screenshot 2023-05-26 at 7 26 09 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/f549fe5c-02fc-4216-bb2c-295360da6656">

## Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-05-30 13:47:29 -07:00
Lucas Manuel Rodriguez
6acb567ade
Accept and ignore SSO role attributes with null value (#11959)
#10878

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-05-30 16:57:03 -03:00
Juan Fernandez
f711e60de4
Feature 1183: Updated validation rule for policies platforms (#12004)
Users should be able to create policies that target ChromeOS
2023-05-30 13:57:14 -04:00
Martin Angers
4a077793f5
Return 400 instead of 500 on Apple BM auth error (#11899) 2023-05-29 11:52:42 -04:00
Juan Fernandez
de7377e54f
ChromeOS support for Fleet dashboard (#11953)
- Added built-in label for ChromeOS
- Ingest os_version info from ChromeOS hosts.
2023-05-26 14:32:01 -04:00
gillespi314
5662d2cdcc
Fix UI bug where inherited_page=0 would be incorrectly added to some URLs (#11971) 2023-05-26 11:47:35 -05:00
Juan Fernandez
2d5477266a
Feature 10566: Optimize query used for listing activities (#11708)
- Added index on `created_at` which is the sort key used when loading the log activities widget on the dashboard.
- Refactored query used when loading activities to avoid a full table scan.
2023-05-25 15:50:36 -04:00
Gabriel Hernandez
327205dacc
add better error for manual enroll modal (#11845)
relates to #11376 

adds improved UI for error state of manual enroll mdm modal


![image](https://github.com/fleetdm/fleet/assets/1153709/b7d25661-4049-4f6a-b44b-b8c6558dd046)


- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-05-25 12:26:55 +01:00
Lucas Manuel Rodriguez
6415f062c6
Reduce size of DistributedQueryResult to improve live query performance (#11882)
This was found while working on #10957.

When running a live query, a lot of unused host data is stored in Redis
and sent on every live query result message via websockets. The frontend
and fleetctl just need `id`, `hostname` and `display_name`. (This
becomes worse every time we add new fields to the `Host` struct.)

Sample of one websocket message result when running `SELECT * from
osquery_info;`:

size in `main`: 2234 bytes
```
a["{\"type\":\"result\",\"data\":{\"distributed_query_execution_id\":57,\"host\":
{\"created_at\":\"2023-05-22T12:14:11Z\",\"updated_at\":\"2023-05-23T12:31:51Z\",
\"software_updated_at\":\"0001-01-01T00:00:00Z\",\"id\":106,\"detail_updated_at\":\"2023-05-23T11:50:04Z\",
\"label_updated_at\":\"2023-05-23T11:50:04Z\",\"policy_updated_at\":\"1970-01-02T00:00:00Z\",
\"last_enrolled_at\":\"2023-05-22T12:14:12Z\",
\"seen_time\":\"2023-05-23T09:52:23.876311-03:00\",\"refetch_requested\":false,
\"hostname\":\"lucass-macbook-pro.local\",\"uuid\":\"BD4DFA10-E334-41D9-8136-D2163A8FE588\",\"platform\":\"darwin\",\"osquery_version\":\"5.8.2\",\"os_version\":\"macOS 13.3.1\",\"build\":\"22E261\",\"platform_like\":\"darwin\",\"code_name\":\"\",
\"uptime\":91125000000000,\"memory\":34359738368,\"cpu_type\":\"x86_64h\",\"cpu_subtype\":\"Intel x86-64h Haswell\",\"cpu_brand\":\"Intel(R) Core(TM) i7-1068NG7 CPU @ 2.30GHz\",\"cpu_physical_cores\":4,\"cpu_logical_cores\":8,\"hardware_vendor\":\"Apple Inc.\",\"hardware_model\":\"MacBookPro16,2\",\"hardware_version\":\"1.0\",
\"hardware_serial\":\"0DPQR4HMD1FZ\",
\"computer_name\":\"Lucas’s MacBook Pro\",\"public_ip\":\"\",
\"primary_ip\":\"192.168.0.230\",\"primary_mac\":\"68:2f:67:8e:b6:1f\",
\"distributed_interval\":1,\"config_tls_refresh\":60,\"logger_tls_period\":10,\"team_id\":null,
\"pack_stats\":null,\"team_name\":null,
\"gigs_disk_space_available\":386.23,\"percent_disk_space_available\":40,
\"issues\":{\"total_issues_count\":0,\"failing_policies_count\":0},
\"mdm\":{\"enrollment_status\":null,\"server_url\":null,\"name\":\"\",\"encryption_key_available\":false},
\"status\":\"online\",\"display_text\":\"lucass-macbook-pro.local\",\"display_name\":\"Lucas’s MacBook Pro\"},
\"rows\":[{\"build_distro\":\"10.14\",\"build_platform\":\"darwin\",
\"config_hash\":\"b7ee9363a7c686e76e99ffb122e9c5241a791e69\",\"config_valid\":\"1\",
\"extensions\":\"active\",\"host_display_name\":\"Lucas’s MacBook Pro\",
\"host_hostname\":\"lucass-macbook-pro.local\",\"instance_id\":\"cde5de81-344b-4c76-b1c5-dae964fdd4f2\",\"pid\":\"8370\",\"platform_mask\":\"21\",\"start_time\":\"1684757652\",
\"uuid\":\"BD4DFA10-E334-41D9-8136-D2163A8FE588\",
\"version\":\"5.8.2\",\"watcher\":\"8364\"}],\"error\":null}}"]
```

vs. size of the message result on this branch: 675 bytes
```
a["{\"type\":\"result\",\"data\":{\"distributed_query_execution_id\":59,
\"host\":{\"id\":106,\"hostname\":\"lucass-macbook-pro.local\",
\"display_name\":\"Lucas’s MacBook Pro\"},
\"rows\":[{\"build_distro\":\"10.14\",\"build_platform\":\"darwin\",
\"config_hash\":\"f80dee827635db39077a458243379b3ad63311fd\",
\"config_valid\":\"1\",\"extensions\":\"active\",\"host_display_name\":\"Lucas’s MacBook Pro\",
\"host_hostname\":\"lucass-macbook-pro.local\",
\"instance_id\":\"cde5de81-344b-4c76-b1c5-dae964fdd4f2\",\"pid\":\"8370\",\"platform_mask\":\"21\",
\"start_time\":\"1684757652\",\"uuid\":\"BD4DFA10-E334-41D9-8136-D2163A8FE588\",\"version\":\"5.8.2\",
\"watcher\":\"8364\"}]}}"]
```

Manual tests included running with an old fleetctl running with a new
fleet server, and vice-versa, a new fleetctl running against an old
fleet server.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-05-25 08:11:53 -03:00
gillespi314
3e3880b62d
Modify GET /mdm/apple/profiles API endpoint to return empty array instead of null when results set is empty (#11904) 2023-05-24 18:56:39 -05:00
Luke Heath
9055564b0c
Prepare v4.32.0 (#11908) 2023-05-24 17:31:20 -05:00
Gabriel Hernandez
e500a4f65d
Fix icon not being aligned properly on Host details/ My device page. (#11919) 2023-05-24 09:10:07 -05:00
Jacob Shandling
c733aca3f2
UI: Multiple team oberver plus bug (#11897) 2023-05-23 18:10:52 -05:00
Gabriel Hernandez
26ea17e4fc
add page header for macos updates page (#11796) 2023-05-19 17:57:25 +01:00
RachelElysia
f3e44b8e1a
Fleet UI: Policy description now multi-line (#11785) 2023-05-19 09:06:10 -04:00
Jacob Shandling
204aa49ab9
UI: Title Case bug (#11786)
## Addresses #11737

- Write function to enforce Fleet sentence-casing standards
- Apply it to this bug

<img width="642" alt="Screenshot 2023-05-18 at 12 43 20 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/670f4f8d-1c23-4609-bb23-c38038e9bbd8">

*NOTE - this (the host details) endpoint currently returns label names
in Sentence Case – this solution deals with only the UI presentation,
but it might be worth changing the API response in the future:
<img width="369" alt="Screenshot 2023-05-18 at 12 48 58 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/27236524-9c0a-4818-8a74-f445b5765d94">

## Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` 
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-05-18 13:40:04 -07:00
Jacob Shandling
0c13d8f2a9
UI: Fix bug with policy automations (#11781)
## Addresses #11714

- Allow saving policy automations to Ticket integrations without
defining a webhook URL
https://www.loom.com/share/208169b6081846809dc170fcfb43f689

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-05-18 12:33:26 -07:00
Gabriel Hernandez
59fa93d5c6
add better loading UI for disk encryption page (#11762)
relates to #11048

improves the loading UI for the disk encryption page. The aggregate
profile summary no longer pops in and pushed down disk encryption
section.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-05-18 16:59:14 +01:00
Roberto Dip
8e532a5e76
pre-populate username/fullname during account creation (#11557)
Related to #10744, this pre-populates and disables the username/fullname
fields.

https://user-images.githubusercontent.com/4419992/236854781-ac67ee28-c19c-4130-a5e6-2872220501b5.mov


# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-05-18 12:50:00 -03:00
Benjamin Edwards
f2ffb88cc3
wildcard host search support (#11303)
relates to #9996 

Added support for wildcard search on host search.

say for example you have the following hosts:

```
+------------------+
|hostname          |
+------------------+
|Molly‘s MacbookPro|
|Molly's MacbookPro|
|Molly‘s MacbookPro|
|Molly❛s MacbookPro|
|Molly❜s MacbookPro|
|Alex's MacbookPro |
+------------------+
```

searching for `Molly's` yields just the single host, but searching for
`Molly❜s` will perform a broader wildcard search using the literal `_`
character to match any character _in that position_.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Added/updated tests
2023-05-18 10:01:57 -04:00
RachelElysia
f6ccad3568
Fleet UI: New filepath column on host details > software table (#11609) 2023-05-18 09:35:58 -04:00
Juan Fernandez
827c4a7c33
Feature 8058: Added resource.syso metadata file (#10783)
Addresses https://github.com/fleetdm/fleet/issues/8058, https://github.com/fleetdm/fleet/issues/11012 and https://github.com/fleetdm/fleet/issues/11013

This PR adds a new VERSIONINFO metadata file using the
https://github.com/josephspurrier/goversioninfo library.
2023-05-17 18:53:25 -03:00
RachelElysia
452b385c12
Fleet UI: Sort (and bookmark) Manage Policies tables by failing host count (#11735) 2023-05-17 17:25:57 -04:00
Juan Fernandez
009a87d33e
Feature 10196: Add filepath to end-points and third party integrations (#11285)
Adds the software installed path property to the proper end-points and third party integrations (webhook, Zendesk and Jira).
2023-05-17 16:53:15 -04:00
Martin Angers
3f9eccc7f8
Refetch host mdm enrollment status until unenrolled (#11740) 2023-05-17 15:52:45 -04:00
Jacob Shandling
f9ac557c8e
UI: Make all Modal widths consistent (#11722)
## Addresses #11356

Images of 3 fixed modals referenced in the issue:
<img width="1235" alt="Screenshot 2023-05-12 at 4 11 52 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/098081c7-15d4-4009-92a0-7a2e14ffaab1">
<img width="1235" alt="Screenshot 2023-05-12 at 4 12 50 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/7d0f268d-f2dc-4686-a64d-94e28a94c717">
<img width="1235" alt="Screenshot 2023-05-12 at 4 13 26 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/d486b005-1344-4656-adec-c4929332816b">

## Implemented:
- [x] Updated global modal styles for consistency
- [x] Add optional "width" prop to `Modal`
- [x] Misc cleanup:
  - [x]  Restore missing padding from inverse-alert buttons
  - [x]  Improve naming, lots of cleanup
  - [x] More coming in separate PR
- [x] Check each of the following modals, define `width` where
necessary:
  - [x]  Add hosts
  - [x]  EnrollSecret
    - [x] Also fix misaligned icons  
  - [x]  SecretEditor
  - [x]  DeleteSecret
  - [x]  ShowQuery
  - [x]  AddIntegration
  - [x]  DeleteIntegration
  - [x]  EditIntegration
  - [x]  EditTeam
  - [x]  RequestCSR
  - [x]  HostStatusWebhook
  - [x]  CreateTeam
  - [x]  DeleteTeam
  - [x]  EditTeam
  - [x]  AddMember
  - [x]  RemoveMember
  - [x]  CreateUser
  - [x]  DeleteUser
  - [x]  EditUser
    - [x] Also fix randomly shorter 'Password' field  
  - [x]  ResetPassword
  - [x]  ResetSessions
  - [x]  WelcomeHost
  - [x]  DeletHost
  - [x]  TransferHost
  - [x]  POlicyDetails
  - [x]  AutoEnrollMdm
  - [x]  Info
  - [x]  ManualEnrollMdm
  - [x]  ResetKey
  - [x]  BootstrapPackage
  - [x]  DiskEncryption
  - [x]  OSPOlicy
  - [x]  SelectQuery
  - [x]  UnenrollMdm
  - [x]  MacSettings
  - [x]  DeleteLabel
  - [x]  EditCOlumns
  -  WIP, cannot QA yet (cc @ghernandez345):
      - DeleteScript
      - RerunScript
  - [x]  DeleteProfile
  - [x]  DeletePackage - allow to conform to default "m" width, 650px
  - [x]  PackQueryEditor - allow to conform to default "m" width
  - [x]  RemovePackQuery - allow to conform to default "m" width
  - [x]  DeletePack - allow to conform to default "m" width
  - [x]  AddPolicy 
  - [x]  DeletePolicy - allow to conform to default "m" width
- [x] NewPolicy (now "SaveNewPolicyModal") - allow to conform to default
"m" width
  - [x]  DeleteQuery
  - [x]  NewQuery - allow to conform to default "m" width
  - [x]  PreviewData
  - [x]  RemoveScheduledQuery
  - [x]  ScheduleEditor
  - [x]  UserSettingsPage (aka "get API token")
  - [x]  2 x ManageAutomations –  set to large
  - [x]  2 x PreviewPayload - allow to conform to default "m" width 
  - [x]  2 x PreviewTicket - same as ManageAutomations

## Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/` 
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-05-17 10:07:38 -07:00
Gabriel Hernandez
0491c730ac
Feat UI mdm migration (#11732)
relates to #11669

Implements the UI for the end-user migration workflow. This includes:

UI for migration form:


![image](https://github.com/fleetdm/fleet/assets/1153709/5f2959a3-efd9-4a4a-9aef-83025d5e23a4)

Preview payload modal:


![image](https://github.com/fleetdm/fleet/assets/1153709/aee580f4-c570-447f-8a99-c7f2a8f3dab8)

Mdm setup state:


![image](https://github.com/fleetdm/fleet/assets/1153709/09b8210a-b4e6-4407-86de-fd439de0841e)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality.
2023-05-17 17:32:55 +01:00
gillespi314
a7f02355fd
Add device-authenticated endpoint to trigger MDM migration webhook request (#11724) 2023-05-17 09:16:26 -05:00
Gabriel Hernandez
37ac5db5e8
implement UI for automatic enrollment section in integrations (#11642)
relates to #10745

Implements the UI for automatic enrollment. This includes:

**moving ABM section into this page**


![image](https://github.com/fleetdm/fleet/assets/1153709/f819d90d-0a4b-4c42-9a55-f825c027577e)

**implementing end user authentication**


![image](https://github.com/fleetdm/fleet/assets/1153709/7a326606-5964-4004-a0c9-ac16f65cebdc)

**implement uploading EULA pdf**


![image](https://github.com/fleetdm/fleet/assets/1153709/22710262-e9a3-4992-ab49-287ea53bf878)


![image](https://github.com/fleetdm/fleet/assets/1153709/ff83de9e-8066-4179-a648-58f75516601d)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2023-05-17 11:18:31 +01:00
RachelElysia
cdf5843e76
Fleet UI Bug fix: Team admin/maintainer do not see save button for global policies (#11673) 2023-05-16 13:18:29 -04:00
Martin Angers
7b1b392627
Implement worker jobs that update/re-assign setup assistants on changes (#11630) 2023-05-15 14:06:09 -04:00
gillespi314
ceeb4c1ed5
Add mdm.macos_migration to app config endpoints (#11694) 2023-05-15 11:50:07 -05:00
RachelElysia
9e8698c779
CIS - WIN10 - Fix 3 policies with false positive bugs (#11668) 2023-05-12 10:57:09 -04:00
Roberto Dip
653bbec5f1
cli: try to infer the bootstrap package name from the URL too (#11571)
#11570
2023-05-11 10:36:28 -03:00
Luke Heath
4a1d45de17
Prepare v4.31.1 (#11624) 2023-05-10 17:33:36 -05:00
gillespi314
a9584dc32f
Allow end user authentication during automatic MDM enrollment to be enabled on a per-team basis (#11566) 2023-05-10 15:22:08 -05:00
RachelElysia
687c037c77
Fleet UI: Grey out unusable select all queries checkbox (#11535) 2023-05-10 09:58:46 -04:00
Roberto Dip
e635eb19fd
use writer for database reads on TokenUpdate (#11605)
Related to #11604
2023-05-10 09:40:11 -03:00
Jacob Shandling
6b70d11bc6
UI: Login page bugs (#11520)
## Addresses #11338 

-  Validate emails on login page
- Fix jumping error state for no email provided ("Email field must be
completed")
- Fix jumping error state for password field
- Fix jumping error state for Forgot password > email field

https://www.loom.com/share/92a238fcd2614d6e8d2655d571aa2757

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-05-09 10:12:29 -07:00
Martin Angers
70f18dda4a
Apply custom setup assistants (if present) when ingesting new devices (#11563) 2023-05-09 13:00:18 -04:00
Sharon Katz
487f8b6e1f
#10709 duplicate Windows 10 Pro OS name (#11187) 2023-05-09 12:33:36 -04:00
RachelElysia
affd32a62b
Fleet UI: Manage queries page URL params (#11485) 2023-05-08 09:17:19 -04:00
Roberto Dip
33d788caed
add support for displaying EULA during ADE/DEP (#11532)
Related to #11350 and the sub-tasks for stuff that happens in setup
assistant: #11477 and #11479

This adds back-end and UI logic to show an EULA during DEP enrollment if
one was uploaded via the UI, if an EULA wasn't uploaded, we just proceed
to enroll the device right after authentication.


https://user-images.githubusercontent.com/4419992/236316655-282ee74a-5f79-4095-a950-82b77b80a5c0.mov
2023-05-05 14:36:13 -03:00
Gabriel Hernandez
60f55fbbe9
always show profile status aggregate UI on macOS Settings page (#11524)
relates to #11450

This will show the profile status aggregate UI at all times when on the
macOS settings page. This is a change from showing it conditionally.

This also cleans up where some of the requests occur to move it closer
to where it is needed and changing the `MdmProfileStatus` enum to a
union.


- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-05-05 14:44:05 +01:00
RachelElysia
ae0ef2a00f
Fleet UI: Small bug fix tooltip position (#11509) 2023-05-03 13:08:17 -04:00
gillespi314
8fba5b87c7
Revise validation errors for fleetctl mdm run-command (#11464) 2023-05-03 10:56:25 -05:00
Luke Heath
36c3b839c7
Prepare v4.31.0 (#11460) 2023-05-01 16:28:54 -05:00
RachelElysia
146beb0c50
Fleet UI bug fix: Show software card with no vulnerabilities (#11431) 2023-04-28 15:48:34 -04:00
RachelElysia
e7fcb6fbbf
Fleet UI: Hide reset sessions from current user dropdown (#11377) 2023-04-27 11:57:41 -04:00
Jacob Shandling
cb58849d95
Fleet Premium to Sandbox (#11372)
## Addresses #9371 
### Adds a suite of UI logic for premium features in the Sandbox
environment

For reviewer: please review the work for the below 3 substasks, which
are the only remaining subtasks encompassed by this PR that have not yet
passed review individually:
  - #10822 (9)
  - #10823 (10)
  - #10824 (11)

## Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
2023-04-27 08:53:30 -07:00
Gabriel Hernandez
bd9176d67e
UI for bootstrap package flows (#11288)
relates to #10935

This is the UI for all the flows around adding, removing, downloading,
and viewing information about a bootstrap package for fleet mdm. This is
pretty comprehensive but includes:

### Backend

**Update `Get host/id`** to include bootstrap package name

```json
{
  "macos_setup": {
    ...
    "bootstrap_package_name": "test.pkg"
  }
}
```

### Frontend

**UI for ABM not being set up**:


![image](https://user-images.githubusercontent.com/1153709/234018772-3221e27b-50a4-454e-8e9f-b62c9d349010.png)

**UIs for uploading, downloading, and deleting bootstrap package**:


![image](https://user-images.githubusercontent.com/1153709/234017915-871f252f-bf80-4282-9acf-5ebea12c6efa.png)


![image](https://user-images.githubusercontent.com/1153709/234018029-322a5f30-dd22-44e3-b9ae-a4af7acb68b4.png)


![image](https://user-images.githubusercontent.com/1153709/234018163-4b84a2ce-a064-4952-a63d-0c8307391052.png)

**UIs for seeing bootstrap status aggregate data**


![image](https://user-images.githubusercontent.com/1153709/234018107-455d63ab-5b2c-4727-ad20-eef6b269c336.png)

**UIs for filtering hosts by bootstrap status**


![image](https://user-images.githubusercontent.com/1153709/234018334-170fe93a-700e-48eb-b198-2a1cc54d31a7.png)

**UIs for seeing package status on host details and my device page**:


![image](https://user-images.githubusercontent.com/1153709/234018488-7b515db4-1248-4be7-8de3-9b74bb5d4795.png)


![image](https://user-images.githubusercontent.com/1153709/234018525-d653cb2d-9ef9-437e-8eba-141e557f4f39.png)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Roberto Dip <dip.jesusr@gmail.com>
Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
2023-04-27 16:10:41 +01:00
gillespi314
6ec852c97d
Fix UI bugs in team id routing (#11363) 2023-04-27 10:00:16 -05:00
RachelElysia
e774f60838
Fleet UI: Ability to navigate to correct Host details software tab (including sorts, filters, page number) (#11208) 2023-04-27 09:24:02 -04:00
Roberto Dip
a23d208b1d
gate DEP enrollment behind SSO when configured (#11309)
#10739

Co-authored-by: Gabriel Hernandez <ghernandez345@gmail.com>
Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
2023-04-27 09:43:20 -03:00
Gabriel Hernandez
4866bccb3f
Feat UI add verifying status to mdm (#11311) 2023-04-26 19:31:38 +01:00
Jacob Shandling
4d1beef728
Check for "No access" for authenticated routes (#11307)
## Addresses #11188 

When an _already authenticated_ no-access user tries to access any
authenticated routes:
- Log the user out
- Display the 403 'Forbidden' error page

https://www.loom.com/share/358fd5b534984ab9ab40220986a7d094
The user _can_ still log in – see attached issue.

## Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-04-26 10:45:40 -07:00
Lucas Manuel Rodriguez
b9e6a84f24
Filter out non-observer_can_run queries for observers in fleetctl get queries command to match the UI. (#11251)
#11089

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- [X] Documented any permissions changes
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [x] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-04-26 11:38:20 -03:00
Martin Angers
77855a5e1d
Add activities for macOS setup assistant. (#11310) 2023-04-26 10:37:03 -04:00
Martin Angers
582e85c876
Add support for the mdm.macos_setup.macos_setup_assistant key in fleetctl, API (#11296) 2023-04-25 09:36:01 -04:00
gillespi314
a37d138f4b
Migrate MDM status values in datastore and API layers (#11278) 2023-04-24 16:27:15 -05:00
Jacob Shandling
d5c9ae2baf
UI: Initial render whitespace bug (#11159)
## Addresses #11088 
Updated solution:
https://www.loom.com/share/e3ca30bebde54df5b8cbd8cac6d26780
- First refresh displays the bug: a white bar at the top of the page as
the login page loads.
- Second refresh displays the login page with the bug gone
- Navigate at the end to an error page to confirm it is unaffected,
since the initial solution affected the background color of those pages

## Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/` 
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-04-24 11:38:35 -07:00
RachelElysia
3908e63b64
Fleet UI: Manage Host and Manage Software uses URL params as source of truth (#11253) 2023-04-24 09:24:28 -04:00
Juan Fernandez
d353a3deb4
Handle flaky vulnerability tests (#11262)
- Refactored some of the vulnerabilities tests to help with flakiness.
- Don't load NVD assets if local assets have a timestamp of today.
2023-04-21 19:37:29 -04:00
Roberto Dip
ddb5894709
remove unused logic specific to DEP+Okta+ROP (#11261)
In #10338 we introduced logic to gate DEP profiles behind Okta auth
using the ROP flow.

We're not going to use that, and instead we're going to gate profiles
behind SSO, which can be used from multiple providers and supports SSO
(the initial motivation behind the ROP flow was to create a local user
account.)

This removes some of the old code, which was never used in
production/documented for the public to use.

At the moment I'm leaving the `mdm_idp_accounts` table and related
methods untouched, as it's unclear yet if we're going to need a similar
auxiliar table, and I would rather deal with the migrations all at once.
2023-04-21 14:57:52 -03:00
gillespi314
bb2fbbdd38
Add apple_bm_enabled_and_configured to app config responses (#11255) 2023-04-21 11:08:09 -05:00
Lucas Manuel Rodriguez
1603ee0ea8
/api/_version_/fleet/hosts to return bad request instead of server error when passing invalid mdm_enrollment_status (#11242)
#10880

I was not able to reproduce other 500s in `/api/_version_/fleet/hosts`
other than the one fixed in the PR.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-04-19 18:43:15 -03:00
gillespi314
be76e209d9
Update macOS settings status filter and aggregate host counts to incorporate disk encryption key status (#11182) 2023-04-19 10:03:44 -05:00
gillespi314
91b6dbb869
Fix UI bugs for users that are observers on one team and admin or maintainer on another team (#11230) 2023-04-18 15:11:05 -05:00
Jacob Shandling
caab837a5f
UI: Restore visibility of tooltips over software names in hosts > details > software card (#11226)
## Addresses #11217 

<img width="498" alt="Screenshot 2023-04-17 at 1 29 39 PM"
src="https://user-images.githubusercontent.com/61553566/232604991-029316f2-ec8b-4297-b02c-d6e3a80d30c5.png">


## Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`.
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-04-18 13:08:19 -07:00
Jacob Shandling
cb75b975d0
UI: Fix and improve tab experience in setup flow (#11194)
## Addresses #10913 
- Fixes the bug(s) outlined in the issue
- Improves look and feel of the tabbing experience throughout the setup
flow: https://www.loom.com/share/c482317d18314e629b7e5ebab7fd2840

## Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-04-18 10:34:21 -07:00
Martin Angers
c1d3f67e6f
Add fleetctl get mdm-commands command and supporting API endpoint (#11163) 2023-04-17 11:45:16 -04:00
Lucas Manuel Rodriguez
1797bf05c6
Logout to return HTTP 401 if unauthorized (#11190)
#10798

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-04-13 18:37:42 -03:00
Juan Fernandez
c16184a647
Bug 10767: Don't return 500s if enroll secret not found (#11121)
Return proper status code (401) on '/api/fleet/orbit/enroll' if secret is invalid.
2023-04-13 16:16:40 -04:00
Luke Heath
ddb63203ca
Prepare v4.30.1 (#11178) 2023-04-12 17:03:09 -05:00
Lucas Manuel Rodriguez
1ebfbb14eb
New gitops role (#10850)
#8593

This PR adds a new role `gitops` to Fleet.
MDM capabilities for the role coming on a separate PR. We need this
merged ASAP so that we can unblock the UI work for this.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [X] Documented any permissions changes
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [x] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-04-12 16:11:04 -03:00
RachelElysia
45174aa258
Fleet UI: Remove hosts pack information from observers and observer plus (#11141) 2023-04-12 09:37:22 -04:00
RachelElysia
43cbadd7dc
Fleet UI: Fix responsiveness to hid vuln/exploit column at smaller widths (#11132) 2023-04-12 09:35:01 -04:00
gillespi314
ea10d94d55
Fix UI bug that caused "Show inherited policies" button to be incorrectly hidden (#11140) 2023-04-11 15:43:15 -05:00
Jacob Shandling
a7f2b5244d
UI: Remove minwidth to fix account info being cut off (#11119)
## Addresses #10800 

**Before**
<img width="779" alt="Screenshot 2023-04-10 at 5 00 38 PM"
src="https://user-images.githubusercontent.com/61553566/231021958-8df1dd3b-6008-4b73-92bf-dd8facafccb4.png">

**After**
<img width="779" alt="Screenshot 2023-04-10 at 5 01 12 PM"
src="https://user-images.githubusercontent.com/61553566/231021968-51654111-5173-4387-9163-e11bc75560aa.png">


- [x] Changes file added for user-visible changes in `changes/` 
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-04-11 10:21:26 -07:00
Jacob Shandling
9ea390a7da
Teams dropdown bug (#11122)
## Addresses #10756
https://www.loom.com/share/b5ba605b892c4c789a73f05d160819cc
- Set the teams dropdown's max-height to be 66% of the viewport height
- Made a small script to automate creation of an arbitrary number of
teams
- [x] Changes file added for user-visible changes in `changes/` 
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-04-11 10:20:43 -07:00
RachelElysia
83bca0819e
Fleet UI: Responsive nav bar sizing (#11135) 2023-04-11 13:13:28 -04:00
RachelElysia
8ae9738dc5
Fleet UI: Transition fixed to edit user modal (#11128) 2023-04-11 11:45:26 -04:00
Luke Heath
7c6c209d79
Prepare v4.30.0 (#11105) 2023-04-10 15:48:34 -05:00
Zach Wasserman
1a521133f4
Upgrade Go version to 1.19.8 (#11057)
# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
2023-04-07 12:05:22 -07:00
Jacob Shandling
dc7bfd2a35
Select query style bugs (#11043) 2023-04-06 18:45:13 -05:00
Jacob Shandling
40c540a1cc
UI: org logo bug fix (#11018) 2023-04-06 15:12:41 -05:00
Benjamin Edwards
6f836d60cb
add support for AWS SES email backend (#10847) 2023-04-06 13:21:07 -05:00
Luke Heath
0ee49f11fc
Prepare v4.29.1 (#10945) 2023-04-06 11:49:37 -05:00
Zach Wasserman
c6c5e6c61b
More robust version handling for macOS software (#10703)
This should get version numbers for more apps on macOS. Notably,
1Password includes helper apps that were getting vulnerability false
positives because we were not picking up the versions.

Addresses #10702.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-04-06 08:10:06 -07:00
Roberto Dip
40c5bb1c25
install fleetd on DEP enrolled hosts during enrollment (#10971)
https://github.com/fleetdm/fleet/issues/9459
2023-04-05 20:52:26 -03:00
Martin Angers
231b8e4153
Support deletion host-referencing tables that use UUID instead of ID when deleting a host (#11017) 2023-04-05 16:29:28 -04:00
Jacob Shandling
ce77a3e879
UI: Fix issue where org logo may be uncentered on DUP (#10976)
## Addresses #10790

Adjusted markup of the org logo on the device user page to match those
on the host details page, and have them reference the same styles for
consistency (which fixes this bug)

**Before:**
![Screenshot 2023-04-04 at 3 56 03
PM](https://user-images.githubusercontent.com/61553566/229940383-6ba976f3-b9b6-469c-891a-b295aa728d74.png)
**After:**

![DUP-after-logo-fix](https://user-images.githubusercontent.com/61553566/229940417-d468d995-4bec-48f9-8d1a-999bf37eb206.png)

## Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-04-05 11:47:28 -07:00
Lucas Manuel Rodriguez
a756614c1a
New observer_plus role (#10675)
#8593

This PR adds a new role `observer_plus` to Fleet. (The `GitOps` role
will be added on a separate PR.)

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [X] Documented any permissions changes
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-04-05 15:23:49 -03:00
Lucas Manuel Rodriguez
2f38f2e76a
Uninstalling software in a host also updates software table (#10540)
https://github.com/fleetdm/confidential/issues/1968

It's ready for review but I still need to load test this.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- [X] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [X] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-04-05 13:53:43 -03:00
Gabriel Hernandez
50d66479b4
Feat/api/implelment filter disk encryption (#10987)
relates to #9436

Implementation of the API supporting filtering host by disk encryption
status. This adds this through a `macos_settings_disk_encryption` query
param that can be passed to these endpoints:

`GET /hosts`
`GET /hosts/count`
`GET /lables/:id/hosts`



- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-04-05 17:09:23 +01:00
Martin Angers
741a7aa5d0
Finalize MDM commands part 3: add the fleetctl get mdm-command-results command (#10964) 2023-04-05 10:50:36 -04:00
Roberto Dip
337d61c823
automatically install a fleetd configuration profile to relevant teams (#10910)
Related to #9459, this adds logic to the cron to add a
`com.fleetdm.fleetd.config` configuration profile to the
`apple_mdm_configuration_profiles` table.

As noted in the comments, this makes some assumptions:

- This profile will be applied to all hosts in the team (or "no team",)
but it will only be used by hosts that have a fleetd installation
without
  an enroll secret and fleet URL (mainly DEP enrolled hosts).
- Once the profile is applied to a team (or "no team",) it's not removed
if
  AppConfig.MDM.AppleBMDefaultTeam changes, this is to preserve existing
agents using the configuration (mainly ServerURL as EnrollSecret is used
  only during enrollment)
2023-04-04 17:09:20 -03:00
Jacob Shandling
5445559c76
UI: Address tooltip in headers spacing bug (#10792)
## Addresses #9988

* Adjust copy in tooltips to take up less width
* Refactor table headers to take an optional "isLastColumn" property
that is set to true when that header is in the last column.
* Use above property in conjunction with presence of TooltipWrapper as a
value for the header cell to add a class specific to that state.
* Use that class to adjust the location of the tooltip text and the
min-width of the column to avoid the bug.

The 3 states which exhibited this bug, now fixed:
<img width="1496" alt="Screenshot 2023-03-27 at 4 36 01 PM"
src="https://user-images.githubusercontent.com/61553566/228091971-4d5d034d-55c5-4921-955a-4946119f7785.png">
<img width="1496" alt="Screenshot 2023-03-27 at 4 36 12 PM"
src="https://user-images.githubusercontent.com/61553566/228091968-adf90b32-8fd2-45d9-b56d-a64c654151ef.png">
<img width="1496" alt="Screenshot 2023-03-27 at 4 36 24 PM"
src="https://user-images.githubusercontent.com/61553566/228091962-ff626daa-b13d-4093-b34f-de704b820161.png">

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-04-04 10:25:07 -07:00
gillespi314
750d64ccca
Add dontAllowFDEDisable to FileVault config profile template (#10941) 2023-04-03 14:22:41 -05:00
Martin Angers
e0e547f1a2
Finalize MDM commands part 2: implement fleetctl mdm run-command (#10866) 2023-04-03 14:25:49 -04:00
Juan Fernandez
4c2ddba2e4
Clean out-of-date NVD results. (#10514)
Keep the vulnerabilities detected via NVD and stored in the DB in sync. with the results from the NVD vulnerability process.
2023-04-03 13:45:18 -04:00
RachelElysia
93dfa82fa3
Fleet UI: API only badge (#10881) 2023-03-31 09:19:40 -04:00
Roberto Dip
729c1e4042
automatically create DEP JSON profiles if none is set. (#10871)
#9569
2023-03-30 14:25:30 -03:00
Gabriel Hernandez
cb582042cc
Fix disk encryption banner displaying incorrectly on My Device page (#10875)
relates to #10786 

This fixes an issue where users would see the incorrect disk encryption
banners on the my device page. This included a change to the ingestion
logic of the `directIngestDiskEncryptionKeyDarwin` method to take into
account if a host was already being encrypted with filevault locally.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-03-30 17:15:45 +01:00
Roberto Dip
9896d591c4
ensure duplicates are removed before enforcing collations (#10814)
Related to #10787, this tries to find in the tables with High likelihood
described in the issue.

This successfully accounts for unique keys that contain leading/trailing
whitespace and are using a collation with a pad attribute set to `NO
PAD` (considers whitespace as any other character instead of ignoring
it)

I haven't found a way to successfully detect the same scenario for
special unicode characters, for example:

```
mysql> SELECT TABLE_NAME, TABLE_COLLATION FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'software';
+------------+--------------------+
| TABLE_NAME | TABLE_COLLATION    |
+------------+--------------------+
| software   | utf8mb4_general_ci |
+------------+--------------------+
1 row in set (0.01 sec)

mysql> select vendor COLLATE utf8mb4_unicode_ci from software where name = 'zchunk-libs' GROUP BY vendor COLLATE utf8mb4_unicode_ci;
+-----------------------------------+
| vendor COLLATE utf8mb4_unicode_ci |
+-----------------------------------+
| vendor                            |
| vendor?                           |
+-----------------------------------+
2 rows in set (0.01 sec)

mysql> ALTER TABLE `software` CONVERT TO CHARACTER SET `utf8mb4` COLLATE `utf8mb4_unicode_ci`;
ERROR 1062 (23000): Duplicate entry 'zchunk-libs-1.2.1-rpm_packages--vendor\2007-x86_64' for key 'unq_name'
```
> **Note** that `?`  in "vendor?" is an unicode character
2023-03-29 13:31:24 -03:00
Martin Angers
0e2c9bb873
finalize mdm commands part 1: support fleetctl get hosts --mdm and --mdm-pending (#10796) 2023-03-29 08:30:49 -04:00
Juan Fernandez
aecc2fed75
Feature 9834: Add published date to vulnerability object (#10434)
This only applies to Premium users, we want to show the vulnerabilities' published date anywhere vulnerabilities are shown including API endpoints and third party integrations.
2023-03-28 16:11:31 -04:00
Lucas Manuel Rodriguez
40265d0e6f
Fix SMTP e-mail send when SMTP server has credentials (#10758)
#9609

This PR also fixes #10777.

The issue is: We were using `svc.AppConfig` instead of
`svc.ds.AppConfig` to retrieve the SMTP credentials.
`svc.AppConfig` obfuscates credentials, whereas `svc.ds.AppConfig` does
not.
To help prevent this from happening again I've renamed `svc.AppConfig`
to `svc.AppConfigObfuscated`.
I've also added a new test SMTP server
(https://github.com/axllent/mailpit) that supports Basic Authentication
and tests that make use of it to catch these kind of bugs (the tests are
executed when running `go test` with `MAIL_TEST=1`).

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-03-28 15:23:15 -03:00
Gabriel Hernandez
005956f9bc
Feat/implement api for disk encryption status aggregate (#10422)
relates to #9434

implements the `GET /fleet/mdm/apple/filevault/summary` aggregate
endpoint.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] Added/updated tests

---------

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
2023-03-28 15:50:14 +01:00
Benjamin Edwards
32c7a13215
add configuration to disable origin header check (#10779)
# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)

closes https://github.com/fleetdm/fleet/issues/10778

---------

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
2023-03-28 01:23:29 -04:00
Roberto Dip
98845f03a6
remove feature flags to enable MDM (#10746)
https://github.com/fleetdm/fleet/issues/10025
2023-03-27 16:30:29 -03:00
Martin Angers
b6e10eb6da
Update host MDM profile status to pending in response to triggering events (#10443) 2023-03-27 14:43:01 -04:00
Jacob Shandling
f5fcd77359
UI: Remove unused 'Issuer URI' field from UI (#10766)
## Addresses #10257 

Removed the 'Issuer URI' field and its associated code. Manually
confirmed that enabling single sign-on still works as expected.

<img width="525" alt="Screenshot 2023-03-24 at 4 32 56 PM"
src="https://user-images.githubusercontent.com/61553566/227661519-c2684a68-8b66-48f9-a6ab-a24f02f07080.png">


# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-27 10:31:30 -07:00
Jacob Shandling
82f530bb81
UI: adjust icon style to bring into alignment (#10730)
## Addresses #10651 
Before:


![](https://user-images.githubusercontent.com/11012743/226695150-d2cbc2e3-fea8-4764-8c1d-a25445691caf.png)

Now:
![Screenshot 2023-03-23 at 4 36 08
PM](https://user-images.githubusercontent.com/61553566/227387594-96280c9d-74ca-4f1c-9e73-702c4ae0ff42.png)


## Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-24 09:31:43 -07:00
Lucas Manuel Rodriguez
e0d8dcad21
Allow prometheus /metrics endpoint with http basic auth disabled (#10634)
#8957

To test this feature, build+run Fleet and then visit:
`https://localhost:8080/metrics`.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [ ] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-03-23 19:00:11 -03:00
Jacob Shandling
bac97cea7b
UI: Ensure TextCell is always greyed when no value passed in (#10696)
# Addresses #10038 

- Add logic to ensure consistent light-grey coloring of text cells using
DEFAULT_EMPTY_VALUE
<img width="622" alt="Screenshot 2023-03-22 at 4 06 30 PM"
src="https://user-images.githubusercontent.com/61553566/227058308-2c35e0b3-7017-4a0d-9e60-d03d46194f55.png">

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-23 09:32:46 -07:00
Jacob Shandling
faa65ac350
UI: Add column for published date to Vulnerabilities table (#10656)
## Addresses #9834 
<img width="1215" alt="added date to vuln table"
src="https://user-images.githubusercontent.com/61553566/226730586-4165f5c9-2a42-4378-b58b-7900838a8707.png">

## Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-23 09:32:32 -07:00
Jacob Shandling
e60917f4c7
UI: Fix SVG cutoff at certain zooms (#10607)
## Addresses #10328

- Added 1px of padding to fix clipping at certain zoom levels.
 

https://user-images.githubusercontent.com/61553566/226456062-43081392-3698-4eff-8104-953e096b33c3.mov

- Restore alignment, and keep "critical policy" icon from being
truncated within cells
<img width="1170" alt="Screenshot 2023-03-21 at 5 42 29 PM"
src="https://user-images.githubusercontent.com/61553566/226772991-03910e98-bc77-4436-9d23-3372068cb0f8.png">

## Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-23 09:31:33 -07:00
Martin Angers
2fb5aa629d
Normalize the naming of mdm settings, update docs and document missing ones (#10681)
#10408
2023-03-23 07:30:28 -03:00
Luke Heath
547111d5b6
Prepare 4.29.0 (#10610) 2023-03-22 15:14:51 -05:00
Juan Fernandez
5c465549e7
Bug 10631: Updated SearchHost authorization action (#10655)
Updated authorization on 'host/search' endpoint so that logged in users can list hosts.
2023-03-21 15:29:59 -04:00
Luke Heath
9bf4601120
Prepare 4.28.1 (#10461) (#10609) 2023-03-20 17:11:38 -05:00
Roberto Dip
305392e7bb
enforce an uniform collation for all tables (#10515)
related to #10441, inspired by the prior work done in
https://github.com/kolide/fleet/pull/1360, this PR:

1. Adds a migration to use `utf8mb4_general_ci` as the default collation
for the database and all the tables. From [MySQL's documentation][1]:

> To change the table default character set and all character columns
    > (CHAR, VARCHAR, TEXT) to a new character set, use a statement like
    > this:
    >
    > ```
    > ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;
    > ```
> The statement also changes the collation of all character columns. If
> you specify no COLLATE clause to indicate which collation to use, the
    > statement uses default collation for the character set.

2. Changes the connection settings to use `utf8mb4_general_ci` as the
default collation, from the [driver docs][2]:

   > Sets the collation used for client-server interaction on
connection. In contrast to charset, collation does not issue additional
queries. If the specified collation is unavailable on the target server,
the connection will fail.

[1]: https://dev.mysql.com/doc/refman/5.7/en/alter-table.html
[2]: https://github.com/go-sql-driver/mysql


**TODO:** discuss how we can enforce this, is setting the database
default collation enough? should we add some kind of custom lint rule to
all migrations?

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-03-16 15:49:24 -03:00
RachelElysia
00629d6742
Fleet UI: Fix software table button tooltip to overflow (#10532) 2023-03-16 13:52:02 -04:00
Zach Wasserman
42b3e5602e
Fleetd for Chrome (#10281)
# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-03-16 09:01:10 -03:00
Jacob Shandling
7eb931fe92
Disk encryption activity items (#10421)
## Addresses #9406

Premium:
<img width="592" alt="Screenshot 2023-03-09 at 4 26 50 PM"
src="https://user-images.githubusercontent.com/61553566/224191932-bdb5934e-72ff-4ea2-b572-308bce93cecd.png">

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` 
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-15 13:08:04 -07:00
Jacob Shandling
1c2a486bf0
UI: Add Upsell component including PremiumFeature icon (#10481)
## Addresses #10324 

## Implements

![Screenshot 2023-03-14 at 12 51 14
PM](https://user-images.githubusercontent.com/61553566/225120738-6bbf5522-ed81-4463-b85f-a3502a2c81f3.png)
![Screenshot 2023-03-14 at 1 12 48
PM](https://user-images.githubusercontent.com/61553566/225125534-dc29151d-b945-480e-921f-5fef2b15304d.png)

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Added/updated test inventory
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-14 15:23:20 -07:00
Martin Angers
276c767ab9
Update aggregated_stats to support "no team" in addition to "all teams" (#10466) 2023-03-14 17:01:16 -04:00
gillespi314
2bb79ef95a
Update team id query parameter to filter hosts by "no team" assignment (#10444) 2023-03-14 15:41:55 -05:00
Gabriel Hernandez
e822132590
Feat/disk encryption page (#10288)
related to #9402 and #9404

Implements UI for toggling off and on fleet mdm disk encryption
management and also the disk encryption aggregate data tables.

**Toggling disk encryption:**


![image](https://user-images.githubusercontent.com/1153709/222773636-2943521b-6e88-4154-980b-92e1122aebfc.png)

**disk encryption aggregate:**


![image](https://user-images.githubusercontent.com/1153709/222773592-0781fe1b-7808-4e50-b7de-03c6817c612f.png)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2023-03-14 13:03:02 -07:00
Jacob Shandling
81c732f34d
Macos settings hosts filter (#10385)
## Addresses #9597 
<img width="1121" alt="Screenshot 2023-03-09 at 2 03 58 PM"
src="https://user-images.githubusercontent.com/61553566/224170878-00a1ba60-6477-4c4b-8582-d1711e8b0181.png">

## Notes
The UI for "No teams" filtered state will be implemented in the
**Frontend** portion of #10409
## Checklist
- [x] Manual QA
- [x] Updated testing inventory or added tests
- [x] Change file

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-14 10:05:43 -07:00
Przemysław Romanik
4413a20bcb
Add EndeavourOS, Manjaro, openSUSE Leap and Tumbleweed to HostLinuxOSs (#10456)
Fixes broken data collection (e.g. disk space, IP addresses, installed
Python and RPM packages) and "unrecognized platform" error for those
distros.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-03-14 07:50:28 -03:00
Lucas Manuel Rodriguez
5ec4fab440
Orbit to set --database_path when invoking osquery to retrieve system info (#10308)
#9132

The actual fix for the empty hosts is adding the `--database_path`
argument in the initial `osqueryd -S` invocation when retrieving the
UUID. Osquery attempts to retrieve the UUID from OS files/APIs, when not
possible (which is what happens on some linux distributions), then it
resorts to generating a new random UUID and storing it in the
`osquery.db`. The issue was Orbit's first invocation of `osqueryd -S`
was not using the same `osquery.db` as the main daemon invocation of
`osqueryd`.

I'm also adding a `hostname` + `platform` to the orbit enroll phase so
that if there are any issues in the future we can avoid the "empty" host
and have some information to help us troubleshoot.

## How to reproduce

On Linux, osquery reads `/sys/class/dmi/id/product_uuid` to load the
hardware UUID.
Some Linux distributions running on specific hardware or container
environments do not have such file available.
The way to reproduce on a Linux VM is to do the following:
```sh
$ sudo su
# chmod -r /sys/class/dmi/id/product_uuid
```
which will turn the file inaccessible to root.

## Checklist

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- [X] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [X] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [X] Added/updated tests
- [x] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- [x] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- [x] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).
2023-03-13 18:54:18 -03:00
Roberto Dip
61f276fe44
allow to start Fleet MDM without configuring Apple BM (#10453)
Related to https://github.com/fleetdm/fleet/issues/10299, this allows to
start the Fleet server with MDM enabled without having to provide ABM
configs.

I have tested this with:

1. Premium account, no ABM config: the server starts normally, but
without ABM features
2. Premium account, invalid ABM config: error starting the server
3. Premium account, valid ABM config: ABM features enabled
4. Free account, no ABM config: the server starts normally
5. Free account, any ABM config: error due to invalid license
2023-03-13 18:16:11 -03:00
Jacob Shandling
ce5a1b44cd
UI: Disk encryption banners (#10329)
## Addresses #9414
## Implements
<img width="1021" alt="Screenshot 2023-03-06 at 5 47 18 PM"
src="https://user-images.githubusercontent.com/61553566/223297991-507da9c5-1dd6-40da-b16b-9961645abd4e.png">
<img width="1257" alt="Screenshot 2023-03-06 at 5 47 49 PM"
src="https://user-images.githubusercontent.com/61553566/223298063-5ff380ed-7006-40a7-8a81-3a42936fa435.png">


https://user-images.githubusercontent.com/61553566/223298116-eabbb73c-6323-49b7-b731-3b5da2e3d28d.mov

## Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [ ] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-13 14:15:55 -07:00
Lucas Manuel Rodriguez
b0475d998e
Run cleanup of cron_stats outside of the schedule package to prevent outages from breaking cron jobs (#10439)
#9486

Now cron jobs should recover from a Fleet outage after ~ two hours.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- ~[ ] Added/updated tests~
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-03-13 16:15:30 -03:00
Lucas Manuel Rodriguez
93e150666b
Add instanceID to schedule logging (#10413)
#9515

Sample output after running `fleetctl trigger --name
cleanups_then_aggregation`:
```sh
./build/fleet serve --dev --dev_license 2>&1 | tee ~/fleet.txt
level=info ts=2023-03-09T19:27:17.324691Z component=redis mode=standalone
level=info ts=2023-03-09T19:27:17.360565Z instanceID="V9mArnX3lPhlIS0enyFau9eWi/dpjUPmOzJ3rwQUkX+l2aU1AMM4lQfdaDFZfeyJSHBwrIt/km1ghmRcyhdWqA=="
level=info ts=2023-03-09T19:27:17.372767Z msg="started cron schedules: automations, cleanups_then_aggregation, integrations, usage_statistics, vulnerabilities"
ts=2023-03-09T19:27:17.391404Z transport=https address=0.0.0.0:8080 msg=listening
level=error ts=2023-03-09T19:27:19.973841Z query=fleet_detail_query_software_macos message="distributed query is denylisted" hostID=58
level=info ts=2023-03-09T19:27:21.262799Z cron=cleanups_then_aggregation schedule=cleanups_then_aggregation instanceID="V9mArnX3lPhlIS0enyFau9eWi/dpjUPmOzJ3rwQUkX+l2aU1AMM4lQfdaDFZfeyJSHBwrIt/km1ghmRcyhdWqA==" status=pending
ts=2023-03-09T19:27:22.218129Z inf="skipping verification of encryption keys as MDM is not fully configured"
level=info ts=2023-03-09T19:27:22.224179Z cron=cleanups_then_aggregation schedule=cleanups_then_aggregation instanceID="V9mArnX3lPhlIS0enyFau9eWi/dpjUPmOzJ3rwQUkX+l2aU1AMM4lQfdaDFZfeyJSHBwrIt/km1ghmRcyhdWqA==" status=completed
```

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- ~[ ] Added/updated tests~
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-03-13 15:37:03 -03:00
Lucas Manuel Rodriguez
e926581427
Observers can observe team settings (#10447)
#9984

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- [X] Documented any permissions changes: Done by @noahtalerman, see
#10440
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- ~[ ] Manual QA for all new/changed functionality~
  - For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-03-13 15:34:39 -03:00
Lucas Manuel Rodriguez
3757aace08
Add UUID to Fleet errors and clean up error msgs (#10411)
#8129 

Apart from fixing the issue in #8129, this change also introduces UUIDs
to Fleet errors. To be able to match a returned error from the API to a
error in the Fleet logs. See
https://fleetdm.slack.com/archives/C019WG4GH0A/p1677780622769939 for
more context.

Samples with the changes in this PR:
```
curl -k -H "Authorization: Bearer $TEST_TOKEN" -H 'Content-Type:application/json' "https://localhost:8080/api/v1/fleet/sso" -d ''
{
  "message": "Bad request",
  "errors": [
    {
      "name": "base",
      "reason": "Expected JSON Body"
    }
  ],
  "uuid": "a01f6e10-354c-4ff0-b96e-1f64adb500b0"
}
```
```
curl -k -H "Authorization: Bearer $TEST_TOKEN" -H 'Content-Type:application/json' "https://localhost:8080/api/v1/fleet/sso" -d 'asd'
{
  "message": "Bad request",
  "errors": [
    {
      "name": "base",
      "reason": "json decoder error"
    }
  ],
  "uuid": "5f716a64-7550-464b-a1dd-e6a505a9f89d"
}
```
```
curl -k -X GET -H "Authorization: Bearer badtoken" "https://localhost:8080/api/latest/fleet/teams"
{
  "message": "Authentication required",
  "errors": [
    {
      "name": "base",
      "reason": "Authentication required"
    }
  ],
  "uuid": "efe45bc0-f956-4bf9-ba4f-aa9020a9aaaf"
}
```
```
curl -k -X PATCH -H "Authorization: Bearer $TEST_TOKEN" "https://localhost:8080/api/latest/fleet/users/14" -d '{"name": "Manuel2", "password": "what", "new_password": "p4ssw0rd.12345"}'
{
  "message": "Authorization header required",
  "errors": [
    {
      "name": "base",
      "reason": "Authorization header required"
    }
  ],
  "uuid": "57f78cd0-4559-464f-9df7-36c9ef7c89b3"
}
```
```
curl -k -X PATCH -H "Authorization: Bearer $TEST_TOKEN" "https://localhost:8080/api/latest/fleet/users/14" -d '{"name": "Manuel2", "password": "what", "new_password": "p4ssw0rd.12345"}'
{
  "message": "Permission Denied",
  "uuid": "7f0220ad-6de7-4faf-8b6c-8d7ff9d2ca06"
}
```

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - For Orbit and Fleet Desktop changes:
- [X] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-03-13 13:44:06 -03:00
Lucas Manuel Rodriguez
02ea8b104b
Remove attach check on queries and return proper bad request error (#10427)
Fixes both #10378 and
https://github.com/fleetdm/confidential/issues/2133

On `main`:
```sh
curl -v -k -X POST -H "Authorization: Bearer $TEST_TOKEN" \
https://localhost:8080/api/latest/fleet/queries/run \
-d '{ "query": "select \"With automounting enabled anyone with physical access could attach a USB drive or disc and have its contents available in system even if they lacked permissions to mount it themselves.\" as Rationale;" }'

< HTTP/2 500
< content-type: application/json; charset=utf-8
< content-length: 130
< date: Fri, 10 Mar 2023 17:50:40 GMT
<
{
  "message": "invalid query's SQL",
  "errors": [
    {
      "name": "base",
      "reason": "invalid query's SQL"
    }
  ]
}
```
With changes in this PR:
```sh
curl -v -k -X POST -H "Authorization: Bearer $TEST_TOKEN" \
https://localhost:8080/api/latest/fleet/queries/run \
-d '{ "query": "select \"With automounting enabled anyone with physical access could attach a USB drive or disc and have its contents available in system even if they lacked permissions to mount it themselves.\" as Rationale;", "selected": { "hosts": [57] } }'

< HTTP/2 200
< content-type: application/json; charset=utf-8
< content-length: 325
< date: Fri, 10 Mar 2023 17:49:40 GMT
<
{
  "campaign": {
    "created_at": "0001-01-01T00:00:00Z",
    "updated_at": "0001-01-01T00:00:00Z",
    "Metrics": {
      "TotalHosts": 1,
      "OnlineHosts": 1,
      "OfflineHosts": 0,
      "MissingInActionHosts": 0,
      "NewHosts": 0
    },
    "id": 87,
    "query_id": 85,
    "status": 0,
    "user_id": 1
  }
}
```

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-03-13 11:42:26 -03:00
Roberto Dip
a1ca172c95
allow to set up a DEP flow gated by Okta auth (#10338)
#10271
2023-03-13 10:33:32 -03:00
Juan Fernandez
56ed2727b5
Updated translation rules so that Docker Desktop can be mapped to the proper CPE (#10326)
Updated translation rules so that Docker Desktop can be mapped to the proper CPE.
2023-03-09 17:46:57 -04:00
Martin Angers
28c02448bf
Various mdm-related documentation fixes (#10398) 2023-03-09 09:53:40 -06:00
Martin Angers
0d6b9b98d4
Add mdm.macos_settings disk encryption fields to the response of GET /hosts/{id} and device. (#10371) 2023-03-08 15:42:23 -05:00
Jacob Shandling
4fb958770c
UI: Aggregate mac settings indicators (#10303)
**Addresses** #9415 

**Implements**
<img width="1225" alt="Screenshot 2023-03-03 at 3 29 06 PM"
src="https://user-images.githubusercontent.com/61553566/222854277-5585f6d7-cb4d-4946-881f-01f79bf8342a.png">

**Demo**
https://www.loom.com/share/1cb3dbb9a1194581be89102029b0d6ba

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` 
- [x] Updated [testing
inventory](https://docs.google.com/spreadsheets/d/1HyKnq7jTk4IJmDHVwU-x9kcH7bgvjDTxohML4hPGfK8/edit#gid=0)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-03-08 11:43:00 -08:00
Martin Angers
765c8754b6
Add enabled/disabled disk encryption activities and trigger profiles generation (#10319) 2023-03-08 08:31:53 -05:00
RachelElysia
04169ec84b
Fleet UI: Critical icon on policy table (#10313) 2023-03-06 15:57:15 -05:00
Roberto Dip
074ea7dc8d
add config values for MDM Okta integration (#10295)
For #10228 , all new config values are automagically tested by
`TestConfigRoundtrip`.
2023-03-06 14:47:29 -03:00
Martin Angers
50a2739609
Allow updating enable_disk_encryption via the Modify Team endpoint (#10208) 2023-03-06 09:54:51 -05:00
gillespi314
36ac72d697
Add mdm profiles status filter to hosts endpoints (#10246) 2023-03-03 18:19:46 -06:00
RachelElysia
db9ed90b0c
CIS - WIN10 - 9.3.X policies (#10253) 2023-03-03 13:37:03 -05:00
gillespi314
21c6733c1b
Release schedule lock when triggered run spans schedule interval (#10240) 2023-03-03 12:14:10 -06:00
RachelElysia
82e81a7b06
CIS - WIN10 - 9.2.X policies (#10254) 2023-03-03 13:13:09 -05:00
RachelElysia
0b4ae4f621
CIS - WIN10 - 18.X.X policies (#10286) 2023-03-03 12:52:18 -05:00
RachelElysia
6b2cebd4f1
CIS - WIN10 - 2.3.17.X (#10275) 2023-03-02 17:18:02 -05:00
gillespi314
615052a9ac
Create new API endpoint to provide aggregate status count of MDM profiles applying to hosts (#10194) 2023-03-01 18:36:59 -06:00
Lucas Manuel Rodriguez
9864048ee9
Allow setting user roles during JIT provisioning (#10193)
#8411

PS: I've opened #10209 to solve the issue with Golang Code Coverage CI
checks.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- ~[] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [x] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-03-01 20:18:40 -03:00
StepSecurity Bot
fb152b9114
Pin image SHA in Dockerfiles (#10205)
## Summary

This pull request is created by [Secure
Repo](https://app.stepsecurity.io/securerepo) at the request of @zwass.
Please merge the Pull Request to incorporate the requested changes.
Please tag @zwass on your message if you have any questions related to
the PR. You can also engage with the
[StepSecurity](https://github.com/step-security) team by tagging
@step-security-bot.

## Security Fixes

### Secure Dockerfiles

Pin image tags to digests in Dockerfiles. With the Docker v2 API
release, it became possible to use digests in place of tags when pulling
images or to use them in FROM lines in Dockerfiles.

- [The Open Source Security Foundation (OpenSSF) Security
Guide](https://github.com/ossf/scorecard/blob/main/docs/checks.md#pinned-dependencies)


## Feedback
For bug reports, feature requests, and general feedback; please create
an issue in
[step-security/secure-repo](https://github.com/step-security/secure-repo).
To create such PRs, please visit https://app.stepsecurity.io/securerepo.


Signed-off-by: StepSecurity Bot <bot@stepsecurity.io>

---------

Signed-off-by: StepSecurity Bot <bot@stepsecurity.io>
Co-authored-by: Zach Wasserman <zach@fleetdm.com>
2023-03-01 11:37:00 -08:00
RachelElysia
4c80e1808b
CIS - WIN10 - 2.3.10.X policies (#10178) 2023-03-01 10:28:45 -05:00
Martin Angers
4593c49ec4
Add disk_encryption option to config and team YAML (#10185) 2023-02-28 15:34:46 -05:00
RachelElysia
7408a0df90
Fleet UI: Show query button added to policy results page (#10164) 2023-02-28 12:55:56 -05:00
Martin Angers
e3ddb5f3ce
Support matching a host in orbit enrollment using the serial number (#9612) 2023-02-28 12:55:04 -05:00
Luke Heath
71f2a62b4c
Prepare for 4.28.0 (#10103) 2023-02-27 15:19:15 -08:00
gillespi314
6fec539fbf
Update API responses for hosts and labels endpoints to include host mdm info (#10141)
Issue #10126 

- Add mdm solution name to host mdm inf
- Add host mdm info in labels API response;
2023-02-27 18:40:34 -03:00
RachelElysia
1a37f9bf5a
Fleet UI: Use app context currentTeam as source of truth for teamId (#10118) 2023-02-27 11:06:18 -06:00
Juan Fernandez
7e366272c0
Feature 9386: Parse the Mac Office release notes for vulnerability processing (#9993)
This PR adds the capability of parsing the release notes posted in https://learn.microsoft.com/en-us/officeupdates/release-notes-office-for-mac into a JSON metadata file (to be released in the NVD repo) and use it for detecting vulnerabilities on Mac Office apps.
2023-02-24 14:18:25 -04:00
Gabriel Hernandez
75a0436f12
max height for org logo images, ensured consistant nav height (#10095) 2023-02-24 11:27:39 -06:00
RachelElysia
ea42eff8e4
Fleet UI: Saving policy platforms always successful even if incompatible (#10058) 2023-02-24 10:38:29 -05:00
RachelElysia
dbaa25104e
Fleet UI: Wrap activity feed (#10075) 2023-02-24 09:05:42 -05:00
Benjamin Edwards
f3b0e4da72
add configuration parameters for filesystem logging file rotation (#10048) 2023-02-24 07:44:56 -05:00
RachelElysia
b4330c873e
Fleet UI: Fix host count for hosts filtered by operating system version (#10070) 2023-02-23 13:50:11 -05:00
RachelElysia
549a7c7fd8
Fleet UI: Use currentTeam.id from app context to set teamId for API calls on Manage host page (#10053) 2023-02-23 11:37:09 -05:00
Zach Wasserman
7c9454c92d
Changes in Fleet server to support Fleetd for Chrome (#10047)
These are minor changes needed to support the new ChromeOS extension.
This should have no effect on non-Chrome platforms.

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-02-23 09:18:04 -03:00
RachelElysia
1dcf9781ab
Fleet UI: Select targets distributed interval tooltips (#9975) 2023-02-22 16:27:02 -05:00
Jacob Shandling
ba34351f4b
UI: Implement new activity types for macOS profiles (#9894)
# Addresses #9595

# Implements

- new Activity types:
    - CreatedMacOSProfile
    - DeletedMacOSProfile
    - EditedMacOSProfile
- Activity message depends on isPremium:
- true: '...macOS hosts with no team' or '...macOS hosts assigned to the
**Team Name** team {?via fleetctl}.'
    - false: '...{to | from | for} all macOS hosts.'
# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [ ] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-02-22 10:42:40 -08:00
Lucas Manuel Rodriguez
407d05eab9
Workaround to set policy specs on a team (#9978)
For the CIS benchmark feature, we need a way to import a group of
policies (spec yml) into a team.
This PR adds a flag to `apply -f` to allow setting a team name to a
group of policies.

Sample:
```sh
fleetctl apply --context dogfood --policies-team "📊 CIS Benchmarks" -f ee/cis/macos-13/cis-policy-queries.yml
```

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [ ] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-02-22 13:14:53 -03:00
Jacob Shandling
a578e20930
UI: Add macOS settings (profiles) indicator and modal with data table (#9809)
# Addresses #9413

# Implements
https://www.loom.com/share/d1b66a3076b94bf2add4fcf8666649a4

- macOS settings indicator on host details and device user pages. Only
displayed if (1) the host is enrolled in a Fleet MDM server and (2) the
host has at least one setting (profile) enforced.
- macOS settings modal, toggled by clicking on above indicator. Contains
a data table with the name, status, and error messages, if any, of each
enforced macOS setting on the host.

# Notes
- To aid in reviewing, you'll probably want to focus on:
-
[DeviceUserPage.tsx](https://github.com/fleetdm/fleet/pull/9809/files#diff-be9f14d3cee9f345058212985c26b3452688c6d75853a5e9dcb968a69dfcbbd7)
and
[HostDetailsPage.tsx](https://github.com/fleetdm/fleet/pull/9809/files#diff-72f7403682d211fc8a84a411fc39c4a33c3eb6a33549a33f1179dd7da6a893cc)
-
[HostSummary.tsx](https://github.com/fleetdm/fleet/pull/9809/files#diff-435e720f1ad82e892bec00fbc9c14e01e9488b776ae293f9158500c66d85bd0d)
-
[MacSettingsIndicator.tsx](https://github.com/fleetdm/fleet/pull/9809/files#diff-e23079f72b13bd34eb978eded467265dad4f366a6fece60cd52c887f355f92d1)
-
[MacSettingsModal.tsx](https://github.com/fleetdm/fleet/pull/9809/files#diff-75a08aa5b66cc2b63fc616d8ba012e552376f23d3c3df01d875586857f326f53)
-
[MacSettingsTable.tsx](https://github.com/fleetdm/fleet/pull/9809/files#diff-5dc441b06f770f112bb32bb618e2140e9bbccb7ebf80d86ee57c2754e067a421)
and its associated
[MacSettingsTableConfig.tsx](https://github.com/fleetdm/fleet/pull/9809/files#diff-0ab0cb34e249e2a41bf51508d38bea018dc5e683b705308250241c42549ab093)
   
- Currently using mock data. Once #9599 is completed, #9888 will change
these components to use the real data
- 2/21 - removed mock data. Until the API returns the host.mdm.profiles
data, settings indicator and modal will not render
# Checklist

- [x] Changes file added
- [x] Manual QA
- [x] Updated testing inventory

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-02-22 08:13:12 -08:00
RachelElysia
37c90502a6
Fleet UI: Select targets logic for "All hosts" to be mutually exclusive from other filters (#9992) 2023-02-22 10:32:43 -05:00
RachelElysia
dbec2f85df
Fleet UI: Consistent URL validation (#9806) 2023-02-22 09:05:38 -05:00
Gabriel Hernandez
a11e2cce3d
implement UI for uploading, downloading, deleting macOS profiles (#9901)
relates to #9593 

Implements the UI for users to upload, download, and delete macos
profiles


![image](https://user-images.githubusercontent.com/1153709/219685914-6f44e77b-c2cb-47c3-897d-1ba137510fed.png)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [ ] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-02-21 15:31:19 +00:00
RachelElysia
7f6a42e4ac
Fleet UI: Undetermined public ip tooltip (#9907) 2023-02-21 09:16:38 -05:00
Martin Angers
c3a9a1cd94
Fix panic when loading mdm-enrolled host by orbit key and is_server is null (#9957) 2023-02-21 08:41:04 -05:00
Zach Wasserman
7b1e63189e
Fix macOS pkg file permission warnings (#9940)
Fixes warnings reported by Suspicious Package about the declared
permissions not matching the actual permissions. This was tested on
macOS and Linux (in the `fleetdm/fleetctl` Docker container) with the
"native tooling" option.

#7852

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-02-20 14:29:49 -08:00
RachelElysia
b8811f04e5
Fleet UI: Add source link to query table side panel (#9948) 2023-02-20 15:39:57 -05:00
Zach Wasserman
ec8067e9b3
Remove Rosetta requirement for macOS installers (#9933)
Even though the binaries are "universal" (compatible with both arm64 and
x86_64), this configuration must be provided in the Distribution XML in
order to prevent macOS from installing Rosetta when the user goes to
install the package. Verified with Suspicious Package.

For #9932

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-02-20 09:24:38 -08:00
Martin Angers
fa695cef34
Fix server URL for hosts enrolled in Fleet MDM (#9952) 2023-02-20 12:16:56 -05:00
Roberto Dip
314e8fe3d5
standardize a default value for empty cells (#9899) 2023-02-17 15:25:28 -03:00
Lucas Manuel Rodriguez
1f97514200
Only set public IPs on host.public_ip and add docs (#9900)
#9857

The "Public IP address" field is sometimes set to a "Private IP" on the
following types of Fleet deployments:
- Local deployments.
- Deployments where Fleet is on a private network.
- Deployments where an agent connects to Fleet not via the public
internet.

This PR will prevent a private IP to be set on the `host.public_ip`
field.
And this PR also adds documentation on how Fleet deduces the public IPs
of the devices so that a user can make the changes to fix this.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- ~[ ] Added/updated tests~
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-02-17 13:00:56 -03:00
gillespi314
086964726d
Add API endpoints for MDM config profiles (#9817)
Issue #9586

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [ ] Documented any permissions changes
- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-02-17 09:28:28 -06:00
RachelElysia
c21d592fe1
Fleet UI: Default policies preselect targeted platforms only (#9861) 2023-02-17 08:48:40 -05:00
Lucas Manuel Rodriguez
b757e447bc
Fix private IP ingestion in network_interface_unix and network_interface_windows. (#9884)
#8924

This is reproduced in dogfood for `dogfood-centos-box` and
`dogfood-ubuntu-box` where their "Private IP" is also their "Public IP".
Given that these hosts have their "Primary IP" configured to be their
"Public IP" alongside their "Private IP", the `network_interface_unix`
and `network_interface_windows` queries are now changed to ingest only
private IPs for the "Private IP" field.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- ~[ ] Added/updated tests~
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-02-16 17:16:40 -03:00
Martin Angers
4a1f3988f0
Add "edited macos profiles" activity when applying custom settings via fleetctl (#9862)
#9587 and #9639
2023-02-16 13:53:26 -03:00
Martin Angers
33f33163a9
Add macos custom profiles support via fleetctl apply (#9824) 2023-02-15 13:01:44 -05:00
gillespi314
bcdc4691bb
Enable installation and auto-updates of Nudge via Orbit (#9605)
Issue #9093 

Co-authored-by: Roberto Dip <me@roperzh.com>
Co-authored-by: Roberto Dip <dip.jesusr@gmail.com>
2023-02-10 17:03:43 -03:00
Roberto Dip
7cd581866a
add API endpoint to see disk encryption key (#9713)
https://github.com/fleetdm/fleet/issues/8708
2023-02-08 20:20:23 -03:00
Roberto Dip
046401d190
Ingest file vault recovery keys in macOS (#9712)
Related + details at https://github.com/fleetdm/fleet/issues/8708
2023-02-08 11:49:42 -03:00
Luke Heath
b3daf3d715
Prepare for 4.27.0 (#9683) 2023-02-03 17:03:06 -08:00
RachelElysia
a51b4709a2
Fleet UI: Manage host page performance issues > 50 hosts pp (#9641) 2023-02-02 17:31:51 -06:00
Lucas Manuel Rodriguez
dfe6b53963
Make fleetctl get teams --yaml output compatible with fleetctl apply -f (#9626)
#9535

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-02-02 14:46:50 -03:00
Gabriel Hernandez
35f23431c6
Integrate with request CSR API (#9613) 2023-02-01 13:11:34 -06:00
Roberto Dip
e06b00df11
Add readonly MDM.EnabledAndConfigured to app config and device responses (#9575)
Related to #9571, this adds a new value to both responses which is
calculated when the Fleet server is started, and only set to `true` if
the server is properly configured for MDM.

This helps the UI to determine wether or not we should show certain UI
elements that we only want to show to servers with MDM enabled.
2023-02-01 14:47:52 -03:00
Gabriel Hernandez
68c4e69a57
add min macos version edited activitiy (#9607)
relates to https://github.com/fleetdm/fleet/issues/9352

adds an edited minimum mac os version activity to the UI

**with team:**

![image](https://user-images.githubusercontent.com/1153709/216044501-3dc34a24-5a49-4fb5-8a83-6808eb79d9ce.png)

**without team:**

![image](https://user-images.githubusercontent.com/1153709/216044543-aa0891c1-6bd4-4453-b646-dcd254fa418b.png)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-02-01 15:58:24 +00:00
Martin Angers
c805ea2154
Record activity when the macos minimum version requirement is edited (#9594) 2023-01-31 16:36:18 -06:00
Zach Wasserman
7531ac20db
Use stricter file permissions in fleetctl updates add (#9516)
This resolves an issue with adding updates on a macOS 13 machine. It
seems like macOS may have changed the default directory permissions and
these new stricter permissions are compatible with that default.

This is the error that was encountered before these changes:

```
Error: create dst dir for copy: Path staged/targets already exists with
mode 20000000700 instead of the expected 20000000755
```

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-01-30 17:28:56 -08:00
Jacob Shandling
f12780df45
UI: 9274 unenroll mdm modal (#9539)
# Addresses #9274 

https://www.loom.com/share/2edd946cbd424af2b960801cc505ac85

## Button and permissions:
- no permission, enrolled, online: <img width="1131" alt="no permission,
enrolled, online"
src="https://user-images.githubusercontent.com/61553566/215197330-abc1606d-bf0a-44ec-b2de-2ef687bd529b.png">
- permission, enrolled, online: <img width="1131" alt="permission,
enrolled, online"
src="https://user-images.githubusercontent.com/61553566/215197443-a1353b9b-10dd-408b-8295-56029f2df4c3.png">
- permission, enrolled, offline: <img width="1131" alt="permission,
enrolled, offline"
src="https://user-images.githubusercontent.com/61553566/215197544-b2a997a7-09e5-4f8a-b723-af587b61a90d.png">
- not enrolled: <img width="1131" alt="not enrolled"
src="https://user-images.githubusercontent.com/61553566/215197630-87f99cb3-63a9-45ce-bc85-57a45d54cae0.png">

## Modal
- <img width="672" alt="modal"
src="https://user-images.githubusercontent.com/61553566/215214640-96670a23-d927-4213-a8fa-89411279c075.png">
- <img width="672" alt="Screenshot 2023-01-27 at 2 12 42 PM"
src="https://user-images.githubusercontent.com/61553566/215215098-40d29556-3b73-4f52-a4ae-cc8b09122f5d.png">
- <img width="672" alt="Screenshot 2023-01-27 at 2 17 48 PM"
src="https://user-images.githubusercontent.com/61553566/215216304-b9362b13-f37f-4454-81b5-423f6fc72280.png">
- <img width="787" alt="success-shot"
src="https://user-images.githubusercontent.com/61553566/215236373-be7b1970-662d-47e6-ac59-f51eff344fcd.png">




# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` 
- [x] Updated test inventory
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-01-30 15:59:02 -08:00
Lucas Manuel Rodriguez
8163b7d8da
Update live query selector logic (OR -> AND) (#9559)
See requirements in #8682.

Two assumptions on the implementation (@zayhanlon please take a look):
- Hosts explicitly selected to run always run the live query (no matter
the values on the selectors).
- When selecting `All hosts`, selecting any other platform or label is
kind of a no-op. We should look into graying out all the selectors if
the user selects `All hosts`.

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- ~[ ] Documented any permissions changes~
- [X] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-01-30 18:35:56 -03:00
Jacob Shandling
60712144f2
UI: Add automatic EnrollMdm modal (#9455)
# Addresses #9365 

# Implements
MDM enrollment modal that handles both automatic and manual enrollment
instructions:
- Automatic:
<img width="1181" alt="Screenshot 2023-01-20 at 4 33 50 PM"
src="https://user-images.githubusercontent.com/61553566/213829293-6d4a5053-9a3c-4f52-8cf8-a6607dc8df4e.png">
- Manual:

<img width="1158" alt="Screenshot 2023-01-20 at 4 35 04 PM"
src="https://user-images.githubusercontent.com/61553566/213829369-73ae779d-14a8-4aa7-9c6a-b97d046d0dc1.png">

- Also includes (by mistake, but might as well include them now) some
small bash scripts for use in MDM development
# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/` 
- [x] Updated testing inventory
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-01-30 11:44:33 -08:00
Gabriel Hernandez
091ee35ba6
implement macOS update content (#9469) 2023-01-27 16:25:53 -06:00
RachelElysia
c4ba1b0396
Fleet UI: Fix host page pagination (#9492) 2023-01-27 14:14:58 -05:00
Jacob Shandling
8a5569cd1b
9349 new controls page (#9431)
# Addresses #9349

# Implements
https://www.loom.com/share/bbf8d6f97fe74e65a0c9a394f1bda3f1
- New Controls page, only visible to Global|Team Admins|Maintainers
- Header for free users is 'Controls', for premium is a teams filter
dropdown that defaults to 'No teams,' which filters via updating the URL
query param "team_id"
    - Includes tabs macUpdates (default) and macSettings
- Cleaned up how site nav items are conditionally included/excluded
based on authorization – see
`frontend/components/top_nav/SiteTopNav/navItems.ts`
- Updated masthead styles: Removed icons from site nav links; updated
colors and spacing; Updated default user avatar TBD in separate PR
(waiting on guidance)

# Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/` 
- [x] Updated testing suite inventory
- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-01-26 11:33:54 -08:00
Jan Christian Grünhage
e5790521ca
detect nixos as a linux platform (#9468)
# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
2023-01-25 18:03:24 -03:00
Martin Angers
d0e6891d10
Add endpoint to trigger CSR request for APNs on fleetdm.com (#9494) 2023-01-25 14:44:29 -05:00
RachelElysia
a09c4520ee
Fleet UI: Fix tables that bleed over on smaller screens (#9475) 2023-01-25 11:10:15 -05:00
Martin Angers
84717de461
Document APNs and ABM setup and renewal (#9471) 2023-01-24 15:20:41 -05:00
RachelElysia
c467aaad73
Fleet UI: MDM pending hosts (#9427) 2023-01-24 12:55:43 -05:00
Roberto Dip
2d25a3f48d
add mdm root key and macos_updates to app and team configs (#9442)
Related to https://github.com/fleetdm/fleet/issues/9345,
https://github.com/fleetdm/fleet/issues/9358 and
https://github.com/fleetdm/fleet/issues/9346 this adds:

1. The ability to configure `mdm.macos_updates` via `PATCH /config` and
`PATCH /teams/{id}`
3. The ability to configure `mdm.macos_updates` by using `fleetctl apply
-f` for teams and global config.
2023-01-24 13:20:02 -03:00
gillespi314
1b4e8e692a
Add API endpoint to unenroll a host from Fleet's MDM (#9447) 2023-01-23 17:05:24 -06:00
Lucas Manuel Rodriguez
328004d679
Log failed login attempts as activities (#9430)
#9119

To test the SSO changes locally you can use:

https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Testing-and-local-development.md#testing-sso

@RachelElysia Please take a look at the UI changes (All I did was
copy/paste and amend the changes for the new activity type.)

IMO we shouldn't display an avatar because there's no "actual user"
involved in these failed login attempts activities (by "actual user" I
mean the user attributed to the activity):

<img width="446" alt="Screenshot 2023-01-19 at 10 41 05"
src="https://user-images.githubusercontent.com/2073526/213524771-b85901ce-eec0-4cf3-919c-73162285e20b.png">

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [X] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- ~[ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-01-20 12:43:22 -03:00
RachelElysia
2bbf9e0bb1
Fleet UI CX Customer Request: UUID tooltip (#9388) 2023-01-19 09:21:52 -05:00
RachelElysia
ea86159ed7
Fleet UI CX: Add license expiration to user settings page (#9396) 2023-01-19 09:21:22 -05:00
RachelElysia
f57f314084
Fleet UI CX: Remove bulky tooltip overflowing if host table is only 1 row (#9398) 2023-01-19 09:20:39 -05:00
Lucas Manuel Rodriguez
0f436d26db
Run authorization check before processing policy spec (#9270)
I was getting a cryptic error and no logs in fleet when trying to apply
an invalid spec file:
```sh
fleetctl apply -f ./some-queries.yml
Error: applying policies: POST /api/latest/fleet/spec/policies received status 500 forbidden: forbidden
```

With the changes in this PR now I get a more descriptive error (bad
request):

```sh
fleetctl apply -f ./some-queries.yml
Error: applying policies: POST /api/latest/fleet/spec/policies received status 400 Bad request: policy spec payload verification: policy query cannot be empty
```

- [X] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- ~[ ] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)~
~- [ ] Documented any permissions changes~
- ~[ ] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)~
- ~[ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [x] Added/updated tests
- [X] Manual QA for all new/changed functionality
  - ~For Orbit and Fleet Desktop changes:~
- ~[ ] Manual QA must be performed in the three main OSs, macOS, Windows
and Linux.~
- ~[ ] Auto-update manual QA, from released version of component to new
version (see [tools/tuf/test](../tools/tuf/test/README.md)).~
2023-01-18 12:26:32 -03:00
Gabriel Hernandez
7d4653baaa
add attribute to GET /activities endpoint with pagination metadata (#9279)
relates to https://github.com/fleetdm/fleet/issues/8928

This adds a new `meta` attribute to the "GET /activities" endpoint that
includes pagination metadata. This can allow clients to know if there
are additional items to request.


- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [x] Added/updated tests
- [x] Manual QA for all new/changed functionality
2023-01-18 12:57:11 +00:00
Martin Angers
e89c45776a
Notify orbit via the GET config endpoint that the DEP profile needs to be renewed (#9373) 2023-01-17 13:19:48 -05:00
Jacob Shandling
d551768606
UI: Edit team modal (#9248)
# Addresses #8872

# Implements

- A modal on the MDM settings tab to change the default Apple Business
Manager team
https://www.loom.com/share/0eb45931d9db4a60843b5d427bdc9e61

# Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-01-17 09:12:24 -08:00
RachelElysia
5964d942a2
Fleet UI: Consistent software empty states and host details empty states (#9247) 2023-01-17 11:23:46 -05:00
gillespi314
fba3607c4a
Add mdm status and server url to host endpoint responses (#9320) 2023-01-16 17:08:24 -06:00
Jacob Shandling
7ed9334ac3
Frontend: Add hostdetails BackLink fallback path (#9262)
# Addresses #9141 

# Fixes
- 'Back to all hosts' link on Host Details page was navigating
incorrectly when the user had previously navigated directly with the
browser URL. This prevents this bug by adding a fallback path for that
BackLink to the default Manage Hosts path.

https://www.loom.com/share/579501365f514ac488f86eacadb2fd07

# Checklist for submitter

If some of the following don't apply, delete the relevant line.

- [x] Changes file added for user-visible changes in `changes/`
- [x] Manual QA for all new/changed functionality

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2023-01-16 12:10:01 -08:00
Martin Angers
e360013dc3
Implement API endpoint for MDM manual enrollment profile download (#9232) 2023-01-16 10:22:12 -05:00
RachelElysia
ee9a9a6907
Fleet UI: Add MDM enrollment/unenrollment activity to activity feed (#9186) 2023-01-16 09:09:27 -05:00
Luke Heath
b6a6ac454f
Prepare for 4.26.0 (#9326) 2023-01-13 16:26:22 -08:00
Zach Wasserman
3016ac1136
Add CrOS as valid host platform (#9308)
This will help reduce spam in the logs from the unrecognized platform.
2023-01-13 14:10:38 -08:00
RachelElysia
b8965da82c
Fleet UI: Remove team policy stale time, remove team policy automation statetime (#9226) 2023-01-10 11:53:11 -05:00
RachelElysia
907dfd0a7f
Fleet UI: Fix manage host page for invalid query strings spinner (#9198) 2023-01-09 15:16:17 -05:00
Tomas Touceda
65783d49c7
Add feature to change or disable Fleet's hardcoded detail queries (#9117)
#8984

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Added/updated tests

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
2023-01-09 08:56:10 -03:00
Tomas Touceda
398bb38da7
Add software_updated_at field to host (#9116)
#9012

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Documented any API changes (docs/Using-Fleet/REST-API.md or
docs/Contributing/API-for-contributors.md)
- [x] Added/updated tests

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
2023-01-09 08:55:43 -03:00
Luke Heath
abb5a332c5
UI hackathon: transitions, tooltips, empty states, buttons, bookmarks (#9195) 2023-01-06 17:08:48 -06:00
Martin Angers
656e5bfc70
Flag when the Apple BM terms have expired (#9091)
#8862 

Co-authored-by: Roberto Dip <dip.jesusr@gmail.com>
Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
2023-01-06 17:44:20 -03:00
Gabriel Hernandez
6eddaae9ca
Feat/add mdm modal (#9207)
relates to https://github.com/fleetdm/fleet/issues/8987

adds an MDM modal users can use to download an enrollment profile. It
purposely is not displayed anywhere currently.


![image](https://user-images.githubusercontent.com/1153709/211021307-a3c41209-08d9-458f-98fd-3c668ef265e3.png)

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-01-06 15:58:43 +00:00
Gabriel Hernandez
08bce97a1b
add pendo to sandbox instances (#9191)
relates to https://github.com/fleetdm/fleet/issues/9022

add pendo to sandboxes instances

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2023-01-06 14:57:32 +00:00
RachelElysia
9a5789459e
Fleet UI: Autofocus forms (#9180) 2023-01-06 09:25:00 -05:00
Gabriel Hernandez
71a2e8f517 merge in main 2023-01-05 17:48:46 +00:00
Gabriel Hernandez
a2d672435d
update buttons to match new styleguide (#9183)
* update button to follow new style guide

* update button styles for inverted ghost buttons

* update a color name to match new styleguide
2023-01-05 15:23:27 +00:00
Jacob Shandling
f2bdf7139e
UI hackathon - add datetime details in tooltip for most "Last Xed" data presentations (#9166) 2023-01-05 09:08:27 -06:00
RachelElysia
68aefc8e56
Fleet UI Hackathon: Empty states (#9094) 2023-01-04 14:16:34 -05:00
Gabriel Hernandez
afed2e35e0
change integration page layout to side nav layout. (#9057) 2023-01-04 18:39:39 +00:00
Gabriel Hernandez
7ec3cfbfe1
add bookmarkability for search query filtering on hosts (#9067) (#9182) 2023-01-04 16:41:15 +00:00
RachelElysia
772caeaa09
Fleet UI: Fix packs target details to show on click (#9155) 2023-01-04 09:58:18 -05:00
Lucas Manuel Rodriguez
ba6b6e12cc
Fix ingestion of MDM server for macOS and Windows hosts (#9133)
* Fix ingestion of MDM server for macOS and Windows hosts

* Return early if there are no mobile_device_management_solutions to clean up

* Run make dump-test-schema

* Fix TestHosts/DeleteHosts test

* Add test for host unenrolling from MDM

* Fix lint

* Fix typo

* Identify Fleet MDM

* Move logic to deduce MDM name out of Datastore

* Run make dump-test-schema

* Remove printfs from migration
2023-01-04 10:29:48 -03:00
Gabriel Hernandez
3a5036f65c
Revert "add bookmarkability for search query filtering on hosts (#9067)" (#9160)
This reverts commit ba62064500.
2023-01-03 23:38:56 +00:00
Frank Sievertsen
91c90b4caa
Add new configuration option to set default team for Apple Business Manager (#9062) 2023-01-03 16:14:18 -06:00
gillespi314
b990121fdc
Add mdm enrollment pending filter to API endpoints (#9137) 2023-01-03 11:26:23 -06:00
Gabriel Hernandez
ba62064500
add bookmarkability for search query filtering on hosts (#9067) 2023-01-03 10:39:01 +00:00
Roberto Dip
1b47f9e700
add activities when a host is enrolled/unenrolled from MDM (#9127)
#8996
2022-12-28 16:41:18 -03:00
Lucas Manuel Rodriguez
34b62cc43e
Fix panic in hosts/{id}/mdm endpoint when host does not have MDM data (#9123) 2022-12-27 16:22:37 -03:00
gillespi314
94dd1c3745
Ingest pending MDM hosts (#9065)
Co-authored-by @roperzh
2022-12-26 15:32:39 -06:00
Lucas Manuel Rodriguez
e1bbcfcfda
Generate audit logs for activities (#9001)
* Generate audit logs for activities

* Fix config tests

* Fix TestGetConfig/IncludeServerConfig

* Fix use of AddAttributes in results only

* Stream activities asynchronously

* Fix index and add logging

* Revert change

* Documentation fixes
2022-12-23 19:04:13 -03:00
Roberto Dip
141fb5dbb0
issue SCEP certs using 2 as the initial SerialNumber (#9087)
Related to #8167, from RFC5280:

> The serial number MUST be a positive integer assigned by the CA to
> each certificate. It MUST be unique for each certificate issued by a
> given CA (i.e., the issuer name and serial number identify a unique
> certificate).

Without this change, we're issuing two different certificates with the
same serial number (1, one) and issuer name:

1. One during `fleetctl generate mdm-apple`
1. One during the first SCEP enrollment
2022-12-23 14:55:34 -03:00
Roberto Dip
e191f47aed
fix failed enrollments due to duplicate slashes on paths (#9089)
This ensures URLs in enrollment profiles are properly formatted,
preventing errors as described in #9088.
2022-12-23 14:55:17 -03:00
Luke Heath
54e8b3e250
Prepare for 4.25.0 (#9113) 2022-12-22 15:13:24 -08:00
Zach Wasserman
e941adfaaa
Use ubuntu-20.04 runner for Fleet build (#9114)
A customer had a seccomp profile that seemed to be incompatible with the
changes in glibc in ubuntu-22.04. Setting the builder back to 20.04
explicitly to resolve this issue.
2022-12-22 14:48:41 -08:00
RachelElysia
8980088f98
Fleet UI: Fix multi select styling on schedule, packs, members (#9102) 2022-12-22 16:34:47 -05:00
Tomas Touceda
af0842804d
Improve how we are logging failed queries and windows detail queries (#9059)
* Improve how we are logging failed queries and windows detail queries

* Update failing tests

* Remove unneeded table in this particular select

* Update tests now that we dont rely on release_id

* Update ingestion since we want to ingest failures for policies and live queries

* We also want labels with failures

* Fix test since we are logging errors slightly differently

* Improve logging and error handling

* Revert back test change

* Actually, we need to OR the booleans to maintain logic
2022-12-21 17:37:40 -03:00
Frank Sievertsen
8e65ec67b5
Add new activity that records create/edit/delete user roles (#9086) 2022-12-21 18:30:19 +01:00
Frank Sievertsen
e7d6ed0f3f
Log all successful logins as activity and all attempts with ip in stderr. (#9095) 2022-12-21 18:29:51 +01:00
Marcos Oviedo
605ae861c9
Windows installer now ensures that legacy osquery installations gets removed during clean install (#9048)
This relates to #8891.

This PR introduces Wix custom actions usage.
2022-12-19 16:06:44 -08:00
Tomas Touceda
68bd8661e9
Simplify disk encryption query in linux and filter at ingestion (#9037)
* Simplify disk encryption query in linux and filter at ingestion

* Join with mounts to detect whatever is encrypting /
2022-12-19 10:01:59 -03:00
Jacob Shandling
3ff0945bd0
UI: set local min-height to 0 to restore proper enroll secret icon alignment (#9043)
* set local min-height to 0 restores intended alignment

* Locally fix same issue on Get API Token modal

* Add changefile
2022-12-16 14:32:51 -08:00
RachelElysia
cf52f189c5
Fleet UI: Delete host flow prevent re-enrollment information (#9044) 2022-12-16 16:43:08 -05:00
Gabriel Hernandez
3c136e3f47
Add MDM Card to Windows and All Dashboards and change mdm data source on host details page (#8960) 2022-12-16 15:12:11 -06:00
Frank Sievertsen
7ebb97cd70
Fire automations for hosts that failed before automation enabled (#9028) 2022-12-16 22:00:54 +01:00
Michal Nicpon
37f454c0be
Add dep key pair endpoint (#9007) 2022-12-16 19:39:36 +01:00
Jacob Shandling
54bf64ada4
UI: Fix line height issue on error in registration flow via replacing InputFieldWithIcon with InputField (#8819)
* Replace InputFieldWithIcon with InputField on setup page

* same refactor on OrgDetails and FleetDetails

* Fix admin setup page spacing issue

* change file

* Remove redundant registration flow placeholders per style guide - info already in labels

* Update reg flow tests getByPlaceHolder ->  getByLabel

* update e2e tests with getByPlaceHolderText -> getByLabelText

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2022-12-16 10:32:10 -08:00
gillespi314
836553ba60
Fix cron trigger bug (#8950) 2022-12-16 12:00:42 -06:00
Martin Angers
f5ea13a800
Add changes file (#9020) 2022-12-14 09:56:13 -05:00
Michal Nicpon
3c9dd27d75
add fleectl generate mdm-apple-bm command (#8979) 2022-12-13 16:24:50 +01:00
Martin Angers
f18a320bd5
Add command get mdm-apple-bm to fleetctl (#8949) 2022-12-12 15:45:53 -05:00
Zach Wasserman
083b781c2c
Send custom headers for live queries (#8991)
This needed to be set specifically for the live query websocket dialer,
since that doesn't use the HTTP client that the rest of the API client
methods use.

Co-authored-by: Tomas Touceda <chiiph@gmail.com>
2022-12-12 07:56:35 -08:00
Frank Sievertsen
a228dcb170
Add critical policies as a premium feature (#8959)
* add premium feature critical policies

* update documentation

* add test for premium-only field

* update old change-file

* test policies more comprehensively

* also test team policies

* PATCH returns wrong timestamp, updating test
2022-12-09 19:23:08 +01:00
Roberto Dip
e68535d468
report errors that can occur during file carving (#8972)
related to https://github.com/fleetdm/fleet/issues/8117
2022-12-09 13:21:30 -03:00
Tomas Touceda
71dbb71df4
Update go to 1.19.4 (#8945)
* Update go to 1.19.4

* Comment out failing package test

* Comment out ALL the packaging tests for windows for the moment

* Update go to 1.19.4

* Comment out failing package test

* Comment out ALL the packaging tests for windows for the moment

* Update changelog

* Bump versions

* Update changelog to reflect this being a security release
2022-12-09 11:47:17 -03:00
RachelElysia
e9afcc778a
Fleet UI: Fix input field alignments (#8963) 2022-12-08 10:57:28 -08:00
Michal Nicpon
10b3179b63
Add fleetctl generate mdm-apple (#8812) 2022-12-07 18:24:42 +01:00
RachelElysia
cde9877ecb
Fleet UI: Scroll shadows (#8914) 2022-12-06 12:58:32 -08:00
Martin Angers
d4a3730610
Add new configuration options for Apple Business Manager (#8886) 2022-12-06 15:50:56 -05:00
gillespi314
43b1241a0c
Add fleetctl trigger command (#8877) 2022-12-06 09:56:54 -06:00
Frank Sievertsen
e0766d21a3
Add ability to mark policy as critical. (#8896) 2022-12-06 15:59:20 +01:00
Marcos Oviedo
8796ce9a38
Adding custom action to WIX template to ensure files are not locked during uninstallation (#8871)
* Adding custom action to ensure that no fleetdm related processes are running on a product uninstall scenario. This will ensure that no file locks are present during file removal
2022-12-06 07:03:06 -03:00
Martin Angers
866829dbfa
Implement fleetctl get mdm-apple (#8786) 2022-12-05 11:35:45 -05:00
Martin Angers
f5fc316ad3
Add options for configuring APNS and SCEP keys/certs in Fleet server (#8730) 2022-12-05 10:22:56 -05:00
Luke Heath
934f8cf734
Prepare for 4.24.0 (#8902) 2022-12-01 13:03:55 -06:00
Jacob Shandling
9a4cfd14b4
UI: Disable sort arrows in manage hosts status column (#8892) 2022-12-01 11:49:58 -06:00
Jacob Shandling
cb9c4d00c2
UI: Fix Tooltipwrapper causing extra whitespace if in last column of table (#8808)
* Nudge last tooltip in header to the left

* changefile

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2022-11-29 13:40:04 -08:00
Jacob Shandling
77e6398efb
UI: Prevent bg color change of disabled pagination buttons in Activity card (#8859)
* Add negation pseuodo-class to button hover to prevent bg color change when disabled

* change file

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2022-11-29 13:39:09 -08:00
Marcos Oviedo
ff9206655a
Fixing UninstallString to properly include msiexec /x call (#8857)
* Fixing UninstallString to properly include msiexec /x call
2022-11-28 20:18:28 -03:00
Frank Sievertsen
8fc32acf00
Store details (query_name and query_sql) about live query in activity feed (#8842) 2022-11-28 16:42:32 +01:00
RachelElysia
1e96f4f0fb
Fleet UI: Fix left align wrapping on software table (#8803) 2022-11-28 09:56:34 -05:00
RachelElysia
8d1ebce204
Fleet UI: Fix table links to allow wrapping (#8802) 2022-11-23 14:36:08 -05:00
RachelElysia
0eff5ce20a
Fleet queries bug: Fix 12 type instances in osquery fleet tables json (#8801) 2022-11-23 10:17:04 -05:00
Tomas Touceda
fe1fa4d78c
Clone AppConfig and ScheduledQuery list by hand to improve CPU usage (#8794)
* Close AppConfig and ScheduledQuery list by hand to improve CPU usage

* Address review comments

* Update remaining mocks
2022-11-23 12:04:06 -03:00
Jacob Shandling
b131839b7f
UI: make diskspace graph behavior os-dependent (#8792)
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2022-11-22 14:43:30 -08:00
Jacob Shandling
9796a15b4d
UI: Set form field height to $form-field-label-min-height for consistency between states, including on error (#8714)
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2022-11-22 14:41:10 -08:00
Jacob Shandling
a568c28124
UI: Add {on|off}line status tooltips and refactor HostSummary to use StatusCell (#8750)
Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
Co-authored-by: Luke Heath <luke@fleetdm.com>
2022-11-22 14:15:17 -08:00
RachelElysia
05a6f06d12
Fleet UI: Allow software table rows to be clickable (#8772) 2022-11-22 11:13:33 -05:00
Martin Angers
dc6bfdec57
Add support for missing OS-specific osquery flags in agent options (#8743) 2022-11-21 10:32:17 -05:00
RachelElysia
a623a6410a
Fleet UI: Add route params to host details page (#8673) 2022-11-18 12:21:53 -05:00
Gabriel Hernandez
0f558d56a4
add links to query side panel (#8753) 2022-11-18 14:25:58 +00:00
Jacob Shandling
3c8fd12ebf
Misc typo fixes (#8694)
* Misc. typo fixes in handbook

* add change file

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2022-11-17 18:13:36 -06:00
Jacob Shandling
b6ec1ef167
UI: Remove preview payload button (#8623)
* UI: Remove 'Preview payload' button + related (#8506)

Also removed associated logic, imports, and styles unique to this button.

* Add changes file
2022-11-17 11:43:28 -08:00
RachelElysia
40d787aec9
Fleet UI: URL routes for dashboard platforms (#8689) 2022-11-17 10:45:35 -05:00
Gabriel Hernandez
e7616dd422
refactor activity items and add query name to live_query activity type (#8740) 2022-11-17 14:25:40 +00:00
Jan Christian Grünhage
8fee954dba
fix: check device mounted at filesystem root for encryption (#8719) 2022-11-15 10:50:58 -05:00
Tomas Touceda
9a801dec8d
detect void as a linux platform as well (#8717)
Co-authored-by: Jan Christian Grünhage <jan.christian@gruenhage.xyz>
2022-11-15 12:26:18 -03:00
Martin Angers
7f519e44d2
Add migration to drop gigs/percent disk space from hosts (#8646) 2022-11-15 08:27:40 -05:00
Martin Angers
f3c7a37813
Support Windows and Ubuntu in osquery-perf (#8616) 2022-11-15 08:24:40 -05:00
Luke Heath
af0c75e08b
Prepare for 4.23.0 (#8663) 2022-11-14 14:42:21 -08:00
Martin Angers
54bb5448a0
Fix missing valid properties in validation of FIM and YARA agent options (#8707) 2022-11-14 15:50:41 -05:00
Gabriel Hernandez
2a98d87ee7
style fixes for code editor and query sidepanel table dropdown (#8702)
* fix jumping active line for code editor

* fix table styles in query sidepanel table dropdown
2022-11-14 17:20:58 +00:00
RachelElysia
4e9ac903e3
Fleet UI: App settings styling (#8529)
Co-authored-by: Luke Heath <luke@fleetdm.com>
2022-11-11 16:12:00 -05:00
RachelElysia
d05ed9bcca
Fleet UI: Software filter renders even without software version (#8680) 2022-11-11 16:04:28 -05:00
Michal Nicpon
9ad1721efd
fix issue with duplicate vulns detected using nvd (#8613)
The OVAL analyzer falsely assumes that any vulnerabilities detected on a
host only come from OVAL. However, it is possible that NVD detects
vulnerabilities on these hosts even though it excludes software from
deb_packages and rpm_packages. For example, a python package twisted
v22.20 has a vulnerability CVE-2022-39348 detected by NVD. The OVAL
analyzer would delete this vulnerability, and it would be re-inserted by
the NVD scanner on the next run. This creates a loop.

The fix is to only delete vulnerabilities that are actually detected
using OVAL. We already store this in the source column in the
software_cve table.
2022-11-10 10:28:00 -07:00
RachelElysia
3a9f45d6f8
Fleet UI: Filter by low disk space hosts on various platforms (#8647) 2022-11-10 09:27:23 -05:00
Gabriel Hernandez
139a462ebe
fix UI to only show munki card on host details for mac machines (#8657) 2022-11-10 14:26:12 +00:00
Gabriel Hernandez
443153a5d5
UI polish and style fixes for query pages (#8643)
* polish manage query page styles

* fix pencil icon spacing on query and policy edit form

* increase gutter style for edtior

* truncate long table names in table dropdown on query sidebar

* add change file
2022-11-10 11:00:06 +00:00
Zach Wasserman
efbe4c0777
Update Go to 1.19.3 (#8525) (#8614)
Co-authored-by: Tomas Touceda <chiiph@gmail.com>
2022-11-08 13:03:23 -03:00
RachelElysia
a7ca66576b
Fleet UI: Update error copy for opening add host modal without an enroll secret (#8586) 2022-11-08 10:06:58 -05:00
Frank Sievertsen
0dbbad8e10
Exclude windows servers from mdm aggregation and lists (#8585) 2022-11-08 10:29:40 +01:00
Frank Sievertsen
4743d31870
Support low_disk_space filter for endpoint /labels/{id}/hosts (#8598) 2022-11-08 09:19:34 +01:00
RachelElysia
6921e43bb7
Host details page: Surface disk encryption information (#8437) 2022-11-07 16:51:03 -05:00
Gabriel Hernandez
e71307e11a
add passed policies column to inherited policies table. Add new colors and add to icons. (#8524)
* Merge branch 'main' of https://github.com/fleetdm/fleet into chore/testing-docs-on-contribution
add passing columns to inherited policies table

* add updated colors and applied them to icons

* change policy tables to use buildQueryString
2022-11-07 17:13:11 +00:00
RachelElysia
9f160c058f
Fleet UI: Surface how to override modifying agent options that are invalid (#8561) 2022-11-04 09:21:37 -04:00
RachelElysia
caf3a6e5ef
Fleet UI: Live query icons bugs (#8568) 2022-11-04 09:14:18 -04:00
Tomas Touceda
5d3e27d169
Use tx instead of writer within withTx style code to prevent deadlocks (#8554) 2022-11-03 10:57:50 -03:00
Martin Angers
7fbe394b94
Ingest disk encryption flag for hosts, return in GET /hosts/{id} endpoint (#8526) 2022-11-02 15:44:02 -04:00
RachelElysia
6b1589fe8a
Fleet UI: Editing team(s) using fleetctl added to activities (#8538) 2022-11-02 14:19:05 -04:00
Mo Zhu
74b8e29cfe
add arch and linuxmint to list of linux distros (#8532)
* add arch and linuxmint to allowlist of linux distros

* fix comma in array

* refer to list of linux distros, not allowlist
2022-11-01 16:24:59 -07:00
Michal Nicpon
1571837d75
initialize empty slice for host counts usage statistics (#8510) 2022-11-01 15:49:02 -06:00
RachelElysia
373378cdd6
Fleet UI: Dropdown and dashboard styling fixes (#8448) 2022-11-01 16:09:57 -04:00
RachelElysia
797ea6c707
Fleet UI: Host/Software pages styling fixes (#8474) 2022-11-01 15:59:26 -04:00
Martin Angers
8f21e026e3
Fix bug with fleetctl apply for teams, clear agent options only if key is present (#8508) 2022-11-01 15:22:45 -04:00
Gabriel Hernandez
bcfd000adf
integration test device user page with mock and custom renderer (#8475) 2022-11-01 18:59:40 +00:00
Frank Sievertsen
baa1ddc0f2
Add MDM detection for windows and mdm endpoints (#8479) 2022-11-01 18:22:07 +01:00
Gabriel Hernandez
97415f0091
UI Polish for Login and forgot password pages. (#8494)
* fix margin on login form controlls

* fix margin and type on forgot password page
2022-11-01 11:39:02 +00:00
Juan Fernandez
53e112d264
Feature 7494: Use the MSRC security bulletin artifacts for detecting Win OS vulnerabilities (#7889)
Use the MSRC security bulletin artifacts for detecting Win OS vulnerabilities
2022-10-28 11:12:21 -04:00
Michal Nicpon
3801f1c6d1
improve primary ip host detail query (#8407)
Previously, the primary ip was determined using the interface with the most traffic. This had a few issues and required explicitly filtering out certain interfaces that we don't want eg loopback, docker.

Instead, use the default route to determine the primary (private) ip. If there are multiple, use the one with the lowest metric and prefer ipv4 addresses.
2022-10-27 16:34:49 -06:00
Marcelo Menéndez Vázquez
124dbc0065
Improve ingress template in Helm Chart (#8420)
* Improve ingress template for more customization

* Add ingress configuration, remove no longer needed fields

* Add _helpers.tpl for better usability

* Add changes file

* Bump Chart version to 5.0.0
2022-10-27 13:09:31 -04:00
Marcos Oviedo
131cc7eeec
Orbit MSI installer now includes the necessary manifest file to use windows_event_log as a logger_plugin. (#8343)
* Orbit MSI installer now includes the necessary manifest file to use windows_event_log as a logger_plugin
2022-10-27 10:19:30 -03:00
Martin Angers
49e910270b
Add vulnerability scores to Jira/Zendesk tickets for premium users (#8346) 2022-10-26 10:42:09 -04:00
RachelElysia
1aaf2d0b06
Fleet UI: Update styling of tooltips and modals (#8436) 2022-10-26 09:10:20 -04:00
RachelElysia
97b4d1f3fb
Fleet UI: Option to show public IP address in hosts table (#8425) 2022-10-25 11:56:09 -04:00
gillespi314
51e6369653
Fix password reset request expiration (#8246) 2022-10-25 09:46:41 -05:00
Martin Angers
461f85e332
Add premium-specific preview screenshots for integrations' vulnerability tickets (#8423) 2022-10-25 08:09:27 -04:00
Marcos Oviedo
8b77939494
Fixed an Orbit MSI installer bug that caused Orbit files not to be removed during uninstallation (#8333) 2022-10-25 09:00:37 -03:00
gillespi314
881194b3b4
Add orbit version and osquery version usage statistics (#8229) 2022-10-24 11:12:56 -05:00
Martin Angers
e19191161e
Validate team spec unknown keys (#8265) 2022-10-24 08:49:44 -04:00
Juan Fernandez
9444016571
Fixed bug with CPE matching, UTM.app was matching to the incorrect CPE (#8149)
Fixed bug with CPE matching, UTM.app was matching to the incorrect CPE.
2022-10-24 12:46:18 +00:00
Noah Talerman
90f5fbb63a
Prepare for 4.22 (#8253) 2022-10-21 11:24:13 -07:00
Michal Nicpon
3f3c0b34c4
fix missing host when ordering by display name (#8376) 2022-10-20 14:56:58 -06:00
RachelElysia
0faa546f17
Fleet UI: Consistency between global and team agent options forms (#8334) 2022-10-20 13:39:47 -04:00
Gabriel Hernandez
55bf0cea6a
change label filter dropdown icon match status dropdown and extend icon component (#8337) 2022-10-19 17:44:27 -05:00
RachelElysia
5de3e571ae
Fleet UI: Truncated cells have responsive size tooltips, hides default browser tooltip (#8300) 2022-10-19 11:32:55 -04:00
Gabriel Hernandez
efad41e578
fix 500 when no software on device/:token page (#8292) 2022-10-18 17:50:59 +01:00
RachelElysia
bca8567e9e
Fleet UI: Host table defaults to 100 hosts per page (#8290) 2022-10-18 11:11:19 -04:00
Frank Sievertsen
7c3d9f007a
return http status 400 for bad json request body (#8287) 2022-10-18 14:43:16 +02:00
Martin Angers
323620bf39
Deep-clone the appconfig when getting from cache (#8194) 2022-10-17 15:03:49 -04:00
Roberto Dip
e4cd25f4aa
fix a bug causing features to be false (#8240)
Related to https://github.com/fleetdm/fleet/issues/8010 and https://github.com/fleetdm/fleet/issues/8013 this prevents a bug that happens when:

1. A team doesn't have a `config.features` key in the JSON stored in the table or `config` is `NULL`
2. The team is edited from the UI

All `config.features` will default to `false`, which can be a problem if your global settings are `true` for both (which is the default)
2022-10-14 19:27:37 -03:00
RachelElysia
c04ebbc490
Fleet UI: Missing host and low disk space filters on dashboard and manage host page (#7728) 2022-10-14 15:21:30 -05:00
RachelElysia
3eaceec64d
Fleet UI: App-wide use of host's display_name (#8169) 2022-10-14 14:26:15 -05:00
gillespi314
59876d37ea
Add usage statistics to measure policy violations (#8199) 2022-10-14 13:55:37 -05:00
Gabriel Hernandez
a950e9d095
Feat/update query doc sidepanel (#8214)
* create new components for query side panel

* add reusable icon component that uses svg for icons

* integrate with new osquery_fleet_schema.json data

* update UI to work with osquery_fleet_schema.json

* add remark-gfm to safely support direct urls in markdown

* move fleet ace into markdown component so we can render code with ace editor

* add testing for new query sidebar

* remove incomplete tests for query sidepanel
2022-10-14 17:45:57 +01:00
Lucas Manuel Rodriguez
c16ab5f823
Fix undetected missing migrations (#8228) 2022-10-14 13:26:04 -03:00
RachelElysia
7804406aa8
Fix mdm enrollment status api call (#8218) 2022-10-14 09:29:40 -05:00
RachelElysia
5084ea2783
Fleet UI: Select all fix on table checkboxes (#8198) 2022-10-13 09:29:30 -04:00
RachelElysia
564a25883f
Fleet UI: Fix padding between multiple enroll secrets (#8193) 2022-10-13 09:28:59 -04:00
Martin Angers
fae8e4ca2c
Translate the AppConfig and Team validation messages to be more user-friendly (#8171) 2022-10-12 17:10:50 -04:00
Juan Fernandez
6939af045d
Fleet desktop should use lightweight endpoint for getting failing policies count (#8159)
Fleet desktop should use lightweight endpoint for getting failing policies count
2022-10-12 17:13:43 -03:00
Juan Fernandez
91ea7bf244
Vulnerabilities not detected if NVD CVE feed is unavailable or rate limited (#8191)
If there is any problem when synching NVD source, proceed with vuln scan
2022-10-12 15:09:18 -04:00
Juan Fernandez
72cfdac634
Only ingest installed deb_packages (#8160)
Only ingest deb_packages with status = 'install ok installed'
2022-10-12 14:27:07 -04:00
Roberto Dip
4042f8d826
add browser-related security headers to HTML responses (#8180)
related to #8031, this adds the following headers to HTML responses:

- Strict-Transport-Security: informs browsers that the site should only
  be accessed using HTTPS, and that any future attempts to access it
  using HTTP should automatically be converted to HTTPS.
- X-Frames-Options: disallows embedding the UI in other sites via
  <frame>, <iframe>, <embed> or <object>, which can prevent attacks like
  clickjacking.
- X-Content-Type-Options: prevents browsers from trying to guess the MIME
  type which can cause browsers to transform non-executable content into
  executable content.
- Referrer-Policy: prevents leaking the origin of the referrer in the
  Referer.

additionally, this ensures we set `X-Content-Type-Options` for CSV and
installer responses.
2022-10-12 10:19:21 -03:00
Martin Angers
d321cfc68e
Add inherited policies to the team's list policies response payload (#8068) 2022-10-12 08:35:36 -04:00
Lucas Manuel Rodriguez
42c47a6fa7
Add missing return to ingestKubequeryInfo (#8178)
* Add missing return to ingestKubequeryInfo

* No need to log error twice
2022-10-12 09:00:49 -03:00
Tomas Touceda
d912376f02
Handle tcp read timeouts (#8163)
* Handle tcp read timeouts properly

* Add changes file

* Fix bad mini refactor after nailing the test

* Update based on review

* Update comment
2022-10-11 13:58:52 -03:00
RachelElysia
7de1b847ea
Fleet UI: Host's software details links to software, improved responsiveness (#8080) 2022-10-11 09:27:20 -04:00
Roberto Dip
e630fabf89
token rotation for fleet desktop (#7779)
This implements what's described in detail here https://github.com/fleetdm/fleet/blob/main/proposals/fleet-desktop-token-rotation.md
2022-10-10 17:15:35 -03:00
gillespi314
ca379e7459
Fix directIngestOSWindows error in query ingestion for non-Windows hosts (#8148) 2022-10-10 13:27:15 -05:00
RachelElysia
6d94472224
Fleet UI: Move status from route param to query param (#8035) 2022-10-10 14:07:47 -04:00
Gabriel Hernandez
bc194d18c7
Feat/update live query states (#8122)
* add awaitng results state to live query search

* make spinner more reusable and add it to query page awaiting results

* create common QueryResultsHeader component to use on query policy flows
2022-10-10 15:39:49 +01:00
Frank Sievertsen
1eacecf637
Add new missing value to existing status URL parameter at the GET /hosts endpoint (#7916) 2022-10-10 07:45:39 -04:00
Frank Sievertsen
b25e74b285
add missing_30_days_count to host_summary response (#7915) 2022-10-08 08:58:27 -04:00
Frank Sievertsen
e9f7066d87
7135 host display name (#7873) 2022-10-08 08:57:46 -04:00
Roberto Dip
bfe698d090
cleanup all policy memberships for a host on re-enrollment (#8120)
Related to #7664, this cleans up all policy memberships for a host when its re-enrolled, afterwards only the relevant policy memberships for the host will be created.
2022-10-07 11:36:17 -03:00
RachelElysia
34088aaab9
Fleet UI: /login route redirects to /dashboard if logged in (#8102) 2022-10-06 13:33:32 -04:00
RachelElysia
92d6161edb
Fleet UI: Clarify last fetched and last seen time on Manage Host Page (#8087) 2022-10-06 09:15:40 -04:00
Noah Talerman
e98941aeaf
Prepare for 4.21.0 (#8011)
This PR addresses the instructions under number (1) in the releasing Fleet steps: https://fleetdm.com/docs/contributing/releasing-fleet#what-to-do

- Update CHANGELOG
- Bump versions
2022-10-05 13:18:22 -07:00
Martin Angers
c23a15394e
Keep created_at timestamp of existing enroll secrets (#8062) 2022-10-05 08:35:36 -04:00
RachelElysia
ee2f28e890
Fleet UI: Rename to machine serial and private IP address (#8074) 2022-10-04 13:35:32 -04:00
RachelElysia
69ee2bd4c1
Fleet UI: Update create team name suggestions (#8073) 2022-10-04 13:35:15 -04:00
Zach Wasserman
44dc5ab175
Add handling for Apple Team ID in Notarization (#7991)
Fleet's Notarization workflows no longer work without this argument, so this is added as an optional argument for Notarization.
2022-10-04 09:48:21 -07:00
gillespi314
e3590beaf7
Ingest ReleaseId from Windows registry (#8030) 2022-10-04 10:34:08 -05:00
RachelElysia
fe9effa575
Update Docs: Add file carving and links to permissions documentation (#8064) 2022-10-04 11:12:10 -04:00
RachelElysia
01654925c7
Fleet UI: Add optional tooltip delay used on compatibility tooltip (#8065) 2022-10-04 10:03:51 -04:00
Juan Fernandez
812d3c85de
Fixes various bugs with NVD vulnerability detection (#7963)
- Improved NVD CPE matching process.
- Fixed bug with the 'software/<id>' endpoint not showing the generated_cpe value.
2022-10-04 07:04:48 -04:00
Frank Sievertsen
a5912bedea
API Bugs: Team view (fleet/teams/{id}) #6970
Fix host_count and user_count being always returned as `0` in `teams/{id}` endpoint.
2022-10-04 09:26:04 +02:00
Lucas Manuel Rodriguez
a4d7e81475
Orbit to support environments with revoked enroll secrets (#8056)
* Support environments with revoked enroll secrets

* Add instructions on how to fix Orbit enroll

* Rename to last_recorded_error

* Add alternative instructions
2022-10-03 17:28:19 -03:00
Roberto Dip
c0bb0cc4e7
avoid panic when storing a nil pointer in cached_mysql (#8020)
related to #7420, this improves the logic of the clone function in cached_mysql to properly handle nil and nil pointers.
2022-10-03 13:29:20 -03:00
Roberto Dip
cd2ab6b17c
add server side validation for emails (#8022)
related to https://github.com/fleetdm/fleet/issues/7199, this adds email validation to the `verifyCreateShared` which is used for user creation in the server.

validation messages come directly from Go's `net/mail` package.

```
~/fleet $ curl 'https://localhost:8080/api/latest/fleet/users/admin' -X POST -H 'Authorization: Bearer $TOKEN' --data-raw '{"email":"asdf","name":"asdf@asd.com","password":"as;lkdfjasdlk;fja3234@","global_role":"observer","teams":[]}'
{
  "message": "Validation Failed",
  "errors": [
    {
      "name": "email",
      "reason": "mail: missing '@' or angle-addr"
    }
  ]
}
```
2022-10-03 13:29:01 -03:00
Martin Angers
8eee0b35f3
Add validations for agent options' command-line flags section. (#7979) 2022-10-03 08:29:41 -04:00
Gabriel Hernandez
64fa2bafe4
fix sso input values with leading or trailing spaces by adding trimming (#8000)
* add trimming to sso form data values

* add sso login failure error message on login form
2022-09-30 14:59:43 +01:00
gillespi314
2a6895b015
Log user email upon successful SSO login (#8012) 2022-09-29 09:25:45 -05:00
RachelElysia
7cdc2e2027
Fleet UI: Helpful team agent errors (#8001) 2022-09-28 13:31:44 -04:00
Gabriel Hernandez
7147859de1
fix label filter showing under table header and adding no custom filter state (#7998) 2022-09-28 15:12:37 +01:00
RachelElysia
b9046da481
Fleet UI: Print mode fixed (#7982) 2022-09-27 21:05:12 -04:00
RachelElysia
0291a709e2
Fleet UI Bug Fix: Error adding integration doesn't clear fields (#7988) 2022-09-27 21:04:19 -04:00
gillespi314
749ff9ec2b
Add logging to capture user email upon successful login (#7927)
* Log user email upon successful login

* Add user email to logger context

* Use logging.With Extras for login email
2022-09-27 16:32:46 -03:00
Martin Angers
142e298631
Update osquery validations from 5.4.0 to 5.5.1 (#7960) 2022-09-27 08:35:57 -04:00
Juan Fernandez
d7ca8fcd66
Reverted changes made to Fleet Desktop - should not use the lightweight 'desktop' endpoint (#7919)
Reverted changes made to Fleet Desktop. Desktop should not use the lightweight 'desktop' endpoint
2022-09-23 15:18:19 -04:00
Sharvil Shah
7d4e2e2b4b
Orbit remote management for flags (#7246)
Co-authored-by: Roberto Dip <dip.jesusr@gmail.com>
2022-09-24 00:30:23 +05:30
Gabriel Hernandez
fca5ad3158
add edit agent options activity text (#7695) 2022-09-23 12:05:07 -04:00
RachelElysia
b23374ad16
Fleet UI: Placeholder text vertical padding (#7828) 2022-09-23 10:44:14 -04:00
Martin Angers
5477acb688
Add low_disk_space_count property to GET /host_summary (#7872) 2022-09-21 15:56:17 -04:00
Martin Angers
db24cf32fa
Add new low_disk_space URL parameter to the GET /hosts endpoint (and GET /hosts/count) (#7853) 2022-09-21 15:16:31 -04:00
Zach Wasserman
bdad9ac1d3
Use Group SID on fleetctl on Windows (#7854)
This is intended to allow packages to be built on localizations other than English.

See #5065.

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
2022-09-21 11:39:26 -07:00
RachelElysia
eacc75b585
Fleet UI: Add es_process_file_events, password_policy, windows_update_history to osquery tables (#7831)
* Add es_process_file_events to osquery tables

* Correct change file

* Add password_policy and windows_update_history to fleet/frontend/osquery_tables

* Update changelog
2022-09-20 08:52:53 -04:00
RachelElysia
299a4e54fc
Fleet UI: Dashboard summary tiles clickable with new component (#7826) 2022-09-19 16:47:43 -04:00
RachelElysia
f98e9885ef
Fix side panel scroll issue (#7829) 2022-09-19 15:30:03 -04:00
Martin Angers
478b4d3f69
Validate team and appconfig payloads, with dry-run and force modes (#7731) 2022-09-19 13:53:44 -04:00
Roberto Dip
15c93f02ea
add retry logic for native notarization and codesigning (#7806)
Related to #7130, this adds logic to retry native notarization up to three times if it fails for some reason.

Since we're adding retries in various places, I added a new package under pkg for this purpose.
2022-09-19 13:08:39 -03:00
Noah Talerman
dab45f1180
Prepare for 4.20.1 (#7783) 2022-09-15 14:28:23 -05:00
Zachary Winnerman
a1a80c775f
Upgrade database to mysql 8 compatible (#7703)
* Upgrade database to mysql 8 compatible

* fixup

* Added changelog for mysql8 upgrade
2022-09-15 13:29:59 -04:00
Juan Fernandez
4ef883b311
Feature 6946: Fleet Desktop should use minimal api end-point for data (#7536)
Updated desktop client to use new EE desktop endpoint.
2022-09-15 12:12:50 -04:00
RachelElysia
7a5663bebf
Fleet UI: Disable save host status without required dropdowns selected (#7759) 2022-09-15 12:03:28 -04:00
Zach Wasserman
486b67caca
Add initial support for kubequery (#6863)
Configuration and fixes for the Fleet server and frontend to add support
for https://github.com/Uptycs/kubequery.

Co-authored-by: Michal Nicpon <michal@fleetdm.com>
2022-09-15 10:02:17 -06:00
RachelElysia
b32f2b04aa
Fleet UI: Fix styling on query modal buttons (#7756) 2022-09-14 11:38:25 -05:00
Juan Fernandez
765031d962
Bug 6717: Duplicate calls on vulnerability third party integrations. (#7698)
If the same vulnerability was present in more than one software, then duplicated third party integration calls were being issued.
2022-09-13 10:41:52 -04:00
Juan Fernandez
b60d535d4a
Feature 7084: Add new EE endpoint for Fleet Desktop (#7530)
Added new EE endpoint, that is meant to be used by Fleet Desktop only. The new endpoint will return the number of failed policies.
2022-09-12 15:37:38 -04:00
Juan Fernandez
14d0499c4b
Bug 7682: Fixed issue with migration not running on MariaDB (#7701)
Update migration to account for different FK name under MariaDB.
2022-09-12 15:36:55 -04:00
Juan Fernandez
98e4d6e0bc
Feature 7394: Use MSRC parser to generate security bulletin artifacts (#7491)
Generate security artifacts using the MSRC parser.
2022-09-12 15:17:13 -04:00
Gabriel Hernandez
eb06ef8049
simplify TeamsDropdown component and update ManageHostPage to keep po… (#7606)
* simplify TeamsDropdown component and update ManageHostPage to keep policy filter across team change

* fix TeamDropdown for users not on global team
2022-09-12 16:18:12 +01:00
RachelElysia
7fa483d847
Indicate hoverable text with grey font (#7655) 2022-09-12 11:00:39 -04:00
Frank Sievertsen
dd8cf37a85
#7624 accept empty bearer authorization token. (#7685)
* Fix #7624 accept empty bearer authorization token.

* add changes file
2022-09-12 16:09:41 +02:00
Noah Talerman
26b610dde4
Prepare for 4.20.0 (#7651) 2022-09-09 16:01:03 -05:00
Martin Angers
988f50fa34
Document all keys in config and team YAML documents (#7449)
- Add a new "Configuration for contributors" doc page. Move settings that are not recommended for production use
- Remove settings modified in the `config` YAML document from the deploying/configuration doc page
- Document all keys in `config` and `teams` YAML documents
- Add comments to several `.go` files and remove unused struct
2022-09-08 17:57:38 -04:00
Roberto Dip
740aafd817
Revert token rotation (#7628)
This reverts all changes related to token rotation.
2022-09-08 15:04:02 -03:00
Martin Angers
5809348164
Update hostsEnrolledByOperatingSystem examples to match actual platform/version values (#7621) 2022-09-08 11:08:03 -05:00
RachelElysia
cd8e42ba82
Fleet UI: Fix bug to view more than 20 teams (#7623) 2022-09-08 11:13:20 -04:00
RachelElysia
13cb716674
Fleet UI: Update software automation preview payload modal (#7607) 2022-09-07 14:09:25 -04:00
RachelElysia
b6c63af55f
Fleet UI: Fix add host button disappearing (#7600) 2022-09-07 09:37:58 -04:00
Roberto Dip
9174c7c711
token rotation for Fleet Desktop (#7517)
See https://github.com/fleetdm/fleet/issues/6348 for a very detailed rundown

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
2022-09-06 20:25:29 -03:00
Juan Fernandez
b6d084deec
Feature 7559: Include 3rd party severity scores in the vulnerability web-hook payload (#7581)
Premium users should receive vulnerability scores as part of the web-hook payload.
2022-09-06 15:12:17 -04:00
RachelElysia
88d70954f7
Fleet UI: Bug fix, flakey count rerender (#7590) 2022-09-06 11:41:53 -04:00
RachelElysia
4083aefd8e
Fleet UI: Bug fix user page pagination (#7584) 2022-09-06 11:40:20 -04:00
Juan Fernandez
e86aa9d99b
Bug 7465: Bump out of date migrations (#7478)
Bump out of date migrations
2022-09-06 10:58:10 -04:00
Martin Angers
aa0102d6b6
Remove aggregate host counts from GET /hosts responses (#7510) 2022-09-06 10:34:06 -04:00
RachelElysia
f9737cdb48
Fleet UI: macOS dashboard Munki issues (#7096) 2022-09-02 17:05:07 -05:00
RachelElysia
55b844715d
UI: Consistent code for anchor elements, specifically external links (#6542) 2022-09-02 15:28:42 -04:00
RachelElysia
9f0f1fbe29
Fleet UI Bug: Fix double scroll bar from tooltip rendering off page (#7567) 2022-09-02 15:27:03 -04:00
RachelElysia
c0a947e948
Fleet UI: Fix welcome to fleet button styling (#7541) 2022-09-02 14:11:21 -04:00
gillespi314
26753ef62b
Add issues count to GET /labels/{id}/hosts response (#7381) 2022-09-02 09:13:53 -05:00
RachelElysia
3e310ba150
Fleet UI: Fix bug with label sidebar not collapsing (#7402) 2022-09-01 17:42:25 -04:00
Noah Talerman
15a7f8a18c
Prepare for 4.19.1 (#7453) 2022-09-01 12:14:44 -05:00
Michal Nicpon
0709d1bc5c
improve vuln cpe matching on macos (#6985)
* add cpe translations
* fix matching on target_sw
2022-09-01 10:02:07 -06:00
Gabriel Hernandez
8c017c3ef0
add error message when setup fails on registration page (#7395)
* add error message when setup fails on registration page

* add test for error

Co-authored-by: Luke Heath <luke@fleetdm.com>
2022-08-31 17:17:27 +01:00
RachelElysia
2f10e53082
Fleet UI: Fix clearing filters on manage host page (#7466) 2022-08-31 08:31:21 -07:00
Juan Fernandez
2699c22143
Feature 7077: Add MSRC feed parser (#7424)
Added parser for MSRC
2022-08-30 16:39:50 -04:00
Juan Fernandez
87717df1da
Bug 7441: Upgrading to 4.19.0 might fail due to migration (#7446)
* Make Change software vendor width mig. more robust

If there are two or more entries in the software table with the same name, version, source, release and arch but different vendors then the migration used for increasing the vendor width will fail.
2022-08-30 11:20:48 -04:00
gillespi314
8157359f84
Ingest Windows host display version for hosts table (#7403) 2022-08-30 10:16:48 -05:00
Roberto Dip
eeefe2fab9
enable controlled rollout of features by teams (#7408) 2022-08-30 08:13:09 -03:00
RachelElysia
5f088148e5
Fleet UI: Show SQL of scheduled queries (#7277) 2022-08-29 12:11:30 -07:00
Martin Angers
f602ea3446
Provide Munki issues for MacOS hosts (#7280) 2022-08-29 14:40:16 -04:00
RachelElysia
e64dd73b54
Fleet UI: Button loading spinners (#7124)
Co-authored-by: Luke Heath <luke@fleetdm.com>
2022-08-29 08:21:37 -07:00
Juan Fernandez
3048a07fd1
Feature 7076: Ingest installed windows updates (#7138)
* Ingest installed Windows updates and store them in the windows_updates table. 
* Added config option for enabling/disabling Windows update ingestion and Windows OS vuln. detection.
2022-08-26 14:55:03 -04:00
RachelElysia
aa3c70be92
Fleet UI: Label errors (#7406) 2022-08-26 07:55:21 -07:00
RachelElysia
0fff51ed96
Fleet UI: Fix updating filters resetting to page 1 (#7348)
Co-authored-by: Sarah Gillespie <sarahgillespi314@gmail.com>
2022-08-25 14:18:13 -07:00
Roberto Dip
9a1d2066bb
deprecate host_settings in favor of features (#7358)
Related to #7312, this makes use of the changes introduced in #7353 to rename host_settings to features while keeping backwards compatibility.
2022-08-25 13:41:50 -03:00
RachelElysia
fc7e666476
Fleet UI: Update agent options in-page documentation (#7255) 2022-08-24 15:28:55 -05:00
Martin Angers
1ed6512c5b
Implement retries when building MSI on Apple M1 architecture (#7367) 2022-08-24 14:52:32 -04:00
Juan Fernandez
0fab2fe0eb
Feature 6538: Remove cpe_id from the software_cve table (#6587)
* Don't insert dummy values for non-match CPEs, exclude OVAL platforms when getting software iterator.
* Removed CPEID from SoftwareVulnerability type and software_cve.cpe_id column.
* Removed GeneratedCPEID property
2022-08-24 13:10:58 -04:00
Juan Fernandez
7b612aa030
Bug 7320: Fixed dulp. vulns. on software details. (#7342)
* Bug 7320: Fixed dulp. vulns. on software details.

The software details page was showing duplicated vulnerabilities if the software was being used by many hosts.
2022-08-24 09:45:20 -04:00
Gabriel Hernandez
041920bcaf
Implement dropdown for label filters on manage hosts page (#7300)
* add label filter dropdown to the manage host page table

* increase label filter select width

* improve responsive styling for manage host page
2022-08-24 13:38:43 +01:00
Martin Angers
dfd7d3f244
Add activity types for applied team spec and edited agent options (#7355) 2022-08-24 08:32:45 -04:00
Noah Talerman
5ad3f9a2d6
Prepare for 4.19.0 (#7346)
- Add CHANGELOG
- Bump versioning
- Remove `changes/` files
2022-08-23 15:13:01 -04:00
RachelElysia
5e8f46da73
Fleet UI: Manage Host Page disable next on pagination of if on last page of results (#7356) 2022-08-23 10:29:44 -07:00
gillespi314
7fb109e6b3
Handle errors for duplicate os records (#7294) 2022-08-22 14:34:00 -05:00
RachelElysia
5aa265bc30
Fleet UI: Fix Safari button focus state 2022-08-22 09:10:18 -07:00
RachelElysia
59a6e6e4b5
Fleet UI: Fix default perpage edge cases to 20 (#7331) 2022-08-22 08:46:50 -07:00
Juan Fernandez
2932ea0899
Bug 7332: Include software without CPE entries (#7334)
When listing software for performing vuln. detection include software without CPE entries.
2022-08-22 11:45:17 -04:00
Juan Fernandez
4013cbbdfc
Feature 6975: Populate vendor column in software inventory (#7297)
- Populate 'software.vendor' when ingesting software from Windows hosts.
- Increate width of 'software.vendor'.
2022-08-18 18:02:56 -04:00
Zachary Winnerman
2103de275a
improve error handling in vulnerabilities cron (#7276)
* improve error handling in vulnerabilities cron

* fix tests

* Use errHandler and go mod tidy

* Add dep that got removed by mod tidy

* add dsl to tools

* Add changes file

Co-authored-by: Michal Nicpon <michal@fleetdm.com>
Co-authored-by: Tomas Touceda <chiiph@gmail.com>
2022-08-18 16:53:58 -03:00
RachelElysia
de6e9b7a26
Fleet UI: Remove dead space on queries table platform (#7260) 2022-08-17 14:38:07 -04:00
RachelElysia
18852aae66
Fleet UI: macOS dashboard MDM solutions (#7014)
Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
2022-08-15 17:47:07 -05:00
gillespi314
8d4ad6ce9f
Enhanced UI for host operating systems to include additional information for Windows and macOS (#7201) 2022-08-15 16:39:00 -05:00
RachelElysia
7c793fdc7d
Remove underline from 2 cancel buttons, add changelog (#7216) 2022-08-15 16:57:00 -04:00
RachelElysia
9f8ccd8113
Fleet Sandbox: Login for sandbox redirects to sandbox's login url (#7220) 2022-08-15 16:29:57 -04:00
RachelElysia
41ea58e8c3
Fleet Sandbox: Logout actually logs out of sandbox (#7213) 2022-08-15 15:59:02 -04:00
Roberto Dip
5371e9c927
add UI and documentation for JIT provisioning (#7189)
Related to #7054 and #6834, this adds the UI changes necessary to support JIT provisioning:

    A checkbox in the settings page
    A new template for the activity box

This also includes relevant documentation about the feature and how to configure it.
2022-08-15 15:26:55 -03:00
RachelElysia
9c7d2cfa60
Fleet UI: Set default pagination length to 20 (#7165) 2022-08-15 13:00:06 -04:00
gillespi314
90f57f4849
Enhance API endpoints with host operating systems info (#7154) 2022-08-12 14:23:25 -05:00
Zach Wasserman
acf60189ff
Add message for fleetctl when prepare commands are used (#7152) 2022-08-11 12:26:52 -07:00
Juan Fernandez
8dccc42027
Bug 5983: Performance issues when listing software (#6879)
Improve performance when listing software by using the software_host_counts aggregate table.
2022-08-10 17:43:22 -04:00
Martin Angers
c8cdddf0ea
Update /macadmins endpoints to include MDM name and aggregate count (#7137) 2022-08-10 15:15:01 -04:00
gillespi314
e2194be61c
Add schedule package and refactor cron jobs for cleanups, aggregations, and usage statistics (#6618) 2022-08-10 11:00:56 -05:00
Martin Angers
9755eb2e27
Support async saving of scheduled query statistics (#7012) 2022-08-10 10:01:05 -04:00
gillespi314
3a88afaf98
Add new database tables and queries for host operating systems (#6920) 2022-08-09 13:34:41 -05:00
Gabriel Hernandez
a0ae8eb77c
normalise styling on setting pages for sandbox mode messaging and integrations (#7114) 2022-08-09 10:45:42 -05:00
Gabriel Hernandez
34749e377f
fix sandbox expiration styling on host details (#7110) 2022-08-09 15:13:31 +01:00
RachelElysia
73d0299af9
Fleet UI: Schedule frequency units, Convert seconds to units using date-fns (#7102) 2022-08-09 10:00:09 -04:00
Gabriel Hernandez
01d5d14f82
Fix navigation to teams settings sandbox (#7094) 2022-08-08 13:39:08 -05:00
Gabriel Hernandez
4cd4a7759b
fix for expiry message message (#7093)
this fixes the expiry message label and also makes the whole message a link
2022-08-08 15:17:52 +01:00
RachelElysia
4b2a8db537
Fleet UI: Fix localized tooltip alignment (#7072) 2022-08-08 08:52:01 -04:00
Roberto Dip
6fead4c08d
better handling of path differences for MSI installers (#7035)
Related to #7036, Tested in:

- [x] macOS via `fleetctl package --type=msi` (non-native)
- [x] Linux native via `docker run -v "$(pwd)" fleetdm/fleetctl package --type=msi` (native)
- [x] Windows via `fleetctl pacakge --type=msi` (thanks to @edwardsb) (non-native)
2022-08-05 17:12:05 -03:00
RachelElysia
44bbaebf68
Fleet UI: Back to host from details page keeps filters applied (#7027) 2022-08-04 13:03:18 -04:00
RachelElysia
931564f2d3
Frontend / UI: Update naming UI button, frontend table components (#7056) 2022-08-04 12:56:30 -04:00
RachelElysia
a84c7d6754
Dashboard UI: macOS operating system and munki card stack at lower widths (#7033) 2022-08-04 11:05:53 -04:00
RachelElysia
7a035c42c6
Fleet UI: Hitting enter global modal parameter, rename modals to match UI (#6939) 2022-08-04 11:05:11 -04:00
Juan Fernandez
966bfbf85e
Feature 6487: Deprecate cpe_id from software_cve table (#6562)
Part 2/3 of the removal of the cpe_id column from the software_cve table in favor of using the newly added software_id coumn.
2022-08-04 09:24:44 -04:00
Martin Angers
012869f971
Fleet Premium: de-anonymize usage stats (#7013) 2022-08-03 14:44:34 -04:00
RachelElysia
9bf0266bad
Fleet UI: Small screen overlay (#7023) 2022-08-03 09:12:07 -04:00
Artemis Tosini
b56d2e452e
Stop the previous desktop agent when updating on macOS. Fixes #6441 (#7015) 2022-08-02 17:03:14 -04:00
RachelElysia
c8c2dd97d3
Remove retries for Welcome to Fleet host (#6999) 2022-08-02 10:09:59 -04:00
Martin Angers
c1d38598e2
Prevent removing team enroll secrets when applying team specs without new secrets (#6890) 2022-08-02 09:51:03 -04:00
Katheryn Satterlee
4bcd14dc83
Fleet 4.18.0 changelog (#6951) 2022-08-01 13:39:13 -07:00
Zach Wasserman
6002324139
Bring 4.17.1 changelog into main (#6901) 2022-08-01 10:50:40 -07:00
RachelElysia
c8367eaf32
Fleet UI: Welcome to Fleet and Learn Fleet render conditionally for roles (#6958) 2022-07-28 15:33:31 -07:00
RachelElysia
4631e4eeaa
Fleet UI: Sentence casing, typo (#6942) 2022-07-28 14:54:01 -04:00
RachelElysia
c029177087
Fleet UI: External gravatar link open in new tab (#6911) 2022-07-27 09:59:21 -04:00
RachelElysia
45b8ba2675
Fleet UI: Align dropdown cursors, buttons (#6886) 2022-07-27 08:51:45 -04:00
RachelElysia
8792acb1ec
Readable copy message, fix modal cta button alignment (#6877) 2022-07-27 08:21:16 -04:00
RachelElysia
96925f9cf1
Fleet UI: Fix jumpy action dropdown (#6891) 2022-07-27 08:19:05 -04:00
RachelElysia
5a0f4eb318
Packs UI: Update osquery releases on add/edit query pack dropdown (#6888) 2022-07-26 15:27:56 -04:00
RachelElysia
fbbe4bb1e6
Fleet UI: Align checkboxes (#6873) 2022-07-26 08:15:57 -04:00
Gabriel Hernandez
7a1317432b
Add expiry time warning in sandbox mode (#6830)
* create a MainContent and SidePanelContent containers for layout

this creates these two new components for handling layout more cleanly. It also allows us to put in common components into main layout, like sandbox expiration notification

* use MainContent and SidePanelContent in current pages

this brings in the two new components and wraps the page contents in these. This also allowed us to clean up and remove unused/no needed styling code

* add MainContent component to user settings page and clean up user settings component

this cleans up the user settings page to follow the panel convention we have as well as adds the MainContent component to this page

* add MainContent component to team pages

* update Sandbox gate to render optional component when in sandbox mode and add to MainContent

* add call to sandbox api to get expiry time

this adds a conditional call when the user is in sandbox mode to get the expiry time of the instance

* fix sticky elements on settings pages to work with sandbox expiry message

* fix e2e test after MainContent refactor
2022-07-26 13:05:57 +01:00
RachelElysia
fb76123b16
Fleet Desktop UI: Add device user error for invalid token (#6850) 2022-07-26 06:36:33 -04:00
Desmi-Dizney
a7585e3cec
Editor pass - Fix double quote usage in sql query (#6862)
This has been edited for copy.
2022-07-25 18:29:29 -05:00
RachelElysia
08485b3a5c
Sandbox UI: Homepage, CTA to add personal device (#6775) 2022-07-25 16:42:03 -04:00
RachelElysia
8d3de2a70a
Data table UI: Fix several ellipses to appear at end of cell only (#6829) 2022-07-25 16:26:52 -04:00
RachelElysia
f00647379e
UI: Fix disabled cursor with/without tooltip (#6846) 2022-07-25 16:22:00 -04:00
RachelElysia
6ec08b405b
Manage Host UI: Convert uptime column to last restarted (#6812) 2022-07-25 09:37:12 -04:00
RachelElysia
3915a5294b
Software details UI: Fix horizontal scroll off viewport (#6811) 2022-07-22 14:03:06 -04:00
RachelElysia
acdf46314e
Device User UI: Update policy banners (#6825) 2022-07-22 12:15:23 -04:00
gillespi314
406004894a
Update placeholder text for select targets search box (#6826) 2022-07-22 11:13:37 -05:00
Juan Fernandez
af80406b59
Bug 6777: Make the regexp used for detecting the oval platform major, min versions more permissive (#6800)
When getting the major/minor version for OVAL processing, handle the LTS post-fix for Ubuntu platforms
2022-07-21 12:55:07 -04:00
Desmi-Dizney
013f201602
Editor pass - Add UI for Fleet Sandbox to download prepackaged installers (#6771)
Editor pass for:
-  https://github.com/fleetdm/fleet/pull/6721
2022-07-21 10:44:47 -05:00
Desmi-Dizney
0c424524fc
Update issue-6597-add-sandbox-config (#6753)
Editor pass for:
-  https://github.com/fleetdm/fleet/pull/6619
Sending to @RachelElysia for review.
2022-07-21 10:37:53 -05:00
gillespi314
0312454f4c
Modify host battery health returned by GET /hosts/:id (#6782) 2022-07-20 21:16:03 -05:00
gillespi314
cc34585a47
Add statistics for number of hosts that have not submitted results for distributed queries (#6495) 2022-07-20 20:54:10 -05:00
Michal Nicpon
e3e17f3389
Fix double quote usage in sql query (#6707) 2022-07-20 10:10:03 -06:00
gillespi314
4792d7a759
Add UI for Fleet Sandbox to download prepackaged installers (#6721) 2022-07-19 14:28:06 -05:00
Gabriel Hernandez
f4b20b6ae5
Add SandboxGate to fleet UI that gates functionality when in sandbox mode (#6738) 2022-07-19 19:55:47 +01:00
Zach Wasserman
710c304d94
Apply password requirements to admin-created users (#6667)
This was requested by a customer.
2022-07-19 09:47:25 -07:00
RachelElysia
2de047b888
Logout of sandbox redirects to marketing site (#6726) 2022-07-19 11:43:57 -04:00
RachelElysia
da1868d6ae
Host Details Page: Correct software vulnerabilities count (#6729) 2022-07-19 11:43:04 -04:00
RachelElysia
009d860076
Live Query UI: Fix results count title (#6719) 2022-07-18 10:18:57 -04:00
gillespi314
3aa64f93ba
Add isSandboxMode to AppContext (#6704) 2022-07-18 09:13:23 -05:00
Juan Fernandez
5b90d11c85
Bug 6508: Don't show non-CVE entries (#6686)
Only include vulnerabilities (CVEs) in Fleet UI and API
2022-07-18 09:23:32 -04:00
RachelElysia
b058365c4e
UI: Spiffier tooltip (#6642) 2022-07-15 15:10:35 -04:00
RachelElysia
6b4af5b70b
Pack UI: Do not abbreviate packs frequency units (#6665) 2022-07-15 15:08:20 -04:00
RachelElysia
53c2221103
Edit User UI: Converting a user to SSO provides new password of null (#6689) 2022-07-15 14:38:19 -04:00
RachelElysia
c80cb324a4
Edit User UI: Fix bug related to editing multiple users (#6664) 2022-07-14 16:09:56 -04:00
RachelElysia
fb32520866
Live query UI: Fix export bug (#6659) 2022-07-14 12:21:26 -04:00
RachelElysia
9ce5ef2f59
Host Details Page UI: Granulated disk space levels (#6586) 2022-07-14 10:21:36 -04:00
Roberto Dip
7e68ee2253
add configuration to retrieve installers from S3 (#6630)
Related to #6365, this adds relevant configuration to the packaging key to retrieve installers from S3.
2022-07-13 09:34:25 -03:00
Roberto Dip
6faee84f57
allow to configure a default global enroll secret (#6609)
Related to #6365 this adds a new config to set a global enroll token that will be used by the server.
2022-07-12 19:12:10 -03:00
Tomas Touceda
7f8099db57
Add sandbox fleet serve config (#6619)
* Add sandbox fleet serve config

* Update docs

* Maybe fix lint issues

* Add lint dep
2022-07-12 18:21:15 -03:00
Tomas Touceda
af0cf9b703
Add rate limits for device authed endpoints (#6529)
* Add rate limits for device authed endpoints

* Fix lint

* Add missing test

* Fix test

* Increase the quota for desktop endpoints

* Add comment about quota
2022-07-11 10:49:05 -03:00
Katheryn Satterlee
b9d749f37b
Changelog for Fleet 4.17.0 release (#6565) 2022-07-08 17:09:02 -07:00
RachelElysia
83d1941d80
Update osquery tables to report corrected platforms (#6554) 2022-07-08 12:01:03 -04:00
Zach Wasserman
f12d3069bd
Make universal binary for Desktop on macOS (#6535)
#4420
Uses Unlicensed code from randall77 to do the "lipo".
2022-07-07 12:12:33 -07:00
Juan Fernandez
ab8cde6371
Feature 6454: Add software_id column to software_cve table (#6489)
Added software_id to software_cve in preparation for the removal of the cpe_id column.
2022-07-07 10:22:10 -04:00
RachelElysia
ed33a031db
Fleet UI: Host details / Device user page last restart time bug (#6500) 2022-07-06 13:56:31 -04:00
RachelElysia
1e4b76e6fd
Query builder UI: Add docker_container_envs table (#6510) 2022-07-06 13:05:53 -04:00
Luke Heath
943a1188f1
Add battery health to host details (#6472) 2022-07-05 12:17:51 -07:00
Luke Heath
1c6c379f4d
Improve loading states (#6471) 2022-07-05 12:10:53 -07:00
Lucas Manuel Rodriguez
700bb9aa98
Fix Datastore.HostByIdentifier to set SeenTime (#6484)
* Fix Datastore.HostByIdentifier to set SeenTime

* Add changes file
2022-07-05 08:08:43 -03:00
RachelElysia
7ad989d7c0
Dashboard UI: Update error states (#6382) 2022-07-01 10:21:25 -04:00
Zach Wasserman
db22f68c88
Separate health checks for MySQL and Redis (#6468)
This required a bit of refactoring of some mocking due to how the code
generation does not handle having the same function in different types.
2022-07-01 08:08:03 -03:00
Zach Wasserman
974c8e008d
Improve logging for fleetctl with permissions errors (#6460) 2022-06-30 13:24:19 -07:00
RachelElysia
fd3300a962
Host Details UI: Fix software table column width, caret alignment (#6411) 2022-06-30 10:46:05 -04:00
RachelElysia
be2c65ebe1
Login UI: Center vertical alignment, align with forgot password box (#6397) 2022-06-30 10:44:05 -04:00
RachelElysia
9367464d20
Fleet Desktop Device User Page: Remove unnecessary API call (#6427) 2022-06-30 10:42:41 -04:00
RachelElysia
9bfb43b2cf
Fix alignment for dropdown's placeholder and search text (#6395) 2022-06-29 09:49:27 -04:00
Martin Angers
b9930930f5
Document the device-authenticated endpoints in API for Contributors (#6406) 2022-06-29 08:12:20 -04:00
Roberto Dip
b2d07e56b5
report error analytics (#6341)
Related to #5898, this reports an anonymized summary of errors stored in Redis into the analytics payload.

For each error stored, this includes:

- A `count` attribute with the number of occurrences of the error
- A `loc` attribute with the 3 topmost lines in the stack trace. Note that stack traces only contain package name + line number (example: github.com/fleetdm/fleet/server.go:12

This also includes a minor refactor around error types.
2022-06-28 16:31:14 -03:00
Martin Angers
539be8ee09
Add battery info in host details response (#6394) 2022-06-28 14:11:49 -04:00
gillespi314
58892fee2e
Fix false negatives for os version policies generated by UI (#6375) 2022-06-24 12:42:51 -05:00
gillespi314
b6a816fe52
Remove last keyword from UI SQL parser config (#6362) 2022-06-24 10:19:06 -05:00
Juan Fernandez
79bf51b03c
Feature 6242: Use oval to detect vulnerabilities on Fedora hosts (#6330)
* Feature 6242: Scan Fedora hosts using OVAL definitions
2022-06-24 11:02:51 -04:00
Juan Fernandez
9d01ba33c6
Feature 6096: Scan RHEL/CentOS hosts using OVAL definitions (#6241)
Extended the OVAL parser/analyzer so that we can scan RHEL based systems.
2022-06-23 16:44:45 -04:00
gillespi314
15de4f3e65
Update Fleet host detail query so os_version for Ubuntu hosts reflects accurate patch number in point release (#6360) 2022-06-23 15:24:18 -05:00
Luke Heath
e16010f1f9
Improve SSO error messaging (#6339) 2022-06-23 10:32:20 -07:00
gillespi314
2715f8eb32
Add fixtures for software and vulnerabilities end-to-end tests (#6337) 2022-06-23 10:01:37 -05:00
Martin Angers
8f66a50f2b
Add hosts enrolled by operating system to anonymous usage stats (#6329) 2022-06-22 16:38:11 -04:00
Roberto Dip
2948e112f6
ensure software_host_counts is cleaned when software is deleted (#6270)
Related to #5982, this ensures we clean up software_host_counts rows referencing software that is not longer present in the software table.
2022-06-22 17:35:53 -03:00
Martin Angers
dc9e158153
Add weekly active users count in anonymous usage stats (#6317) 2022-06-22 15:20:57 -04:00
Martin Angers
7bfe93f5d7
Include an error code as query string in /sso/callback response in case of failure (#6286) 2022-06-21 09:04:50 -04:00
Roberto Dip
984605f630
store count alongside unique error instances in Redis (#6232)
Related to #4972, this adds a new key, error:<hash>:count to Redis in order to keep track of how many times each instance of an error occurred.
2022-06-21 08:43:53 -03:00
Katheryn Satterlee
865ab32d03
Prepare for 4.16.0 release (#6256) 2022-06-20 20:55:33 -07:00
Luke Heath
546ef0746a
Fix actions popup alignment on user management page (#6246) 2022-06-16 08:29:27 -07:00
Desmi-Dizney
845e9e6e0e
Editor pass - Track active hosts count and enforce limit (#6224)
This has been edited for copy.
2022-06-14 14:58:34 -04:00
Desmi-Dizney
55d1e338cb
Editor pass - Improve live query UX (#6201)
Editor pass for:
-  https://github.com/fleetdm/fleet/pull/5749
2022-06-14 14:55:59 -04:00
gillespi314
21837ed8ac
Enable ticket workflow for failing policies automation (#6066) 2022-06-13 18:21:24 -05:00
gillespi314
7621a0b290
Show count of visible results after a column is filtered on live query page (#6199) 2022-06-13 18:20:57 -05:00
Martin Angers
81f0e0ccfa
Track active hosts count and enforce limit (#6099) 2022-06-13 16:29:32 -04:00
Roberto Dip
19c5e3545b
add a dedicated endpoint that redirects to fleet_desktop.transparency_url (#6204)
As part of https://github.com/fleetdm/fleet/issues/5947, and in order to have a simplified workflow in Fleet Desktop, we defined https://github.com/fleetdm/fleet/issues/6200 to add a new endpoint that redirects to the transparency url as defined in the config (for premium users only)

```
~/projects/fleet $ curl -v -s https://localhost:8080/api/latest/fleet/device/bf34ab98-23b0-48bc-8e82-8c0143cba11c/transparency
* Connection state changed (MAX_CONCURRENT_STREAMS == 250)!
< HTTP/2 307
< content-type: application/json; charset=utf-8
< location: https://fleetdm.com/transparency
< content-length: 0
< date: Mon, 13 Jun 2022 18:09:29 GMT
<
* Connection #0 to host localhost left intact
```
2022-06-13 16:07:08 -03:00
Luke Heath
7822666603
Improve password recovery flow (#6185) 2022-06-13 07:51:37 -07:00
Lucas Manuel Rodriguez
515454e47f
Fix no such table errors for mdm & munki_info in vanilla osquery macOS hosts (#6170)
* Add discovery queries for mdm and munki_info

* Add changes file

* Amend discovery table tests
2022-06-13 08:52:33 -03:00
gillespi314
c146ea4aa4
Add new "Fleet Desktop" section to global settings page (#6161) 2022-06-11 12:23:02 -05:00
Roberto Dip
18de43f35b
fix fleetctl debug commands on Windows (#6186)
As reported in #6127, the `fleetctl debug` `archive` and `errors` commands were failing on Windows because filenames are not allowed to contain colons `:`.

This changeset removes colina from the filename of the archives generated by both commands.
2022-06-10 21:59:44 -03:00
gillespi314
44f902218c
Improve live query UX (#5749) 2022-06-10 13:29:45 -05:00
gillespi314
a3ab5646f5
Add new fleet_desktop property to config object (#6151) 2022-06-10 10:39:02 -05:00
Tomas Touceda
a15101601c
Use the improved users query everywhere (#6126)
* Use the improved users query everywhere

* Filter out users without a home dir
2022-06-09 17:18:28 -03:00
Tomas Touceda
fc215610a4
Allow users to customize detail queries for troubleshooting purposes (#6150)
* Allow users to customize detail queries for troubleshooting purposes

* Address review comments
2022-06-09 10:33:49 -03:00
gillespi314
db7424282b
Add software details page (#6089) 2022-06-08 14:01:38 -05:00
Juan Fernandez
ef73039559
Improve vulnerability detection for Ubuntu (#6102)
Feature: Improve our capability to detect vulnerable software on Ubuntu hosts

To improve the capability of detecting vulnerable software on Ubuntu, we are now using OVAL definitions to detect vulnerable software on Ubuntu hosts. If data sync is enabled (disable_data_sync=false) OVAL definitions are automatically kept up to date (they are 'refreshed' once per day) - there's also the option to manually download the OVAL definitions using the 'fleetctl vulnerability-data-stream' command. Downloaded definitions are then parsed into an intermediary format and then used to identify vulnerable software on Ubuntu hosts. Finally, any 'recent' detected vulnerabilities are sent to any third-party integrations.
2022-06-07 21:09:47 -04:00
Martin Angers
0b5fcd8e27
Add support for custom headers in fleetctl (#6118) 2022-06-07 16:00:09 -04:00
Roberto Dip
19f995d3b5
only include policies in device endpoints for premium users (#6077)
This removes policy information from `GET /api/_version_/fleet/device/{token}` from non-premium Fleet instances.

Starting the server with `./build/fleet serve --dev --dev_license`

```bash
$ curl -s https://localhost:8080/api/latest/fleet/device/1804e808-171f-4dda-9bec-f695b2f2371a | jq '.host.policies // "not present"'
[
  {
    "id": 3,
    "name": "Antivirus healthy (Linux)",
    "query": "SELECT score FROM (SELECT case when COUNT(*) = 2 then 1 ELSE 0 END AS score FROM processes WHERE (name = 'clamd') OR (name = 'freshclam')) WHERE score == 1;",
    "description": "Checks that both ClamAV's daemon and its updater service (freshclam) are running.",
    "author_id": 1,
    "author_name": "Roberto",
    "author_email": "test@example.com",
    "team_id": null,
    "resolution": "Ensure ClamAV and Freshclam are installed and running.",
    "platform": "darwin,linux",
    "created_at": "2022-05-23T20:53:36Z",
    "updated_at": "2022-06-03T13:17:42Z",
    "response": ""
  }
]
```

Starting the server with `./build/fleet serve --dev`

```bash
$ curl -s https://localhost:8080/api/latest/fleet/device/1804e808-171f-4dda-9bec-f695b2f2371a | jq '.host.policies // "not present"'
"not present"
```
2022-06-07 13:27:13 -03:00
Martin Angers
a23e0c41ff
Support failing policies integrations (#5973) 2022-06-06 10:41:51 -04:00
Luke Heath
9651539f75
Update API token modal to include more information (#5994) 2022-06-02 18:03:03 -05:00
Luke Heath
0530a86b7c
Fix device page redirect on expired token (#5976) 2022-06-02 17:56:26 -05:00
gillespi314
5d68a1fead
Add probability of exploit (EPSS score) to Software page in Fleet Premium (#5925) 2022-06-02 17:32:13 -05:00
Lucas Manuel Rodriguez
33bb7886b6
Add automation for orbit shell (with TUF) (#5856)
* fix old root dir in orbit

* add changes

* Add automation for orbit shell (with TUF)

* Fix workflow syntax

* Add logging to latest fleetctl preview action

* Add changes to fix workflow

* Use macOS host for TUF server and package generation

* Remove copy/paste if clause

* Fix orbit logs on macOS, Ubuntu

* Simplify TUF and generation of packages

* Set enroll secret instead of getting it

* Increase timeouts

* Add step id

* Fixes to the upload/download of artifacts

* Rearrange steps to not lose the downloads

* Fix copy/paste

* Add fleetctl login step

* Add missing config set

* Fix quotes on Windows

* Increase timeout

* Fix job termination

* Disable FLEET_DESKTOP for now

* Checkout repository on macOS

* Fix logs path

* Enable fleet desktop

* Use cancel, nitpick

Co-authored-by: Michal Nicpon <michal@fleetdm.com>
2022-06-01 13:54:16 -03:00
Michal Nicpon
30a864c8d2
Sync CVE scores periodically (#5838) 2022-06-01 10:06:57 -06:00
Roberto Dip
eb8defdcbe
add premium, device authed endpoint to retrieve policies (#5967)
This adds a new device authenticated endpoint, `/api/_version_/fleet/device/{token}/policies` to retrieve the device policies.

An example request / response looks like:

```bash
curl  https://localhost:8080/api/latest/fleet/device/1804e808-171f-4dda-9bec-f695b2f2371a/policies
```

```json
{
  "policies": [
    {
      "id": 3,
      "name": "Antivirus healthy (Linux)",
      "query": "SELECT score FROM (SELECT case when COUNT(*) = 2 then 1 ELSE 0 END AS score FROM processes WHERE (name = 'clamd') OR (name = 'freshclam')) WHERE score == 1;",
      "description": "Checks that both ClamAV's daemon and its updater service (freshclam) are running.",
      "author_id": 1,
      "author_name": "Admin",
      "author_email": "admin@example.com",
      "team_id": null,
      "resolution": "Ensure ClamAV and Freshclam are installed and running.",
      "platform": "darwin,windows,linux",
      "created_at": "2022-05-23T20:53:36Z",
      "updated_at": "2022-05-23T20:53:36Z",
      "response": "fail"
    }
  ]
}
```

Related to [#5685](https://github.com/fleetdm/fleet/issues/5685), in another changeset I will be adding "client" endpoints so we can consume this endpoint from Fleet Desktop
2022-05-31 14:54:43 -03:00
Lucas Manuel Rodriguez
98be6cfc29
Improve Fleet Desktop "My Device" menu item UX at install time (#5915)
* Improve Fleet Desktop My Device link availability

* Use svc.clock and add test

* Revert change and add check for LastEnrolledAt on tests
2022-05-31 12:56:51 -03:00
Michal Nicpon
a652292d0f
Don't return orphaned software from the API (#5840) 2022-05-30 09:23:27 -06:00
Roberto Dip
fc7a045209
ensure previous host membership policies are deleted on enrollment (#5890)
Related to #5776, this ensures that when a host is re-enrolled on a different team we cleanup existing policy memberships in the same way we do when a host is assigned a team through the API.
2022-05-30 10:30:15 -03:00
Roberto Dip
5b1ea0f079
update changelog for v4.15.0 (#5951) 2022-05-27 17:52:06 -03:00
Noah Talerman
d17a8151b4
Prepare for 4.15.0 (#5858)
Co-authored-by: Katheryn Satterlee <me@ksatter.com>
Co-authored-by: Zach Wasserman <zach@fleetdm.com>
2022-05-27 16:50:20 -03:00
gillespi314
baeff6e893
Add validation for pack scheduled query interval (#5918) 2022-05-26 16:54:21 -05:00
Michal Nicpon
6083b180a6
fix duplicate hosts in vuln webhook (#5843) 2022-05-25 11:40:12 -06:00
gillespi314
85c6ca0e5f
Improve precision in reporting of unseen hosts via host status webhook automations (#5889) 2022-05-25 10:54:56 -05:00
Sharvil Shah
0e01b11994
osquery changelog (#5853)
Co-authored-by: Noah Talerman <noahtal@umich.edu>
2022-05-24 19:16:21 +05:30
Luke Heath
b1028465e1
Export hosts to CSV with selected columns (#5841) 2022-05-23 22:46:40 -05:00
gillespi314
78b1a60a0d
Add bundle identifier to Software page UI (#5868) 2022-05-23 17:08:44 -05:00
gillespi314
546986787a
Remove iptables from UI (#5869) 2022-05-23 17:08:30 -05:00
Michal Nicpon
4398644185
Fix root dir detection when using orbit shell (#5844)
* fix old root dir in orbit

* add changes
2022-05-23 16:47:46 -03:00
Martin Angers
56ce1649ee
Add issues and device_mapping output to CSV export (#5864) 2022-05-23 15:35:05 -04:00
gillespi314
bbc1891420
Add ability to see Google Chrome profiles on the Hosts page (#5839) 2022-05-23 14:27:30 -05:00
gillespi314
2db2c16511
Include MIA hosts under total count for Offline hosts (#5854) 2022-05-23 14:11:02 -05:00
Desmi-Dizney
fc3b887481
Editor pass - Include CVE scores when listing software (#5834)
* Editor pass - Include CVE scores when listing software

Editor pass for:
-  https://github.com/fleetdm/fleet/pull/5673

* Update REST-API.md
2022-05-23 10:22:58 -05:00
Michal Nicpon
983f9e59b3
Include CVE scores when listing software (#5673) 2022-05-20 10:58:40 -06:00
Desmi-Dizney
a5ae8dce0e
Editor pass (#5809)
Comma no longer fits our style guide.
2022-05-20 09:32:46 -04:00
gillespi314
8e333509b1
Add license object to GET /fleet/device/{token} response (#5820) 2022-05-19 16:28:49 -05:00
gillespi314
4a4e832d3a
Increase minimum password length to 12 characters (#5712) 2022-05-18 12:03:00 -05:00
Desmi-Dizney
c4962a2463
Editor pass - Add label information to host summary response (#5753)
* Editor pass - Add label information to host summary response

Editor pass for:
-  https://github.com/fleetdm/fleet/pull/5573

* Update issue-4738-host-summary
2022-05-18 10:52:29 -05:00
Luke Heath
c52604cfb7
Add policies to my device page (#5787) 2022-05-18 10:27:03 -05:00
Luke Heath
8eeeebb19f
Add more loading spinners to async actions (#5742) 2022-05-17 14:14:09 -05:00
Desmi-Dizney
34dccc7b16
Editor pass - Support async saving of hosts' last seen time (#5751)
Editor pass for:
-  https://github.com/fleetdm/fleet/pull/5640
2022-05-17 13:59:51 -05:00
Desmi-Dizney
a9c3b55db6
Editor pass - don't clear errors automatically when reading them from Redis (#5748)
This has been edited for content and copy.
2022-05-17 11:44:15 -04:00
Desmi-Dizney
a595ed8dca
Editor pass - Changes - issue-3399-last-used-column (#5763)
This has been edited for content and copy.
2022-05-17 09:56:37 -04:00
Desmi-Dizney
0346c1d392
Editor pass - Changes - issue-4738-host-summary (#5764)
This has been edited for content and copy.
2022-05-17 09:56:16 -04:00
Desmi-Dizney
a703ffeb15
Editor pass - Changes - issue-5103-export-hosts-csv-columns (#5765)
This has been edited for content and copy.
2022-05-17 09:55:55 -04:00
Desmi-Dizney
1bbdbd3a65
Editor pass - Changes - issue-5188-zendesk-ui-added (#5766)
This has been edited for content and copy.
2022-05-17 09:55:32 -04:00
Desmi-Dizney
26d1ae3a39
Editor pass - Changes - issue-5493-5497-safari-table-bugs (#5767)
This has been edited for content and copy.
2022-05-17 09:55:07 -04:00
Desmi-Dizney
698093a1bc
Editor pass - Changes - issue-5504-improve-debug-output (#5768)
This has been edited for content and copy.
2022-05-17 09:54:35 -04:00
Desmi-Dizney
376d10b4c1
Editor pass - Changes - issue-5536-async-host-last-seen (#5769)
This has been edited for content and copy.
2022-05-17 09:53:56 -04:00
Desmi-Dizney
1f5274d8de
Editor pass - Changes - issue-5536-configure-async-tasks-per-task (#5770)
This has been edited for content and copy.
2022-05-17 09:53:29 -04:00
Desmi-Dizney
8c79422a33
Editor pass - Changes - issue-5625-create-new-user-password (#5771)
This has been edited for content and copy.
2022-05-17 09:52:39 -04:00
Desmi-Dizney
42f47e5606
Editor pass - Changes - issue-use-local-system-user-on-msi (#5772)
This has been edited for content and copy.
2022-05-17 09:51:49 -04:00
Roberto Dip
a6a97f31cf
add documentation for debug tools (#5737)
This adds documentation about our debugging endpoints and a brief excerpt about the fleetctl debug command with instructions to generate the archive so we have a place with instructions to which we can direct people.

It also adds the .prof file extension to profiling files, which hopefully clarifies that they are meant to be used by go tool pprof.
2022-05-17 10:00:47 -03:00
Roberto Dip
32cc4c4641
allow fleetctl preview to work with docker compose v1 and v2 (#5755)
This adds compatibility in `fleetctl preview` to work with docker compose (version 2). Since this version was released this April, we are still keeping backwards compatibility and using docker-compose as a fallback.

As v2 is now the recommended version and v1 is deprecated, this also rewords all prompts and help messages to say "docker compose".

Rel: #5746
2022-05-16 18:06:29 -03:00
Martin Angers
e6b90ca8b9
Support per-task configuration for async host processing configuration (#5700) 2022-05-16 09:44:50 -04:00
Lucas Manuel Rodriguez
961f0ffc10
Use LocalSystem user instead of nt authority/system on MSI (#5729) 2022-05-13 06:42:40 -03:00
Luke Heath
a6b2d2413a
Add last used column to host details software table (#5681) 2022-05-12 11:34:46 -05:00
Luke Heath
9b857d0233
Set selection header width on tables, fix queries icon (#5703) 2022-05-12 09:23:06 -05:00
RachelElysia
34a2d3e483
UI Zendesk integrations (#5356) 2022-05-10 21:33:30 -05:00
Martin Angers
f05d2be767
Produce hosts' CSV report based on requested columns (#5656) 2022-05-10 14:25:53 -04:00
gillespi314
d172128183
Add label information to host summary response (#5573) 2022-05-10 10:32:55 -05:00
Martin Angers
1fa7bb7a19
Support async saving of hosts' last seen time (#5640) 2022-05-10 11:29:17 -04:00
Roberto Dip
cba78bdcd1
don't clear errors automatically when reading them from Redis (#5623)
this change prevents errors from being automatically cleared once they are read. A new flag `-flush` is introduced to flush errors on read if necessary.
2022-05-10 11:44:43 -03:00
Roberto Dip
33a482448b
improve messaging of fleetctl debug errors and archive commands (#5590)
Related to https://github.com/fleetdm/fleet/issues/5504, this change attempts to improve the output of the `fleetctl debug errors` command by:

- Adding a warning message to redact sensitive data
- Adding a `json` extension to the output file
- Allowing to stream the output to stdout via the `-stdout` flag or the `STDOUT` env var

The output after this changes is:

```
~/projects/fleet $ ./build/fleetctl debug errors
################################################################################
# WARNING:
#   The generated file may contain sensitive data.
#   Please review the file before sharing.
#
#   Output written to: fleet-errors-2022-05-05T12:46:42-03:00.json
################################################################################
```

It also modifies the output of `fleetctl debug archive`

```
################################################################################
# WARNING:
#   The files in the generated archive may contain sensitive data.
#   Please review them before sharing.
#
#   Archive written to: fleet-profiles-archive-2022-05-05T12:46:59-03:00.tar.gz
################################################################################
```
2022-05-10 10:44:06 -03:00
Noah Talerman
12b1a159b5
Prepare for 4.14.0 (#5589)
* Add changelog and bump versions

* Update changelog

* Bump version in example Kubernetes YAML

* Add last_opened_at entry to changelog
2022-05-09 18:14:01 -03:00
RachelElysia
e3c0e2d3b5
Fix password reset redux auth token issue (#5630)
Co-authored by: Sarah Gillespie <sarahgillespi314@gmail.com>
2022-05-09 10:16:35 -05:00
RachelElysia
55d2cf1f10
Integrations Page: Remove edit integration from UI, Render duplicate error message, Unique integration naming convention (#5577) 2022-05-06 12:31:11 -04:00
RachelElysia
36feff8456
App Settings Page: fix checkbox/dropdown validations (#5602) 2022-05-06 08:41:39 -04:00
RachelElysia
974d1fed42
Create integration UI: FE validation for https protocol (#5586) 2022-05-05 17:08:18 -04:00
RachelElysia
b85105113f
UI bug fix: Mac details > Software tooltip shows correctly on hover (#5597) 2022-05-05 16:47:09 -04:00
RachelElysia
1899db5202
Integration page can update to empty array (#5593) 2022-05-05 14:04:34 -04:00
Desmi-Dizney
93a4fec9ba
Editor pass - fix SELinux issue (#5576)
Editor pass for: https://github.com/fleetdm/fleet/pull/5335/files
2022-05-05 10:50:58 -05:00
Lucas Manuel Rodriguez
b6bbbbe186
Add (beta) support for Fleet Desktop to linux (#5221)
* Add (beta) support for Fleet Desktop to linux

* Add dependency for linux desktop

* Amend makefile uname check

* Clarify env vars used for linux in execuser

* Add final set of fixes

* Remove -it from docker run

* Add desktop to the update runner for Linux

* Re-arrange tag.gz and fix upgrade check for linux desktop
2022-05-04 11:14:12 -03:00
gillespi314
991c7ccadc
Add device_mapping to GET /hosts response (#5383) 2022-05-02 16:34:14 -05:00
gillespi314
1dabf52834
Add Zendesk external service integration for vulnerability automations (#5372) 2022-05-02 15:58:34 -05:00
Michal Nicpon
15c69058bb
fix SELinux issue (#5335)
Install orbit to /opt instead of /var/lib. When installing to /var/lib,
the default selinux context of var_lib_t gets applied, which results in
an AVC error when running via systemd.

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
2022-05-02 12:18:59 -06:00
Martin Angers
ee4dfca476
Use a debug mux to support both fleet-authenticated and token-auth debug paths (#5424) 2022-05-02 08:58:03 -04:00
Martin Angers
5c0031c8f1
Change jira ticket type from Bug to Task (#5426) 2022-05-02 08:56:42 -04:00
Roberto Dip
a4725518ac
filter out Google Chrome profiles without an associated email before ingesting (#5440)
To add support for #400, we're using the macadmins/osquery-extension to gather Google Chrome profiles from hosts.

Under the hood, the extension looks and parses a json file in which Chrome stores a bunch of data. Given that emails are not required to create Chrome profiles, some of the profiles stored in this file and returned by the query we're using contain empty emails.

The idea after this change is to prevent empty emails from being ingested in the first place instead of filtering them after the fact. I have also included a migration to clean the rows with empty email columns.

Fixes #4780
2022-05-02 09:55:40 -03:00
RachelElysia
0aa8db3a2f
Spiffier UI: Fix empty states (#5395) 2022-04-29 15:59:27 -04:00
Lucas Manuel Rodriguez
f2e8329e57
Changes to support fleetctl preview with custom TUF server (#5418) 2022-04-27 18:17:20 -03:00
Martin Angers
0d0c17e0c6
Add osquery.min_software_last_opened_at_diff configuration option (#5394) 2022-04-27 09:47:09 -04:00
RachelElysia
ced15c2ee3
Bug fix: Display query name when editing a schedule (#5390) 2022-04-26 16:57:11 -04:00
Martin Angers
253baee657
Collect last_opened_at for macOS software, and return it in host details payload (#5376) 2022-04-26 14:16:59 -04:00
RachelElysia
6917331a1b
Host Details Page: Render better messaging for various empty states (#5294) 2022-04-26 14:00:47 -04:00
Michal Nicpon
a64982f96c
Remove use of JSON_ARRAYAGG (#5350)
Not supported in MySQL < 5.7.22
2022-04-25 14:43:08 -06:00
RachelElysia
5d1d963e5c
App Settings Page: All pages rendering as separate components on separate tabs (#5199) 2022-04-21 14:12:42 -04:00
RachelElysia
bed53535bb
Query Results Page: Show query modal (#5165) 2022-04-20 14:12:53 -04:00
Michal Nicpon
9f981f9e49
fleetctl query improve error message (#5141) 2022-04-20 11:35:46 -06:00
Martin Angers
fd0cd153ce
Fix SSO paths to always use /v1/ instead of /latest/ (#5246) 2022-04-20 12:46:45 -04:00
RachelElysia
9ea6fe5efa
New query and new policy: Identify optional fields to users (#5167) 2022-04-20 08:48:47 -04:00
Juan Fernandez
3228e1b5dc
Humanize duration values returned by fleetctl (#5123)
* Bug 5066: Format config durations

Change duration values returned by 'fleetctl get config --include-server-config' from nanoseconds to a human readable format.
2022-04-19 09:29:50 -04:00
Juan Fernandez
2479d58262
Using '@' in target search causes 422 error response (#5148)
* Bug 4852:

When searching for Labels, breakdown query strings containing '@' in multiple search terms to
avoid issues with MySQL FTS.
2022-04-19 09:28:49 -04:00
Lucas Manuel Rodriguez
2e7bbf960a
Add pre and post remove scripts for rpm and deb packages (#5150) 2022-04-19 09:32:47 -03:00
Lucas Manuel Rodriguez
5cb64edae5
Fix deprecation warning message on fleetctl package for deb/rpm (#5147) 2022-04-19 09:32:01 -03:00
Noah Talerman
1d0d92c865
Prepare for 4.13.0 (#5193) 2022-04-18 15:49:19 -07:00
Zach Wasserman
61a4d03f96
Update changelog for Fleet v4.12.1 (#4942) 2022-04-18 14:41:14 -04:00
Lucas Manuel Rodriguez
da171d3b8d
Merge pull request from GHSA-pr2g-j78h-84cr
* Fix access control issues with users

* Fix access control issues with packs

* Fix access control issues with software

* Changes suggested by Martin

* All users can access the global schedule

* Restrict access to activities

* Add explicit test for team admin escalation vuln

* All global users should be able to read all software

* Handbook editor pass - Security - GitHub Security (#5108)

* Update security.md

All edits are recorded by line:

395 replaced “open-source” with “open source”
411 replaced “open-source” with “open source”
439 added “the” before “comment”; replaced “repositories,” with “repositories”
445 deleted “being” before “located”
458 added “and” after “PR”
489 replaced “on” with “in”
493 replaced “open-source” with “open source”; Replaced “privileges,” with “privileges”

* Update security.md

line 479

* Update security.md

added (static analysis tools used to identify problems in code) to line 479

* Fix UI

* Fix UI

* revert api v1 to latest in documentation (#5149)

* revert api v1 to latest in documentation

* Update fleetctl doc page

Co-authored-by: Noah Talerman <noahtal@umich.edu>

* Add team admin team policy automation; fix e2e

* Update to company page of the handbook (#5164)

Updated "Why do we use a wireframe-first approach?" section of company.md

* removed extra data on smaller screens (#5154)

* Update for team automations; e2e

* Jira Integration: Cypress e2e tests only (#5055)

* Update company.md (#5170)

This is to update the formatting under "empathy" and to fix the spelling of "help text."
This was done as per @mikermcneil .
This is related to #https://github.com/fleetdm/fleet/pull/4941 and https://github.com/fleetdm/fleet/issues/4902

* fix update updated_at for aggregated_stats (#5112)

Update the updated_at column when using ON DUPLICATE UPDATE so that
the counts_updated_at is up to date

* basic sql formatting in code ie whitespace around operators

* Fix e2e test

* Fix tests in server/authz

Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
Co-authored-by: Desmi-Dizney <99777687+Desmi-Dizney@users.noreply.github.com>
Co-authored-by: Michal Nicpon <39177923+michalnicp@users.noreply.github.com>
Co-authored-by: Noah Talerman <noahtal@umich.edu>
Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
Co-authored-by: Martavis Parker <47053705+martavis@users.noreply.github.com>
Co-authored-by: RachelElysia <71795832+RachelElysia@users.noreply.github.com>
2022-04-18 10:27:30 -07:00
Lucas Manuel Rodriguez
254c2c0208
Fix policies in standard query library (#5177) 2022-04-15 19:22:48 -03:00
Michal Nicpon
2dbf1d7975
fix update updated_at for aggregated_stats (#5112)
Update the updated_at column when using ON DUPLICATE UPDATE so that
the counts_updated_at is up to date

* basic sql formatting in code ie whitespace around operators
2022-04-15 14:09:47 -06:00
Zach Wasserman
f28d5ab5be
Skip Docker interfaces for host primary IP (#5119)
See #4754
2022-04-13 11:04:38 -07:00
Martin Angers
36702ede8d
Make recent vulnerabilities max age configurable. (#5081) 2022-04-12 14:48:15 -04:00
Katheryn Satterlee
1a103c52c0
Remove required password reset flag when creating new API-only user (#4666)
* Remove required password reset flag when creating new API-only user

* Add test for 'fleetctl user create' command

* Set NewUserFuncInvoked to false in between tests

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
2022-04-12 10:57:57 -03:00
Martavis Parker
3a326cd0ac
Team policy automation (#5004)
* added teams webhook calls

* split global admin and team admin tests; added policy automation

* changes file

* fixed type errors

* fixed e2e test

* fixed typo

* fixed admin test syntax

* fixed test logic for team maintainer

* lint fixes

* more admin e2e test fixes

* fixed team policy test

* removed duplicate test
2022-04-11 14:46:35 -07:00
RachelElysia
2eeb9142b3
UI: Sort live queries/policies (#5060) 2022-04-11 17:17:24 -04:00
Martin Angers
7187f1adac
Queue jobs for Jira integration when enabled and new vulnerabilities are found. (#4975) 2022-04-11 16:42:16 -04:00
Luke Heath
d75cf11cec
Indicate that a policy's data is not yet accurate (#5031) 2022-04-11 15:21:34 -05:00
Martin Angers
5483adc26b
Detect the NOPERM error to mean redis cluster is disabled (#5058) 2022-04-11 16:17:30 -04:00
RachelElysia
d885758a6a
UI: Settings > Integrations tab, Software Vulnerabilities Webhook v. Integration (#4874) 2022-04-11 15:04:41 -04:00
RachelElysia
d1860ad86d
UI: Enter button presses action button for forms/modals (#4939) 2022-04-07 20:07:38 -05:00
gillespi314
1a2123a358
Improve UI responsiveness for tables at narrower screen sizes (#4926) 2022-04-07 14:12:38 -05:00
Lucas Manuel Rodriguez
60b7425bef
Add http basic auth to /metrics (#4974)
* Add http basic auth to /metrics

* Fixes after testing applying of a --config sample.yml

* Add unit test
2022-04-07 09:40:53 -03:00
Tomas Touceda
f2aba83a73
Extend vulnerability age to 30 (#4901) 2022-04-06 11:42:02 -03:00
RachelElysia
5642981086
Homepage & Manage Host Page: Improved empty software messages (#4953) 2022-04-06 10:08:11 -04:00
Martin Angers
193843a97d
Make a test request to Jira when saving AppConfig with an enabled jira integration (#4954) 2022-04-06 07:55:25 -04:00
gillespi314
d6e900db4b
Add macOS version information to UI dashboard (#4719) 2022-04-05 15:04:00 -05:00
Zach Wasserman
bc2137e132
Add optimization to Windows software query (#4952)
This optimizes the query in particular for Domain Controllers, where
there are a number of users with no local accounts and don't need to be
searched for software.

See #4261
2022-04-05 10:56:47 -07:00
Martin Angers
90b15071a4
Introduce API version 2022-04, deprecate use of /global in paths (#4731) 2022-04-05 11:35:53 -04:00
Lucas Manuel Rodriguez
57816592ba
Add read replica testing helpers and fix non-sso login bug (#4908)
not set on the INSERT.
- OUT: Only sets the ID on the passed session and returns it. (`CreatedAt`, `AccessedAt`, are not set.)

New version:

```go
func (ds *Datastore) NewSession(ctx context.Context, userID uint, sessionKey string) (*fleet.Session, error) {
	sqlStatement := `
		INSERT INTO sessions (
			user_id,
			` + "`key`" + `
		)
		VALUES(?,?)
	`
	result, err := ds.writer.ExecContext(ctx, sqlStatement, userID, sessionKey)
	if err != nil {
		return nil, ctxerr.Wrap(ctx, err, "inserting session")
	}

	id, _ := result.LastInsertId() // cannot fail with the mysql driver
	return ds.sessionByID(ctx, ds.writer, uint(id))
}
```

- IN: Define arguments that are truly used when creating a session.
- OUT: Load and return the fleet.Session struct with all values set (using the `ds.writer` to support read replicas correctly).

PS: The new `NewSession` version mimics what we already do with other entities, like policies (`Datastore.NewGlobalPolicy`).
2022-04-04 16:52:05 -07:00
RachelElysia
53ca15e93b
Manage Host Page: Export hosts as CSV (#4917) 2022-04-04 14:53:14 -04:00
RachelElysia
5cce257e1e
Host Details Page: Software vulnerability column (#4836) 2022-04-04 12:33:02 -04:00
RachelElysia
b834e7d2f5
Remove viewing enroll secrets on app settings page, add changelog (#4896) 2022-04-04 12:27:13 -04:00
Lucas Manuel Rodriguez
c82c580716
Orbit: Add Fleet Desktop support to Windows (#4873)
* Orbit: Add Fleet Desktop support to Windows

* Rename workflow, fix linux build

* Do not compile systray on linux

* nolint on unused

* Fix lint properly

* nolint both checkers

* Fix monitor logic in desktopRunner

* Fix interrupt and execute order
2022-04-01 17:28:51 -03:00
Michal Nicpon
d8d582760d
fix rename tmp file (#4862)
Renaming a temporary file to the final destination does not always work.
Specifically, if the source and destination paths are on different file
systems, you will get the following error

 invalid cross-device link

Instead, create temporary file in the destination directory.
2022-04-01 09:03:11 -06:00
Luke Heath
dbaef5a37b
Fix table headers showing or misaligned when selection is active (#4892) 2022-03-31 16:10:11 -05:00
Martin Angers
71f2690ada
Add Jira integrations config support (#4863) 2022-03-30 09:10:02 -04:00
RachelElysia
118ae6499b
UI Accessibility: Ability to tab through app (#4699) 2022-03-28 17:31:36 -04:00
Michal Nicpon
a6902cc083
Add os versions endpoint (#4749) 2022-03-28 09:15:45 -06:00
Noah Talerman
8e9a814d4b
Prepare for 4.12.0 (#4797)
- Update CHANGELOG
- Bump versioning
- Tweak documentation
  - Default `session_duration` to `5d`
  - Add extra `#` to "Team policies" section so it doesn't show up in top level nav for docs
2022-03-24 17:24:08 -07:00
Martin Angers
c4946335ff
Add migration to cleanup host-related tables (#4778)
#4448
2022-03-23 15:22:10 -07:00
Lucas Manuel Rodriguez
eeb73a42db
Fleetctl preview to clean up osquery socket before starting orbit (#4729)
* Fleetctl preview to clean up osquery socket before starting orbit

* Use os.Remove
2022-03-22 18:00:00 -03:00
RachelElysia
dc8921fed1
Remove fleet desktop checkbox (#4730) 2022-03-22 11:23:59 -04:00
gillespi314
eb5c9bf7b7
Add advanced installer info to add hosts modal (#4644) 2022-03-21 17:08:13 -05:00
Michal Nicpon
7b671ac2a3
Add team failing policies webhook (#4633)
* add config to teams
* update api docs
* update tests
2022-03-21 13:16:47 -06:00
Lucas Manuel Rodriguez
ecdfd627b6
Fleet Desktop MVP (#4530)
* WIP

* WIP2

* Fix orbit and fleetctl tests

* Amend macos-app default

* Add some fixes

* Use fleetctl updates roots command

* Add more fixes to Updater

* Fixes to app publishing and downloading

* Add more changes to support fleetctl cross generation

* Amend comment

* Add pkg generation to ease testing

* Make more fixes

* Add changes entry

* Add legacy targets (until our TUF system exposes the new app)

* Fix fleetctl preview

* Fix bool flag

* Fix orbit logic for disabled-updates and dev-mode

* Fix TestPreview

* Remove constant and fix zip-slip attack (codeql)

* Return unknown error

* Fix updater's checkExec

* Add support for executable signing in init_tuf.sh

* Try only signing orbit

* Fix init_tuf.sh targets, macos-app only for osqueryd

* Specify GOARCH to support M1s

* Add workflow to generate osqueryd.app.tar.gz

* Use 5.2.2 on init_tuf.sh

* Add unit test for tar.gz target

* Use artifacts instead of releases

* Remove copy paste residue

* Fleet Desktop Packaging WIP

* Ignore gosec warning

* Trigger on PR too

* Install Go in workflow

* Pass url parameter to desktop app

* Fix fleetctl package

* Final set of changes for v1 of Fleet Desktop

* Add changes

* PR fixes

* Fix CI build

* add larger menu bar icon

* Add transparency item

* Delete host_device_auth entry on host deletion

* Add SetTargetChannel

* Update white logo and add desktop to update runner

* Add fleet-desktop monitoring to orbit

* Define fleet-desktop app exec name

* Fix update runner creation

* Add API test before enabling the My device menu item

Co-authored-by: Zach Wasserman <zach@fleetdm.com>
2022-03-21 14:53:53 -03:00
gillespi314
deeaf9d036
Add ability to detect compatibility and update which hosts are checked for a policy (#4703)
Add new usePlatformSelector custom hook
Add new usePlatformCompatibility custom hook
Add new PlatformSelector global component
Refactor PlatformCompatibility as global component
Refactor sql_tools to TypeScript
Improve type definitions for context/policy
Align PolicyPage and QueryPage with platform compatibility changes
2022-03-21 11:51:00 -05:00
Benjamin Edwards
74bb559645
Add public ip to hosts & derive geolocation when rendering host (#4652)
* geoip wip
* return nil if ip is empty string or if ParseIP returns nil
* add ui component to render geolocation if available, address PR feedback
* render public ip if available
* add changes file, document geoip in deployment guide
* update rest-api docs
2022-03-21 12:29:52 -04:00
RachelElysia
84de0b7db0
Fleet Desktop device user page (#4589) 2022-03-21 09:38:59 -04:00
RachelElysia
d661d23956
New/Edit Packs Page: Fix hover of pack's target selector (#4592) 2022-03-18 16:01:29 -04:00
gillespi314
c12098577b
Add UI for global admin to reset user passwords (#4613) 2022-03-16 11:05:05 -05:00
Lucas Manuel Rodriguez
d2ba34c8fc
Add distributed discovery query support for detail queries, add orbit… (#4597)
* Add distributed discovery query support for detail queries, add orbit_info ingestion

* Amend changes file
2022-03-15 16:51:00 -03:00
Martin Angers
bb678b6b2e
Add support for downloading a list of hosts in CSV format (#4596) 2022-03-15 15:14:42 -04:00
Lucas Manuel Rodriguez
f4d3159cc9
Fleetctl to package .app bundles for osquery (and changes for orbit to support them) (#4393)
* WIP

* WIP2

* Fix orbit and fleetctl tests

* Amend macos-app default

* Add some fixes

* Use fleetctl updates roots command

* Add more fixes to Updater

* Fixes to app publishing and downloading

* Add more changes to support fleetctl cross generation

* Amend comment

* Add pkg generation to ease testing

* Make more fixes

* Add changes entry

* Add legacy targets (until our TUF system exposes the new app)

* Fix fleetctl preview

* Fix bool flag

* Fix orbit logic for disabled-updates and dev-mode

* Fix TestPreview

* Remove constant and fix zip-slip attack (codeql)

* Return unknown error

* Fix updater's checkExec

* Add support for executable signing in init_tuf.sh

* Try only signing orbit

* Fix init_tuf.sh targets, macos-app only for osqueryd

* Specify GOARCH to support M1s

* Add workflow to generate osqueryd.app.tar.gz

* Use 5.2.2 on init_tuf.sh

* Add unit test for tar.gz target

* Use artifacts instead of releases

* Remove copy paste residue

* Trigger workflow on PR

* Fixes to ease handling of artifact

* Fix, do not use target name as dir

* Remove workaround
2022-03-15 16:04:12 -03:00
Martin Angers
fc01947ae7
Allow global admin to change anyone's password. (#4582) 2022-03-15 08:11:53 -04:00
RachelElysia
bb6db2434e
Fleet UI: Enable and disable automation slider (#4554) 2022-03-11 11:56:14 -06:00
Michele Preziuso
68330bd38f
Add support for Amazon Linux 2 (#4555) 2022-03-10 15:47:24 -07:00
RachelElysia
5e3bcc4a61
React tab focus bug fix (#4538) 2022-03-10 16:16:07 -06:00
RachelElysia
a022a11ebf
Frontend Tech Debt: Typescript types (#4319) 2022-03-10 10:10:44 -05:00
Benjamin Edwards
f8cf6ea91c
make context type value header configurable (#4441)
* make context type value header configurable
* populate config
2022-03-09 17:22:29 -05:00
Martin Angers
a1c67547b3
Add new endpoints to retrieve device information by orbit identifier (#4531) 2022-03-09 16:13:56 -05:00
RachelElysia
e21299c124
Add Host Modal: Generate fleet installer with fleet desktop (#4522) 2022-03-09 10:49:19 -05:00
RachelElysia
8935515a08
App Settings Page: Align global secret buttons (#4519) 2022-03-09 09:16:45 -05:00
Michal Nicpon
1aa7b96837
change session duration to 5 days (#4480) 2022-03-07 15:37:54 -07:00
RachelElysia
02fa778788
Refactor Query/Policy UX (#4334) 2022-03-07 15:10:23 -05:00
Noah Talerman
937cd7f2eb
Update changelog and bump versioning (#4497) 2022-03-07 11:08:51 -06:00
RachelElysia
082dc4d755
Fix diff overriding agent options (#4479) 2022-03-04 16:20:22 -06:00
RachelElysia
91a6b38851
Replace github docs with fleetdm docs (#4458) 2022-03-04 14:00:27 -05:00
RachelElysia
c79c9030f1
Bug fix: Whitespace on remaining label tooltips (#4454) 2022-03-04 11:36:12 -05:00
RachelElysia
91474d89a3
Schedule page bug: Fix missing carat/bounciness (#4442) 2022-03-03 18:21:24 -05:00
Luke Heath
fbd63c6210
Fix masthead avatar so that gravatar image displays (#4443) 2022-03-03 16:05:54 -06:00
RachelElysia
7d60be4c15
Remove validation for webhook and metadata urls (#4432) 2022-03-03 12:20:49 -05:00
RachelElysia
fa3df0347b
Debounce, onchange, changelog (#4413) 2022-03-03 08:26:03 -05:00
Benjamin Edwards
b053684712
append newline char to raw log bytes for nice NDJSON format (#4425)
* append newline char to raw log bytes for nice NDJSON format
* add changes file
2022-03-02 17:23:23 -05:00
RachelElysia
8af5fa7a5a
Fix duplicate (team name, label name, user email) error handling (#4352) 2022-03-01 13:28:51 -05:00
Tomas Touceda
6cffd5438f
Only send test email when changing smtp values (#4394)
* Only send test email when changing smtp values

* Update comment
2022-02-28 18:28:51 -03:00
Martin Angers
4930ca2d0e
Support listing software hosts count filtered by team (#4388) 2022-02-28 13:55:14 -05:00
Tomas Touceda
1fdcb1bfc2
Error early if email already exists (#4363)
* Error early if email already exists

* Update changes/issue-4361-mail-change-should-error

Co-authored-by: Michal Nicpon <39177923+michalnicp@users.noreply.github.com>

* Fix test

* Lint fixes

* Fix another test

* Also check for invites

* Improve error checks

* Update comment

* Update tests

* Fix test

Co-authored-by: Michal Nicpon <39177923+michalnicp@users.noreply.github.com>
2022-02-28 09:34:44 -03:00
RachelElysia
ecf15adc33
Fleet UI: Enter submits for Remove and Delete modals (#4336) 2022-02-24 09:15:50 -05:00
RachelElysia
57697e4cd4
Loading/error state for Fleet certificate match Figma (#4317) 2022-02-22 17:45:46 -05:00
Martin Angers
84ac0f05a9
Grant write to policies to global maintainer (#4321) 2022-02-22 16:57:36 -05:00
Martin Angers
ad5146c491
Allow updating the policy platform (part 1 of the ticket) (#4311) 2022-02-22 13:42:03 -05:00
Tomas Touceda
4034a7ab59
Make SearchHosts behave the same as the filtering in ListHosts (#4295) 2022-02-22 10:19:51 -03:00
Martin Angers
2ab1b9ec85
Remove expiration of API-only user tokens (#4314) 2022-02-22 08:12:03 -05:00
RachelElysia
7cdc7bbec2
E2e Test: Team admin flow (#4301) 2022-02-21 21:09:36 -05:00
Michal Nicpon
4ce23c7d1b
Add team targets to pack spec (#4272)
* skip flaky tests
2022-02-21 09:18:58 -07:00
Tomas Touceda
6d582cffa0
Don't depend on last inserted id to get the id for the new software (#4298)
* Don't depend on last inserted id to get the id for the new software

* Correct typo
2022-02-18 16:30:24 -03:00
Lucas Manuel Rodriguez
c641e39ef4
Allow disabling auto updates in fleetctl package and orbit (#4296)
* Add disable-updates flag to fleetctl and orbit

* Fix ruleguard execution error on make lint-go

* Introduce dev-mode for ease of development of orbit

* Add changes file
2022-02-18 15:42:39 -03:00
gillespi314
3734cbd3a4
Remove new hosts count from homepage (#4283) 2022-02-17 17:27:29 -06:00
RachelElysia
f345446125
Edit Query Page: Fix UX for "Save as new" CTA (#4235) 2022-02-17 14:58:47 -05:00
RachelElysia
689de41878
Settings Page: Render SMTP port error (#4239) 2022-02-17 12:58:25 -05:00
RachelElysia
6f1c61bc86
UI Revamp: Add hosts modal (#4217) 2022-02-16 16:21:42 -05:00
gillespi314
089f49cc5d
Add new activity types for policy-related activities (#4043)
* Add new activities for policy create, delete, and modify, and apply policy spec
* Add PoliciesByID ds method; refactor delete svcs
2022-02-16 09:33:56 -06:00
Nate Felton
bb0b56acb7
Update postinstall to use more modern launchctl commands (#4179)
* Update postinstall to use more modern launchctl comamnds

Fixes #3995

* Switching to service-target specifier

* Removing unnecessary kill flag
2022-02-16 08:31:16 -03:00
Tomas Touceda
a49f2a06ed
Allow removal of munki versions (#4189)
* Skip any versions that are empty in munki

* Return not found if munki is uninstalled

* Fix lint

* wip

* Add deleted at for host_munki_version
2022-02-15 16:29:14 -03:00
Michal Nicpon
9009857022
Add get team by name to fleetctl (#4202) 2022-02-15 11:48:09 -07:00
Martin Angers
290b5d90e5
Add team target filters to rego authorization checks for running queries (#4194) 2022-02-15 13:41:48 -05:00
Zachary Winnerman
c5c72ed713
Add apm for testing apm (#4053)
* Add apm for testing apm

* Testing opentracing

* testing

* Testing

* go fmt

* Add config switch for tracing.

* fixup

* Update cmd/fleet/serve.go

Co-authored-by: Tomas Touceda <chiiph@gmail.com>

* Add support for both elasticapm and opentelemetry

* Fix driver stuff and config options

* Fixup

* fixup

* Add changes file

* Add config for sql driver

* fixup

* Add doc to exported field

* testing

* fixup

* fixup

* Testing again

* fixup

* testing

* Undo

Co-authored-by: Tomas Touceda <chiiph@gmail.com>
2022-02-15 12:42:22 -05:00
RachelElysia
0ffca38f77
Queries and Scheduled Queries UI: Performance impact tooltips (#4201) 2022-02-15 11:19:01 -05:00
Lucas Manuel Rodriguez
be72dc356c
Add CentOS parsing+post-processing to reduce false positives in vulnerability processing (#4037)
* Add CentOS parsing and post-processing in fleet

* Add tests and amend SyncCPEDatabase

* Add test for centosPostProcessing

* Changes from PR comments

* Amend software test

* Fix sync test

* Add index to source and vendor

* Use os.MkdirTemp

* Rearrange migrations

* Regenerate test schema

* Add support for testing migrations (#4112)

* Add support for testing migrations

* Rename migration in tests

* Changes suggested in PR

* Go mod tidy
2022-02-14 15:13:44 -03:00
Zachary Winnerman
3babf53cf4
Fix OSVersion to work properly when distribution does not follow symver (#3968)
* Fix OSVersion to work properly when distribution does not follow symver

Certain distros such as ClearLinux or ArchLinux do not use symver or any
dotted versioning scheme for their releases. Archlinux uses the static
string "Rolling" and ClearLinux uses a single build number such as 35550
for their versions.

In Fleet console, this shows up as a string like "Archlinux 0.0.0.0"
which makes very little sense to the user. This change makes it so that
if OSQuery cannot generate a dotted version number, we should instead
use the build id as an opaque string.

* Add /changes

* Add tests for os_version

* fixup

* fixup
2022-02-14 12:55:23 -05:00
Michal Nicpon
075702113a
Print version warning when using fleetctl (#4139)
* Remove deprecated call in fleetctl
* Remove duplicate error returned by app.Run in tests
2022-02-14 09:43:34 -07:00
dayld
c32a225104
users table to cached_users to improve performance (#4170)
* users table to cached_users to improve performance

* add changes file

Co-authored-by: dayld <>
2022-02-14 09:48:17 -03:00
Zach Wasserman
1e843f3b89
Allow short IdP name in server validation (#4077)
A customer encountered an error when setting the value to "SSO" which
seems quite reasonable.
2022-02-13 19:35:59 -08:00
Noah Talerman
67827474c2
Prepare for Fleet 4.10.0 (#4161)
Co-authored-by: Zach Wasserman <zach@fleetdm.com>
2022-02-13 18:13:06 -08:00
Zach Wasserman
e20a9b4508
Add platform filters for MDM/Munki/Chrome queries (#4144)
* Add platform filters for MDM/Munki/Chrome queries

This should help quiet warnings that users/customers have reported when
these queries try to run on platforms without the macadmins extension
tables.

For #4123

* Improve documentation

* add changes file

* revert doc formatting

* Update tests

* Yet another test fix

Co-authored-by: Tomas Touceda <chiiph@gmail.com>
2022-02-11 14:10:26 -03:00
Tomas Touceda
c45115a915
Properly handle path in CVE URL prefix (#4174) 2022-02-11 14:10:13 -03:00
Noah Talerman
9c24c7d92c
Add policy templates to standard query library (#3956)
* Add remaining policy templates

* Removeempty resolution field

* Update naming for standard policies

* Add enabled word to SIP policy

* Use full SIP

* Also change in constants

* Update windows disk encryption

* Add changes file

* Tweak windows disk encryption policy

* Address lint errors

* Make requested changes

* Reflect changes in policy tempaltes

* Make sure that standard policies and policy templates are the same

* Edit automatic login disabled description

* Also edit in constants
2022-02-10 12:34:30 -05:00
RachelElysia
7bca25a803
Show observer query's OS compatibility (#4140) 2022-02-10 10:40:04 -06:00
Zach Wasserman
600549d8a4
Prepare for 4.9.1 release (#3996) (#4005)
Merging back to `main` from patch branch.
2022-02-10 10:46:21 -05:00
Luke Heath
0d36b39059
Fix label search crashing app on special character input (#4124) 2022-02-09 16:02:49 -06:00
RachelElysia
535acb67a4
Add details to software automation modal (#4122) 2022-02-09 13:37:56 -06:00
RachelElysia
778ee22147
/logout route automatically logs out user (#4057)
Co-authored-by: Luke Heath <luke@fleetdm.com>
2022-02-09 11:36:24 -06:00
Tomas Touceda
11887f87f7
Add enable scheduled query stats to fleet config (#4066)
* Add enable scheduled query stats to fleet config as well

* Add documentation

* Revert "Allow disabling scheduled query stats via app config (#4049)"

This reverts commit f98fd4d331.

* Add changes file

* Update ref

* Add missing docs
2022-02-09 08:20:29 -03:00
Luke Heath
5866d68f13
Set max length for name inputs (#4063) 2022-02-08 19:40:38 -06:00
Michal Nicpon
578a9780f2
apply queries spec endpoint missing authorization check (#4068)
* do authorization check when updating existing query
2022-02-08 09:47:48 -07:00
Martavis Parker
260d8c6910
Homepage refactor - MDM/Munki (#4038) 2022-02-07 23:03:01 -06:00
Lucas Manuel Rodriguez
f82c01833b
Change webhooks db lock duration to one hour (#3589)
* Change webhooks db lock duration to one hour

* Reload interval and check time left

* Change interval to one hour to match the db lock

* Add missing continue in case of failure

* Fix lint-go
2022-02-07 17:14:23 -03:00
RachelElysia
b9e2ca6790
Bug fix: Get failing policies webhook on load (#3997) 2022-02-07 12:45:49 -06:00
RachelElysia
cb43400932
In label error state for duplicate query/policy name (#4052) 2022-02-07 12:28:33 -06:00
Tomas Touceda
f98fd4d331
Allow disabling scheduled query stats via app config (#4049)
* Allow disabling scheduled query stats via app config

* Update tests

* Fix test

* Moar test fixes

* Remove redundant set

* Add documentation

* Fix typo in docs
2022-02-07 13:37:54 -03:00
RachelElysia
6e5aee3cdf
Software vulnerability automation modal (#3920) 2022-02-04 18:48:35 -06:00
Luke Heath
14d36d8e4d
Refine and improve policy and query editing interface (#4004) 2022-02-04 15:30:27 -06:00
Tharun Rajendran
2084b7d310
feat(api): add endpoint to get team by id (#4018)
* feat(api): add endpoint to get team by id

* fix review feedbacks

* add integration test in enterprise suite
2022-02-04 14:33:22 -03:00
Tomas Touceda
656ef07df1
Move ApplyTeamSpec to ee (#4011)
* Move ApplyTeamSpec to ee

* Update test now that apply team specs is behind premium

* Check all auth first

* Change auth call for team creation
2022-02-03 16:24:03 -03:00
Tomas Touceda
cf529e70cf
Issue 3173 debug status processlist (#4009)
* Add innodb status and process list

* Make json output a bit prettier

* Add changes file

* fix lint issues
2022-02-03 14:56:22 -03:00
Tomas Touceda
53ba8f07ea
Issue 3882 clean team packs (#4002)
* Cleanup team schedules when deleting teams

* Add changes file

* Improve code readability

* Reuse func instead of formatting twice
2022-02-03 14:55:48 -03:00
Tomas Touceda
b2d0a8c79f
Merge pull request from GHSA-ch68-7cf4-35vr
* Validate audience restrictions when validating SAML auth reqs

* EntityID is usually the audience

* Add coverage for failures on audience conditions
2022-02-02 15:50:09 -08:00
Martin Angers
6e2ba62744
Trigger webhooks for recently published vulnerabilities (#3941) 2022-02-02 16:34:37 -05:00
Tomas Touceda
b90e2e2e3d
Issue 3901 match target sw (#3982)
* Allow to search with target_sw with a period

* Remove tests for a different thign

* Add a test for programs as a source as well

* Use MATCH again and add proper tests
2022-02-02 17:17:41 -03:00
RachelElysia
7c87dad4e1
New navigation bar (#3962) 2022-02-02 11:27:14 -06:00
Zach Wasserman
12fc8dc681
Add changes file for #3959 (#3964) 2022-02-01 10:04:57 -08:00
Zach Wasserman
80960e47f8
Allow reinstallation of MSI packages (#3958)
Make the necessary changes to the WiX XML to allow the generated MSI
installers to be reinstalled.
2022-01-31 16:09:59 -08:00
gillespi314
d101ec7c18
Add ability to filter software by "Vulnerable" on the Host details page (#3875)
- Add new "Software" tab to host details page
- Add dropdown to filter vulnerable software
- Extend DataTable client-side filtering to accommodate filter inputs that are controlled by parent components
- Refactor host details software into separate component
2022-01-31 16:41:54 -06:00
gillespi314
4d5e3277ef
Add new feature: Software page (#3923)
* Add new software page
* Add hosts counts and last updated to software card on homepage
* Extend InfoCard component to all children to set dynamic title information and hyperlinks
* Add new TeamsDropdownHeader component
* Refactor TableContainer to move server-side pagination buttons to DataTable
* Extend DataTable to include footer element
2022-01-31 16:24:20 -06:00
Tomas Touceda
bf8eaa8431
Apply whole yaml not just queries in preview (#3919)
* Apply whole yaml not just queries in preview

* Remove dev stuff
2022-01-28 16:28:07 -03:00
Tomas Touceda
e956b0ba04
Add filter software by CVE and make osquery-perf also push vulnerable software (#3902)
* Add filter software by CVE and make osquery-perf also push vulnerable software

* Update based on review comments
2022-01-28 10:05:11 -03:00
RachelElysia
9706e3d36b
Schedules Page: Remove redux, fix buggy API calls (#3883) 2022-01-27 18:00:31 -05:00
Tomas Touceda
1667fdcf22
Add vulnerabilities webhook config (#3897)
* Add vulnerabilities webhook config

* Fix tests

* Update documentation

* Update docs
2022-01-27 10:48:46 -03:00
Tomas Touceda
ffabf803a3
Aggregate munki and mdm data (#3886)
* Aggregate munki and mdm data

* Update doc

* Use reader to read

* Reader to read

* Address review comments
2022-01-26 17:55:07 -03:00
Noah Talerman
433843ae94
"Releasing Fleet" docs: Add instructions for "Performance" section (#3857)
- Add instructions for performance section
- Remove changes files that were included in the 4.9.0 release
2022-01-26 14:33:39 -05:00
Martin Angers
a6f3f02a85
Cleanup unused software after calculating the count of hosts (#3887) 2022-01-26 11:32:42 -05:00
Martin Angers
9a0f749641
Add hosts_count field to "list software" endpoint (#3873) 2022-01-26 09:47:56 -05:00
RachelElysia
66b3f97b37
Teams Details Page: Add generate installer and manage enroll secret CTA buttons (#3864) 2022-01-25 13:20:24 -05:00
RachelElysia
ffe024be23
Frontend Validators: Form URLs and email addresses (#3511) 2022-01-25 11:06:47 -05:00
RachelElysia
a655e04b57
User Management Page: Flash messages for reseting password and session (#3851) 2022-01-24 21:03:56 -05:00
Tomas Touceda
35f806f7d1
Merge Release candidate 4.9.0 into main (#3844)
* Better jitter (#3716) (#3744)

* Better jitter (#3716)

* Better jitter

* Fix lint

* Use milliseconds

* Make duration milliseconds

* Update based on Lucas' suggestion

* Add changes file

* Panic on error

* Fix compilation error

* Use time.after instead of time.tick to not leak

* Include browser extensions in software inventory (#3733) (#3757)

Use appropriate JOINs against users table to include all results.

For #3557

* Build Docker images on push to any branch (#3756) (#3758)

Allows for testing release branches and any others.

* Optimize users detail query (#3754) (#3770)

@Smjert reported instances of Windows Domain Controllers having massive
resource utilization and being killed by the watchdog when running this
query. In his test environment, this new query performs much better.

* Refactor async host processing to avoid redis SCAN keys (for policies) (#3657) (#3755)

* Issue 3707 clean targets on delete (#3739) (#3776)

* wip

* Delete targets when deleting teams, hosts, and labels

* Add changes file

* Fix error message

* Remove unused teamsTable

* Cleanup new pack

* Clean new packs at end of test

* Update operating system policy (#3779)

- Update policy's query to check for operating system versions greater than or equal to

* Improve loading of manage policies page (#3695) (#3781)

Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>

* Fix logo (#3765)

* fixed duplicate query modal not closing (#3787)

* fixed style for connection line on activity feed (#3789)

* Improve loading state for query platform compatibility (#3752) (#3783)

Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>

* Disable pagination for teams page (#3794)

* Shorten "simple" query API period to 25s (#3775) (#3804)

This helps the period stay under the default request timeouts for most
load balancers.

Some default timeouts:
* AWS ALB - 60s
* Nginx - 60s
* GCP LB - 30s

* Clear user checkbox selections after successfully removing selected row from table UI #3798 (#3801)

* Alias fleetctl sandbox to fleetctl preview (#3803) (#3806)

Preparing for some work the product team is planning to rebrand preview
to sandbox.

* Remove flash of spinner to no spinner (#3799)

* Revert "Better jitter (#3716) (#3744)" (#3807)

This reverts commit c857b52d2b.

* Fix teams dropdown sizing (#3759) (#3810)

Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>

* fixed link for expiration message (#3788)

* Fixed empty string for compatible platforms (#3812)

* fixed empty string for compatible platforms

* default checked for platforms on policy query

* Block autocomplete for username and password in SMTP settings (#3732) (#3816)

* No hosts for software/policy renders better message (#3701) (#3821)

Co-authored-by: Martavis Parker <47053705+martavis@users.noreply.github.com>

* Get failing policies webhook data on page load (#3824)

* Fix reset password flow (#3826)

* Prepare for 4.9.0 (#3820)

- Add CHANGELOG
- Bump versioning
- Remove changes files
- Spelling fix for operating system policy's description

* Remove merge artifact

Co-authored-by: Zach Wasserman <zach@fleetdm.com>
Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: Luke Heath <luke@fleetdm.com>
Co-authored-by: gillespi314 <73313222+gillespi314@users.noreply.github.com>
Co-authored-by: RachelElysia <71795832+RachelElysia@users.noreply.github.com>
Co-authored-by: Martavis Parker <47053705+martavis@users.noreply.github.com>
2022-01-24 15:32:25 -03:00
Tomas Touceda
f02bef6f2c
Add platform filter to host_summary (#3845)
* Add platform filter to host_summary

* Add documentation

* Actually forward the platform param down the chain

* Update mock

* Update mock
2022-01-24 14:49:21 -03:00
RachelElysia
85487eb5b2
Settings > Organization Settings: Code revamp (#3580) 2022-01-21 12:06:58 -05:00
Tomas Touceda
9d572309ae
Add sentry (#3669)
* Add sentry

* Fix gosum

* More gosum fixes

* Add missing def for config

* Enrich sentry scope a bit

* Add changes file

* Add goroutine safe scope to errors

* Encapsulate sentry logic

* Add documentation for new flag

* Add sentry capturing to crons and other background tasks

* Only send to sentry when enabled
2022-01-20 16:41:02 -03:00
Luke Heath
67326e16cc
Block autocomplete for username and password in SMTP settings (#3732) 2022-01-20 11:39:55 -06:00
Zach Wasserman
4a70cd69fa
Shorten "simple" query API period to 25s (#3775)
This helps the period stay under the default request timeouts for most
load balancers.

Some default timeouts:
* AWS ALB - 60s
* Nginx - 60s
* GCP LB - 30s
2022-01-19 17:48:57 -08:00
Lucas Manuel Rodriguez
e5cb68cee9
Return 404 when listing policies for a team that does not exist (#3793)
* Return 404 when listing policies for a team that does not exist

* Set mock for auth test
2022-01-19 18:17:42 -03:00
Martavis Parker
4a83201092
No hosts for software/policy renders better message (#3701)
* Allow sort by more than one key

* more accurate message for no hosts on filter

* added changes file

* lint fix

* more accurate message for no hosts on filter

* added changes file

* lint fix

* small logical change

Co-authored-by: Tomas Touceda <chiiph@gmail.com>
2022-01-19 12:49:14 -08:00
Lucas Manuel Rodriguez
47df5e83fe
Return 400 when trying to create packs, queries and policies with empty names (#3761)
* Return 400 when trying to create packs, queries and policies with empty names

* Amend sql query test
2022-01-19 16:07:58 -03:00
Tomas Touceda
eee539cccc
Issue 3707 clean targets on delete (#3739)
* wip

* Delete targets when deleting teams, hosts, and labels

* Add changes file

* Fix error message

* Remove unused teamsTable

* Cleanup new pack

* Clean new packs at end of test
2022-01-19 10:28:08 -03:00
Zach Wasserman
a79d5fbfcc
Optimize users detail query (#3754)
@Smjert reported instances of Windows Domain Controllers having massive
resource utilization and being killed by the watchdog when running this
query. In his test environment, this new query performs much better.
2022-01-18 16:39:32 -08:00
Zach Wasserman
6232bfa1d6
Include browser extensions in software inventory (#3733)
Use appropriate JOINs against users table to include all results.

For #3557
2022-01-18 12:46:04 -08:00
Lucas Manuel Rodriguez
d4243d0a72
Team observers can browse global policies (#3737)
* Allow team observers to browse global policies

* Add integration core test for team observer

* Fix integration tests
2022-01-18 13:18:40 -03:00
gillespi314
ba64dc0003
Improve loading of manage policies page (#3695) 2022-01-18 09:17:44 -06:00
Tomas Touceda
b47cf3d2d4
Better jitter (#3716)
* Better jitter

* Fix lint

* Use milliseconds

* Make duration milliseconds

* Update based on Lucas' suggestion

* Add changes file

* Panic on error

* Fix compilation error
2022-01-18 11:29:57 -03:00
gillespi314
dea23356de
Improve accuracy of query platform compatibility check when WITH expressions used (#3731) 2022-01-17 20:01:29 -06:00
Lucas Manuel Rodriguez
371c533bfc
Improved Datastore usage of osquery hosts requests (#3601)
* WIP

* Amend tests

* Do not load aggregated stats for packs

* Add option to host lite

* Fix remaining TODOs

* Fix osquery_utils tests

* Fix SQL

* Fix SQL (bis)

* Restore AuthenticateHost to load once

* Code improvements and re-add deferred host save

* More fixes to the PR

* Wrap users table update on tx

* Add caching to ListPacksForHost and ListScheduledQueriesInPack

* Remove SaveHostSoftware (replaced by UpdateHostSoftware)

* Add unit tests for new functionality

* Add changes file

* Fix scheduled queries test
2022-01-17 22:52:09 -03:00
Martin Angers
1f185a7a8b
Refactor async host processing to avoid redis SCAN keys (for labels only) (#3639) 2022-01-17 14:53:59 -05:00
Luke Heath
afaecee662
Close flash message when a modal is opened (#3711) 2022-01-16 20:46:20 -06:00
Lucas Manuel Rodriguez
61b21df79e
Add flags to fleetctl preview to set custom orbit and osqueryd update channels (#3683)
* Add channel options for orbit update on fleetctl preview

* Add changes

* Also set channels on orbit execution in preview
2022-01-14 18:25:26 -03:00
Lucas Manuel Rodriguez
d7e2e33e01
Disable orbit osquery extensions on Windows (#3705)
* Disable orbit osquery extensions on Windows

* Add the same to shell.go
2022-01-14 17:42:38 -03:00
RachelElysia
1041c6dd46
Settings Pages Refactor: User management page & Teams > members page (#3625) 2022-01-13 18:11:45 -05:00
Zach Wasserman
1dc6ef6226
Orbit 0.0.6 changelog (#3682) 2022-01-13 14:31:58 -08:00
gillespi314
dc8eacc95c
Add AvailableTeams to loginResponse and getUserResponse (#3585) 2022-01-13 13:57:44 -06:00
RachelElysia
a85e47b28b
Spiffier UI: Dashboard and Manage Host Page loading states (#3638) 2022-01-13 12:12:54 -05:00
gillespi314
6952653e1b
Fix usage stats to send missing numLabels field (#3606) 2022-01-13 11:11:13 -06:00
gillespi314
39b7c7d9f9
Add pagination and multi-column sort to live query results table UI (#3647)
* Refactor live query results to react-table
2022-01-13 11:06:32 -06:00
Luke Heath
e64f1a63ba
Correct instances of multiple requests for same resource (#3631) 2022-01-12 18:16:50 -06:00
RachelElysia
09efce8ea8
Bug fix: No matching hosts message (#3652) 2022-01-12 15:01:47 -05:00
Tomas Touceda
4bed4757fb
Remove cleanups and fk for host ids (#3607)
* Remove cleanups and fk for host ids

* Readd missing things to the schema

* Remove unused

* Add changes file and fix some error messages

* Fix test

* Use tx instead of plain writer

* Other fixes

* More not found test fixes

* Go back to getcontext
2022-01-12 14:07:51 -03:00
Tomas Touceda
312bd840a2
Detect not found errors for queries and policies (#3595)
* Detect not found errors for queries and policies

* Fix test
2022-01-12 10:04:16 -03:00
Lucas Manuel Rodriguez
49ceee59aa
Add fixes for running tests with mysql:8 and add mysql to test-go job matrix (#3627)
* Add fixes for running tests with mysql:8

* Add getServer function

* Test github matrix

* Add changes file for the user facing fix

* Remove unused mysql8 docker-compose
2022-01-11 22:44:37 -03:00
Martin Angers
f14f97156c
Add read and write timeout options for redis (#3624) 2022-01-11 17:08:39 -05:00
Luke Heath
cc73f2d5a4
Handle response.body if it is not JSON (#3599) 2022-01-11 13:52:28 -06:00
Tomas Touceda
c662cd2b53
Add policies yaml (#3464)
* Add policies yaml

* Add documentation and address review comments

* Amend documentation
2022-01-11 11:04:29 -03:00
RachelElysia
a5bef8a990
Spiffier: Center logo in nav bar (#3605) 2022-01-10 14:07:47 -05:00
Lucas Manuel Rodriguez
7823bbbaba
Fix orbit and osqueryd logging on Windows (#3521)
* Fix orbit and osqueryd logging on Windows

* Add functionality to test the change and use systemprofile app data

* Add centos syslog to README.md

* Add wait on orbit for osquery extension socket to exist (#3571)

* Wait for osquery extension socket to exist

* Amend changes

* Fix lint

* Restore timeout
2022-01-07 19:32:31 -03:00
RachelElysia
bb2b8fa70f
Spiffier UI: Allow opening nav items in new tab (#3514) 2022-01-07 11:18:21 -05:00
Luke Heath
7161160a9f
Audit UI logic and remove redundant initializations (#3574) 2022-01-05 21:41:52 -06:00
RachelElysia
4a382d8b4f
Spiffier UI: Checkbox and radio button styling (#3560) 2022-01-04 12:49:42 -05:00
RachelElysia
7ae666a274
User Settings Page: Link to privacy policy (#3561) 2022-01-04 12:48:20 -05:00
Noah Talerman
09654d77ee
Prepare for Fleet 4.8.0 (#3536) 2021-12-31 09:58:08 -08:00
Lucas Manuel Rodriguez
2f4ecb1b6b
fleetctl package command to check for PEM file (#3375)
#3374
2021-12-29 17:32:55 -08:00
Lucas Manuel Rodriguez
aaa5b7ec3c
Allow hosts to check in even if Redis is down (#3506) 2021-12-29 17:06:23 -08:00
gillespi314
fec450ab5a
Fix pagination for homepage software UI (#3501) 2021-12-29 16:22:18 -06:00
Luke Heath
8f606ffccd
Refactor manage hosts search (#3475) 2021-12-29 12:10:54 -06:00
gillespi314
6d2d28d5a8
Add mobile device management and device-user mapping information to host details to UI (#3499)
* Add mdm, munki and device-user mapping to UI
2021-12-27 17:57:15 -06:00
gillespi314
dde8bd88ca
Fix bug in live query results UI (#3462) 2021-12-27 12:29:52 -06:00
gillespi314
b54b5722d8
Handle certificate errors in generate installer UI (#3435)
* Handle errors in generate installer UI

* Add pem validation
2021-12-23 18:12:08 -06:00
gillespi314
013f425b0b
Add form validation to create/edit user modal (#3479) 2021-12-23 18:09:48 -06:00
Lucas Manuel Rodriguez
787944482b
Global policies automation webhooks (#3378)
* Add webhook to app config

* Add redis failing policies set and webhook

* Add basic webhook test

* Store hostname in redis

* Global policy deletion to remove policy ID from set and config

* Also process new passing policies

* Fix unit test

* Sort hosts

* Add more tests

* Add ListSets to the failing policies interface

* Fix server URL and garbage collect on the triggering side

* Do not use Redis SCAN

* Fix Redis operation order

* Add API changes to doc

* Add comments

* Add more tests

* Fix tests

* Add tests for config update upon deletion of policies

* Run make dump-test-schema

* Ignore policies that failed to run

* Add proper unit tests to trigger logic

* Fix comments

* WIP

* Add tests to service_osquerty_test.go

* Use SSCAN for listing hosts instead of SMEMBERS

* Add failing policies to docs/01-Using-Fleet/configuration-files/README.md

* Remove skip

* Fix PR comments
2021-12-23 18:26:55 -03:00
Tomas Touceda
06a64cdd2c
Use id instead of seen time/created_at to sort hosts (#3482)
* Use id instead of seen time/created_at to sort hosts

* Add test for ordering by id
2021-12-23 15:45:50 -03:00
Luke Heath
1d891cd343
Fix incorrect load state when selecting all hosts from the hosts filter (#3426) 2021-12-22 20:56:52 -06:00
RachelElysia
d3b2bd362d
E2e policy flow (#3322) 2021-12-22 13:06:52 -05:00
Luke Heath
e75c5dbdaf
Clear selected hosts on transfer (#3430) 2021-12-22 11:07:12 -06:00
Martin Angers
1e2059585a
Add support for google chrome profiles (#3423) 2021-12-21 15:36:19 -05:00
Lucas Manuel Rodriguez
93f4577c7d
Fix policy membership migration for MariaDB (#3418)
* Fix policy membership migration for MariaDB

* Use constraintsForTable to get the proper foreign key names
2021-12-21 14:39:46 -03:00
Tomas Touceda
fe67b0486b
Finish first draft of API versions (#3216)
* Finish first draft of API versions

* wip

* Finalize tests

* Revert change in handler

* Remove made up version

* Update versioning with aliases

* Add changes file

* Address review comments

* Revert overupdated routes

* Expand life time of deprecated APIs

* Fix test

* Comment out problematic part of test

* Revert bad path changes
2021-12-21 12:23:12 -03:00
Tomas Touceda
5a9e207fbf
Update documentation and add changes file (#3437) 2021-12-21 10:47:02 -03:00
gillespi314
c9e8f4aab0
Fix bug in target selector UI (#3419) 2021-12-20 12:24:52 -06:00
Luke Heath
1c4bc0954c
Fix loading indicator on select targets pages (#3408) 2021-12-20 11:36:17 -06:00
Martin Angers
e988d16eb3
Update the prometheus go client library (#3140) 2021-12-20 09:20:58 -05:00
Luke Heath
5b64985ece
Refine manage hosts page to better handle timing and loading issues (#3402) 2021-12-17 15:40:57 -06:00
RachelElysia
dc3143b437
Pack flow: Refactor ManagePacksPage (#3376) 2021-12-16 15:35:19 -08:00
Luke Heath
f6a74f69c9
Refine create policy UI flow (#3379) 2021-12-16 12:09:10 -06:00
RachelElysia
e60332b8b0
Policy Details/Query Details: No hover state if policy/query is not editable by RBAC (#3368) 2021-12-16 09:54:53 -08:00
Lucas Manuel Rodriguez
5aeb418945
Exclude old data migration from the migrations check (#3373) 2021-12-16 10:52:42 -03:00
Martin Angers
4143a37056
Fix redis scan keys issue for live queries (#3107) 2021-12-14 16:30:26 -05:00
Noah Talerman
8957f00d86
Prepare for Fleet 4.7.0 (#3355) 2021-12-14 11:25:13 -08:00
Zach Wasserman
33797ddfc1
Optimize requests on packs page (#3327)
Improves #3259
2021-12-13 21:50:24 -08:00
Lucas Manuel Rodriguez
25fd04ea18
Fix team packs rego policy rules (#3356) 2021-12-13 20:53:29 -08:00
Zach Wasserman
ac3d8ddf02
Increase default login session length to 24 hours (#3340) 2021-12-13 20:42:30 -08:00
Luke Heath
0d52460c27
Allow platform selection on policy query creation (#3338) 2021-12-13 18:21:36 -06:00
RachelElysia
c64627caa4
Manage Queries Page: No queries does not show create new query cta for observers (#3358) 2021-12-13 15:57:56 -08:00
RachelElysia
c491616eb5
Manage Host Page Bug: Update observers to not see generate installer CTA (#3352) 2021-12-13 13:44:28 -08:00
Zach Wasserman
3a5037f798
Update query for users listing (#3324)
- Filter undesired entries.
- LEFT JOIN to include users missing groups.

#2488
2021-12-11 16:25:08 -08:00
RachelElysia
e05562ef09
Spiffier: Fix grammar and sentence casing (#3316) 2021-12-10 11:57:06 -08:00
Luke Heath
84d36d9e22
Policies own their queries flow QA fixes (#3323) 2021-12-10 13:17:36 -06:00
Lucas Manuel Rodriguez
8bbc52bbff
Fix policy rego bug with fleet policies (#3331)
* Fix policy rego bug with fleet policies

* Simplify rego policy fix
2021-12-10 11:47:41 -03:00
RachelElysia
9e905f8e10
Query Empty Search: Fix count and empty state (#3314)
* Display count is now correct, bug with 0 being falsy
* Empty component renders for client side search even if data table 'disappears'
* Hide display count if display count is 0 includes for client side search
* Hide search and dropdown if no queries have been created
2021-12-09 14:43:34 -08:00
Tomas Touceda
66f4fc46c0
Only join big tables when absolutely needed (#3308)
* Only join big tables when absolutely needed

* Fix test

* Revert unintended change in test
2021-12-09 17:36:12 -03:00
Luke Heath
2abae381e9
Add ability to run live queries on new and existing policies (#3230) 2021-12-09 10:38:51 -06:00
RachelElysia
b397b3a68e
Dashboard: Show software count in dashboard's software modal (#3228) 2021-12-08 22:30:28 -08:00
RachelElysia
37ffb88ec8
Default policy renders on refresh of new policy page, changelog (#3243) 2021-12-08 22:16:34 -08:00
Luke Heath
7f8cb264f8
Return spinner when loading live query results (#3261) 2021-12-08 16:07:43 -06:00
Zach Wasserman
3a973af164
Fix Windows Orbit packaging with non-stable channel (#3210) 2021-12-07 19:49:57 -08:00
Luke Heath
fde1da714b
Add team filtering to software card and improve load states (#3188) 2021-12-07 14:42:21 -06:00
Tomas Touceda
8686c1520b
Add index software (#3241)
* Add index to software over name/id

* Update schema

* Remove double semi colon
2021-12-07 16:36:13 -03:00
Lucas Manuel Rodriguez
8cea7f480a
Add HostLinuxOSs (#3217)
* Add HostLinuxOSs

* Add test for PlatformFromHost

* Add sles, gentoo and kali on linux host OSs
2021-12-07 15:37:00 -03:00
RachelElysia
04fe0a42b5
App wide: Better errors for duplicate query, policy, and team names (#3121) 2021-12-07 11:12:36 -06:00
Lucas Manuel Rodriguez
a47c605bdd
Log request errors in non-debug mode (take 2) (#3215)
* Log request errors in non-debug mode

* Amend test for debug

* Add check for error log
2021-12-07 12:52:43 -03:00
Lucas Manuel Rodriguez
6b8a2cb61a
Fix mysql8 compatibility with zero dates (#3231)
* Fix mysql8 compatibility with zero dates

* Amend date
2021-12-07 12:51:53 -03:00
Tomas Touceda
dc9686024b
Remove tx from SaveHost (#3232)
* Remove tx from SaveHost

Also change REPLACE for software for an insert.

* Remove bundle identifier from the get since it's not part of the key

* Revert unneeded change
2021-12-07 12:39:07 -03:00
Luke Heath
78d5e13a97
Show all teams for global users and save team selection between pages (#3204) 2021-12-06 20:04:40 -06:00
Luke Heath
b3a69680e7
Fix duplicate hosts on render when host_id URL params are present (#3189) 2021-12-06 20:02:52 -06:00
RachelElysia
10dbfaad86
Query UI Bug: Query checkbox now reset on delete (#3203) 2021-12-06 11:25:02 -06:00
Lucas Manuel Rodriguez
c5375263b6
Change policy platforms name to platform singular (for consistency) (#3221)
* Change policy platforms name to platform singular

* Fix fleetctl tests
2021-12-06 13:56:28 -03:00
Martin Angers
b84ef79bf4
Add the fleetctl debug {errors,db-locks} sub-commands (#3168) 2021-12-06 09:26:01 -05:00
RachelElysia
eba5d1b1b6
Manage Policies Page: New policy modal (#3108) 2021-12-05 17:12:55 -06:00
Lucas Manuel Rodriguez
b9a408704e
Add platforms field to policies (#3181)
* Add platforms field to policies

* Fix fleetctl tests

* PR review changes

* Add missing tests

* Add changes for ListPoliciesForHost
2021-12-03 15:33:33 -03:00
Tomas Touceda
142006cbdd
Issue 2099 enable vulnerability processing new installs (#3104)
* Enable vulnerability processing by default

* Add changes file

* Remove wrong env var

* Fix import

* Fix tests

* Update log line

* Remove unneeded import
2021-12-03 14:44:57 -03:00
Luke Heath
4c19c9c8b1
Update policy back link to return to selected team (#3190) 2021-12-03 10:13:40 -06:00
Tomas Touceda
17bd4d5110
Remove policy membership history and only store the latest value (#3178)
* Remove policy membership history and only store the latest value

* Address review comments

* Correct error msg wrap
2021-12-03 13:10:11 -03:00
Tomas Touceda
5cff07f332
Issue 3184 drop event host expiry (#3185)
* Drop event host_expiry if it exists

* Add changes file
2021-12-03 12:34:58 -03:00
Tomas Touceda
a0404b6736
Add software count API (#3105)
* Add software count API

* Fix makefile

* Fine no mock generating at this point

* Actually, one last try

* Use go install instead

* Fix go sum/mod

* Improve documentation

* Try setting node to 14
2021-12-03 10:54:17 -03:00
Tomas Touceda
052e41851b
Prepare for Fleet 4.6.2 (#3146) (#3179)
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
2021-12-02 16:56:56 -03:00
RachelElysia
1253020678
New Policy UI: Add policy resolution to create and edit policy (#3125) 2021-12-02 10:03:56 -05:00
Luke Heath
e750eb9745
Standardize TeamsDropdown component usage (#3135) 2021-12-01 17:37:33 -06:00
Luke Heath
79e046182a
Add client side pagination to queries table (#3165) 2021-12-01 13:05:04 -06:00
Luke Heath
6624a9dfef
Add redirects to page paths (#3161) 2021-12-01 11:42:31 -06:00
RachelElysia
cb4707cef0
Query and Policy Flow: SQL error in realtime (#3158) 2021-12-01 12:18:58 -05:00
Lucas Manuel Rodriguez
e64a88d8b1
Add COALESCEs on all host_seen_times JOINs (#3147)
* Add COALESCEs on all host_seen_times JOINs

* Use tx instead of d.writer

* Add unit tests

* Fix compile test
2021-12-01 09:05:23 -03:00
Tomas Touceda
4ef9cfdf63
Increase grace period of status for hosts (#3151)
* Increase grace period of status for hosts

* Update tests

* Update more tests
2021-11-30 18:37:27 -03:00
RachelElysia
3b0a454fb5
App wide UI: Fix policies keys (#3145) 2021-11-30 13:24:30 -05:00
RachelElysia
b3b107512e
Host Details Page: OS policy creator (#3109) 2021-11-30 12:12:53 -05:00
Tomas Touceda
919a3b5b01
Add forgotten changes file (#3144) 2021-11-30 13:12:09 -03:00
RachelElysia
185441adc9
Manage Schedule Page: Create/Edit schedule preview modal (#3102) 2021-11-29 18:29:41 -05:00
Tomas Touceda
036093874d
Add cursor pagination to list hosts (#3120)
* Add cursor pagination to list hosts

* Update docs

* Update based on review comments
2021-11-29 15:06:00 -03:00
Tomas Touceda
a36e029d95
App config caching per instance (#3071)
* Do caching of app config per instance instead of across all of them in redis

* Add changes file

* Simplify code based on review comment

* Use go-cache instead of creating our own

* Dont export consts

* Copy app config before returning it

* Fix lint

* Update go sum

* Update go sum
2021-11-29 12:51:57 -03:00
Martin Angers
c997f853e5
Make creation of http.Client uniform across the codebase (#3097) 2021-11-24 15:56:54 -05:00
Lucas Manuel Rodriguez
964f85b174
Amend policy creation and spec (for proprietary query), and add update APIs (#2890)
* Amend policy creation (proprietary query), add update APIs

* Fix Datastore.SavePolicy bug (and add tests)

* Add integration tests for new policy APIs

* Add author email

* Add activities

* Push breaking changes for return policy fields

* WIP

* Add integration test for host policies

* Make more improvements to policy representation

* Improve upgrade code (from PR review comments)

* PR changes

* Revert activities for policies

* Use *uint instead of uint for queryID, use fleet.PolicyPayload

* Filter out other schemas

* New policy flow (#2922)

* created new policy flow -- no API connection

* added api props

* fixed prop name

* lint fixes

* removed unused modal; fixed style

* name, desc icons; created global components

* lint fixes

* ignoring certain files and lines for prettier

* Update frontend/pages/policies/PolicyPage/PolicyPage.tsx

* Make policy names unique across deployment

* Amend upgrade script

* Fix migration for unique names

* Do not deduplicate but instead rename policies

Co-authored-by: Martavis Parker <47053705+martavis@users.noreply.github.com>
2021-11-24 14:16:42 -03:00
Tomas Touceda
c65f8507fe
Remove host counts from software (#3082)
* Remove host counts from software

* Actually remove the host count from the struct

* Fix get test
2021-11-23 15:50:51 -03:00
Luke Heath
f510dcf936
Page position jumps when loading homepage software table (#3092) 2021-11-23 12:18:35 -06:00
RachelElysia
9cf025a0a5
Fleet UI: No Access only access to dashboard and my account page (#3063) 2021-11-23 11:50:21 -05:00
Tomas Touceda
4cd9dab577
Update shell in host users when they exist (#3072) 2021-11-23 10:23:12 -03:00
Lucas Manuel Rodriguez
028c2643f7
Fleet serve to exit if migrations are missing (default) (#2803)
* Add option to fleet to exit if migrations are missing

* Reverse serve exit migrations logic

* Fix typo
2021-11-22 14:47:24 -03:00
Lucas Manuel Rodriguez
0642bfdb1d
Add fleetctl debug migrations command to get missing migrations (#2967)
* Add fleetctl command to get missing migrations

* Fix copy paste and lint

* Detect migrations applied out of order

* Add extra bullet to changes

* Trigger creation of migration status tables

* Fix unit tests

* PR fixes

* PR comment fixes
2021-11-22 14:06:12 -03:00
gillespi314
886b30fc4a
Remove five-row limit for teams search (#3021) 2021-11-22 09:30:55 -06:00
Zach Wasserman
2b2e9f9f44
Prepare for 4.6.1 release (#3067) 2021-11-21 21:23:25 -08:00
Lucas Manuel Rodriguez
59e01fbe08
Make fleetctl apply -f fail with unknown kind: config fields (#3026)
* Make fleetctl apply fail with unknown fields

* Add unit test
2021-11-19 12:37:36 -03:00
Noah Talerman
a6e9d551fd
Prepare for Fleet 4.6.0 (#3018) 2021-11-18 17:46:57 -08:00
Zach Wasserman
b65c61cb12
Change Orbit osquery to Fleet osquery in generated packages (#3034)
Use "Fleet osquery" rather than "Orbit osquery" in packages generated
 by `fleetctl package`.
2021-11-18 17:43:52 -08:00
Zach Wasserman
73ee2c6b16 Add changes files 2021-11-18 16:52:53 -08:00
Zach Wasserman
3811a63daf
Add osquery flagfile support in Orbit (#3006)
- Orbit automatically loads the flagfile when it exists in the orbit
  root.
- Add packaging support to include flagfile with package.
- Fix a panic when osquery fails to start up.
2021-11-18 15:06:33 -08:00
gillespi314
c8f3934772
Fix targets selector bug (#2981) 2021-11-17 10:26:49 -06:00
Tomas Touceda
77a91a7ab7
Add new index to policy_memership_history (#2973)
* Add new index to policy_memership_history

* Fix typos
2021-11-17 11:42:24 -03:00
RachelElysia
f81d010b72
Fleet setup: Overflow fix (#2927) 2021-11-16 12:55:57 -05:00
Martavis Parker
5ac01dff4e
Re-enabled software card for home page (#2780)
* re-enabled software

* added changes files

* lint fix

* fixed url format

* fixed 500 bug, order key

* fixed table data

* fixed data gathering and linking to hosts

* fixed grid columns
2021-11-15 15:42:51 -08:00
RachelElysia
a7c6b3e7d7
Add/Edit/Delete enroll secret UI (#2645) 2021-11-15 16:16:06 -05:00
Lucas Manuel Rodriguez
5c1edaf527
Kill existing instances of orbit and osqueryd in fleetctl preview (#2921)
* Kill existing instances of orbit and osqueryd in fleetctl preview

* Add changes file
2021-11-15 18:12:25 -03:00
Luke Heath
4619696036
Fix table layout styling on host details and query page (#2925) 2021-11-15 14:11:22 -06:00
Zach Wasserman
e279dc1682
Implement fleetctl updates rotate (#2831)
Add support for updating keys used in the TUF update system.
2021-11-15 10:01:48 -08:00
gillespi314
93764ec3ea
Add update invite action to user management page (#2919) 2021-11-15 11:32:28 -06:00
Martin Angers
45168bed1d
Remove deprecated app_configs table (#2884) 2021-11-15 09:34:51 -05:00
Martin Angers
3ae57a0242
Create errors with ctxerr, add the call to store them in redis (#2786) 2021-11-15 09:11:38 -05:00
Martin Angers
348841c90b
Add explanation output to fleetctl package (#2864) 2021-11-15 08:40:58 -05:00
Zach Wasserman
1bd50d8965
Prepare for 4.5.1 release (#2913) 2021-11-12 17:03:19 -08:00
gillespi314
86687a80cc
Add query author avatar; format last modified time (#2898)
Co-authored-by: Luke Heath <luke@fleetdm.com>
2021-11-12 16:45:53 -06:00
Luke Heath
af956537a1
More room for software names and keep tooltips visible (#2867) 2021-11-12 15:51:47 -06:00
gillespi314
249ca8482c
Add tab-based UI to host details page (#2878) 2021-11-12 13:43:29 -06:00
RachelElysia
7db762f8e2
Homepage UI: Add host total count and host status count (#2894) 2021-11-12 09:27:05 -05:00
Lucas Manuel Rodriguez
1f560c56a2
Return all scheduled queries and their stats on the host fetch API (#2855)
* Return all scheduled queries and their stats on the host fetch API (pack_stats)

* Use 'pack' instead of null and wrap errs with ctxerr
2021-11-12 08:18:25 -03:00
Luke Heath
0183863fb8
Fix team admin and team maintainer team settings display (#2897) 2021-11-11 17:31:47 -06:00
Luke Heath
4e1122aa72
Handle Team Admin removing self from team (#2886) 2021-11-11 16:46:16 -06:00
Tomas Touceda
a0730ca643
Add update invite API (#2837) 2021-11-11 17:33:06 -03:00
gillespi314
3e2dad8caa
Add login shell information to host users table (#2854) 2021-11-11 11:26:03 -06:00
gillespi314
229b91b530
Add endpoint for management of team enroll secrets (#2849) 2021-11-11 10:45:39 -06:00
Noah Talerman
15ec58ba44
Add missing changes from the 4.5.0 release to changelog (#2891)
- Remove remaining `changes` files that were included in the 4.5.0 release
- Update CHANGELOG to include the missing changes entries
2021-11-11 09:57:32 -05:00
Tomas Touceda
b802af6f44
Add host count to software API (#2879)
* Add host count to software API

* Update docs

* Update fleetctl tests to account for host counts

* Update docs to mention host_count special case

* Update func comment
2021-11-11 08:49:17 -03:00
Tomas Touceda
88b32d8c7f
List policies for hosts even if they don't have stats (#2865) 2021-11-11 08:40:32 -03:00
Tomas Touceda
b95bb52c89
Issue 2868 ignore admin reset password sso (#2877)
* Ignore admin forced password reset if sso is enabled

* Add tests for authenticatedUser

* If SSOEnabled is true, then set AdminForcedPasswordReset to false

* Update tests to cover new password reset and sso flow

* Add changes file
2021-11-10 19:30:15 -03:00
RachelElysia
0a5049b51e
Schedules and Policy UI: New empty state (#2787) 2021-11-10 13:46:16 -05:00
Luke Heath
700d78278b
Fix z-index of close schema button in query side panel (#2871) 2021-11-10 10:24:44 -06:00
Jacob Shandling
01959434cb
Render a host's version of osquery on its host details page (#2851) 2021-11-09 14:59:56 -06:00
RachelElysia
81ccbab31f
Dashboard UI: Hosts change on team selection (#2839) 2021-11-09 15:48:23 -05:00
RachelElysia
2d1e4c0898
Reinstate generate installer code from #2493 (#2771) 2021-11-09 15:02:01 -05:00
Luke Heath
d9556b3f7f
Perform client side filtering with react table (#2834) 2021-11-09 11:31:28 -06:00
Martin Angers
b57b64ccb2
Add total and per platform counts to host summary endpoint (#2845) 2021-11-09 09:35:36 -05:00
Tomas Touceda
cc7a405f93
Enable software inventory for new installations (#2852) 2021-11-09 10:28:14 -03:00
RachelElysia
8196fd0117
Host Details Page: No CTA for policies that have unknown status (#2841) 2021-11-08 14:19:50 -08:00
RachelElysia
ed2a9abd9c
Create/Edit pack UX: Pack save redirects to manage packs page, fix flash message (#2767) 2021-11-08 10:18:36 -08:00
Tomas Touceda
d0777ccfd3
Change message for text so webhook works on slack (#2838)
* Change message for text so webhook works on slack

* Update preview text for the webhook in the FE
2021-11-08 15:13:02 -03:00
Tomas Touceda
7db6de7278
Serialize hosts writes per instance (#2753)
* Serialize hosts writes per instance

* Write hosts asynchronously

* Dont make the save in a goroutine

* Revert "Dont make the save in a goroutine"

This reverts commit 4a890c5271.

* Make all savehosts async

* Address review comments and make this approach configurable

* Address review comments

* Disable bulk seen time marking for a test

* Move host seen times to a new table

* Remove unused

* Add seen_time to list hosts

* Add some jitter to seen time flushing

* Remove unused

* Add timeout to deferred save host

* Add tests for serialSaveHost

* Update hosts in labels and policy executions in a serial way

* Address review comments and remove fk constraints in host software

* Make errCh buffered

* Add changes file

* Readd key
2021-11-08 11:42:37 -03:00
Martin Angers
1b5ec19cf5
Add author_email to payload of queries (Get/List) (#2798) 2021-11-08 09:06:56 -05:00
RachelElysia
7a22e71c69
Host Details Page: Hover rows for policies table and software table (#2808) 2021-11-05 09:29:03 -07:00
gillespi314
47dcafa2d5
Enhance UI for query-platform compatibility checks in new/edit query form (#2757) 2021-11-04 18:01:24 -05:00
Lucas Manuel Rodriguez
21908f31cf
GET packs to always return disabled field (#2799) 2021-11-04 14:25:08 -03:00
gillespi314
136b0450c0
Fix memoization of data transform for query API results (#2790) 2021-11-04 11:48:46 -05:00
RachelElysia
0fbb9ab45f
Pass fail UI for Policies app wide (#2769) 2021-11-03 13:13:58 -04:00
RachelElysia
9cb128d17a
Teams API: Free tier no longer calls team API throughout the app (#2766) 2021-11-02 14:17:12 -04:00
Martin Angers
a8735d55bb
Implement async processing of hosts for label queries (#2288) 2021-11-01 14:13:16 -04:00
Noah Talerman
249927f750
Prepare for Fleet 4.5.0 release (#2741) 2021-11-01 11:39:55 -04:00
Tomas Touceda
fcb5d5b392
Make vulnerability processing less RAM hungry (#2739)
* Make preview work when run from scratch (no orbit running)

* Make vulnerability processing less RAM hungry

* Add changes file

* Only get the cpe list once

* Remove cache

* Try killing osquery as well as orbit and clear their db dir

Co-authored-by: Lucas Rodriguez <lucas@fleetdm.com>
2021-10-29 11:27:12 -03:00
Luke Heath
e50ca4ece7
Allow team admins to manage scheduled queries (#2738) 2021-10-28 16:23:23 -05:00
Luke Heath
fdb6090203
Show team admins create policy buttons (#2732) 2021-10-28 12:14:01 -05:00
Zach Wasserman
8dc34be3a3
Updates and fixes for packaging (#2682)
- Fix Windows MSI generation by changing permissions (#2655).
- Refactor temp directory initialization.
- Use root user for Wine in WiX Docker container.
- Support .pkg packaging on Linux without dependencies (besides Docker)
2021-10-27 16:17:41 -07:00
Luke Heath
b877c4244c
Hide delete button from team observers on host details (#2709) 2021-10-27 16:33:20 -05:00
Luke Heath
5566fdf532
Adjust queries page table columns based on screen size (#2695) 2021-10-27 16:19:23 -05:00
RachelElysia
5832316335
Add/Edit Team UI: Disable cta button if team name is empty (#2705) 2021-10-27 13:52:49 -04:00
RachelElysia
1ef3039b01
Add team member spiffied up (#2717) 2021-10-27 13:51:52 -04:00
RachelElysia
f645669ec2
App UI: Remove form autocomplete from UI input fields (#2703) 2021-10-27 13:31:45 -04:00
gillespi314
cf0baa7ab0
Restyle button for policy filter & software filter (#2679) 2021-10-27 12:15:13 -05:00
RachelElysia
5561bd6731
Dashboard UI: Style activity feed error state and empty state (#2678) 2021-10-27 10:34:34 -04:00
Luke Heath
6998bc5d8a
Include select column in manage hosts for team admins (#2698) 2021-10-26 23:58:44 -05:00
RachelElysia
0f8e3d063b
Manage Host Page: Reintroduce add host modal (#2681)
Reverts #2493 - Generate Installer Modal built within that PR
2021-10-26 16:24:50 -04:00
Martavis Parker
9f804e1858
New card for preview self host policies (#2666) 2021-10-26 14:47:34 -05:00
Tomas Touceda
79f2c7c391
Issue 1798 rest api for live queries (#2675)
* wip

* wip

* Make tests not flaky

* Add changes file

* Make logging and authz thread safe

* Move cancel defer below err check
2021-10-26 11:33:31 -03:00
Luke Heath
b12c7ab925
Add UI for team admin role (#2637) 2021-10-26 09:24:16 -05:00