Commit Graph
2000 Commits
Author SHA1 Message Date
RachelElysia 6dabcd524c Frontend: Improve URL and email validation (#18445) 2024-04-25 13:03:30 -04:00
Gabriel Hernandez c423f415a6 Fix uploading signed apple mobileconfig profiles (#18482)
relates to #18389

This fixes an issue with some signed apple mobileconfig profiles were
not able to be uploaded.

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-04-25 17:09:53 +01:00
Jacob ShandlingandJacob Shandling 3a6cf2e599 UI – render informative message when user tries to save query with invalid platform(s) (#18473)
## #17771 
![Screenshot 2024-04-22 at 1 10
06 PM](https://github.com/fleetdm/fleet/assets/61553566/6b92efbb-6a5c-49f3-b903-624c85fd2173)

- [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>
2024-04-24 15:25:33 -07:00
Luke Heath 2a1c19e26c Adding changes for Fleet v4.49.0 (#18496) 2024-04-24 14:13:59 -05:00
Gabriel Hernandez 0474d72e9a fix downloading manual enrollment profile (#18487)
relates to #18483

This fixes an issue with downloading a manual enrollment profile on the
device user page. This changes how we download the file to use an anchor
tag and default browser behaviour instead of doing it in JS with the
FileSaver library.

We will probably want to remove all FileSaver library implementations in
the future
2024-04-23 13:54:54 -03:00
RachelElysia 23fed89425 Fleet UI: Not show error state when enabling calendar events automation (#18396) 2024-04-19 09:40:36 -04:00
Victor Lyuboslavsky 72cc82f60d Ignoring Valve Corporation's Steam client's vulnerabilities on Windows and macOS (#18380)
#18126
Ignoring Valve Corporation's Steam client's vulnerabilities on Windows
and macOS
- On Windows and macOS, the true version of the Steam client (like
2021-04-10) cannot be retrieved by standard methods used on other
software. We would need to create custom logic to retrieve the version
of the Steam client.
- Steam client automatically updates itself, so security risk is
somewhat mitigated.

QA note: Items from software_cve table are cleared after 2 hours.

# Checklist for submitter

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/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
2024-04-18 10:12:49 -05:00
Gabriel Hernandez de92d94dbd update os settings table table cell layout (#18393)
relates to #18082

fixes the os settings modal table styling. We make all cells the same
width and truncate when necessary.


![image](https://github.com/fleetdm/fleet/assets/1153709/48714f3c-567a-4631-809b-c4348e9faa6e)

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://fleetdm.com/docs/contributing/committing-changes#changes-files)
for more information.
- [x] Manual QA for all new/changed functionality
2024-04-18 15:49:21 +01:00
RachelElysia 058de69bbd Fleet UI: Equal padding above and below empty states on host details page (#18371) 2024-04-18 09:39:17 -04:00
Sharon KatzandLuke Heath 420e2adb0f Adding changes for patch 4.48.3 (#18306)
Co-authored-by: Luke Heath <luke@fleetdm.com>
2024-04-17 16:41:06 -04:00
RachelElysia 1d34d027e3 [small unreleased bug] Fleet UI: Fix Show schema button location (#18284) 2024-04-17 13:48:48 -04:00
Victor Lyuboslavsky a5c107e082 For calendar integration, calendar event no longer created when policy has an invalid SQL query. (#18352)
For calendar integration, calendar event no longer created when policy
has an invalid SQL query.
#18350 

# Checklist for submitter
- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/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
2024-04-16 16:50:22 -05:00
George Karr 999e200992 Add feature to manage macOS software updates via DDM (#18281)
Feature branch for #17295
2024-04-16 15:18:40 -05:00
Victor Lyuboslavsky 6b2ab24aeb Fixed fleetctl gitops dry-run validation issues when enabling calendar integration for the first time. (#18301)
#18299
Fixed fleetctl gitops dry-run validation issues when enabling calendar
integration for the first time.

# Checklist for submitter

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

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/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
2024-04-16 15:15:08 -05:00
Sarah Gillespie 3ea7a4ba63 Merge branch 'main' into feat-macos-software-updates 2024-04-16 11:30:02 -05:00
Gabriel HernandezandMartin Angers 2fc4e520b8 add ability to create manual labels (#18303)
relates to #17031

Adds functionality to create manual labels in fleet.

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

---------

Co-authored-by: Martin Angers <martin.n.angers@gmail.com>
2024-04-16 17:22:08 +01:00
Jacob ShandlingandJacob Shandling de94299b65 UI – Show percentages of passing and failing hosts when a live policy run completes (#18257)
## Addresses #16500
![Screenshot 2024-04-12 at 4 11
22 PM](https://github.com/fleetdm/fleet/assets/61553566/8f1cf17c-7378-4246-8f17-6f8fe3321b54)


- [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>
2024-04-16 09:00:23 -07:00
gillespi314 be415c1678 Merge branch 'main' into feat-macos-software-updates 2024-04-16 10:24:43 -05:00
gillespi314 3b3f815a42 Merge conflicts 2024-04-16 10:20:59 -05:00
Dante Catalfamo 48036577eb Interpret windows exit codes as a signed integer (#18282)
#17695

The windows exit code is a 32-bit unsigned integer, but the command
interpreter treats it like a signed integer. When a process is killed,
it returns 0xFFFFFFFF (interpreted as -1). We convert the integer to an
signed 32-bit integer to flip it to a -1 to match our expectations, and
fit in our db column.

https://en.wikipedia.org/wiki/Exit_status#Windows

FIxed on both the client and server side.
2024-04-16 10:53:50 -04:00
RachelElysia 41ef4e3ac0 [Small released styling bugs] Fleet UI: Fix last activity's styling (#18279) 2024-04-16 10:43:06 -04:00
Victor Lyuboslavsky f58947012b In fleetctl debug db-locks and fleetctl debug db-innodb-status, fixed 500 errors (#18285) 2024-04-16 07:52:03 -05:00
Lucas Manuel Rodriguez e7f61305a9 New APIs to add/remove manual labels to/from a host (#18283)
#16767

To create a manual label:
```sh
cat labels.yml
---
apiVersion: v1
kind: label
spec:
  name: Manually Managed Example
  label_membership_type: manual
  hosts:
    - lucass-macbook-pro.local
```

To add/delete a manual label to/from a host:
```
curl -k -v -X POST -H "Authorization: Bearer $TEST_TOKEN" https://localhost:8080/api/latest/fleet/hosts/1/labels -d '{"labels": ["Manually Managed Example"]}'

curl -k -v -X DELETE -H "Authorization: Bearer $TEST_TOKEN" https://localhost:8080/api/latest/fleet/hosts/1/labels -d '{"labels": ["Manually Managed Example"]}'
```

API draft changes: https://github.com/fleetdm/fleet/pull/16979/files
Figma with error strings:
https://www.figma.com/file/JiWoAiuHlkt76s3o3Uyz6h/%2316767-API-endpoint-for-updating-a-host's-manual-labels?type=design&node-id=2-130&mode=design&t=pxRPhrn6E1bOCrEd-0

- [X] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/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)
~- [ ] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.~
- [X] Added/updated tests
- ~[ ] If database migrations are included, checked table schema to
confirm autoupdate~
- ~For database migrations:~
- ~[ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.~
- ~[ ] Confirmed that updating the timestamps is acceptable, and will
not cause unwanted side effects.~
- ~[ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).~
- [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)).~
2024-04-16 06:37:58 -03:00
Tim Lee 46f7b6b043 Add Failing Policy Counts to Health API (#17758) 2024-04-15 16:14:21 -06:00
Martin Angers 775fa70c53 Fix Apple profile upload error message when identifier is a duplicate. (#18272)
#18081 

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/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] Manual QA for all new/changed functionality
2024-04-15 16:50:14 -05:00
George Karr fa5e224a4a Add feature to resend MDM configuration profiles (#18280)
Includes PRs #18111, #18212, and #18271
2024-04-15 16:48:42 -05:00
Martin Angers 47279ca2a9 Fix conflicts 2024-04-15 16:10:10 -04:00
Victor Lyuboslavsky 7785aa5070 vulnerabilities.current_instance_checks=no is now an alias for vulnerabilities.disable_schedule=true (#18184)
#16661 
vulnerabilities.current_instance_checks=no is now an alias for
vulnerabilities.disable_schedule=true

PR for doc changes: https://github.com/fleetdm/fleet/pull/18186

# 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.
- [ ] Added/updated tests
- [x] Manual QA for all new/changed functionality
2024-04-15 12:10:52 -05:00
Gabriel HernandezandRoberto Dip 1e6839c004 Feat UI resend profile (#18111)
relates to #17896

UI implementation of the resend profile feature. This adds a resend
button on the OS Settings modal row items that will request the profile
is resent.


![image](https://github.com/fleetdm/fleet/assets/1153709/f9072ccc-2d28-4638-adea-da3cb25da33b)

- [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 <me@roperzh.com>
2024-04-15 14:17:08 +01:00
Gabriel Hernandez 5df04c8cca Merge branch 'main' into feat-resend-config-profile 2024-04-15 11:35:14 +01:00
Sarah Gillespie 03bd837c9c Add backend to resend host MDM profiles (#18212)
Issue #17897 

# Checklist for submitter

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [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
- [x] Manual QA for all new/changed functionality
2024-04-12 14:34:54 -05:00
Dante Catalfamo 80c906aa69 Windows careful bitlocker selection (#18189)
#17796

Fixes an issue in windows server where selecting from `bitlocker_info`
will cause the query to abort. Bitlocker is not available by default
on some version of windows server, so we first check if the optional
component is enabled before making our query
2024-04-12 10:00:46 -04:00
RachelElysia 8fd807be55 Fleet UI: Adding a policy modal can filter by platform (#18006) 2024-04-11 16:30:12 -04:00
Jacob ShandlingandJacob Shandling 02563ffef9 Convert all values to string where possible, even if not derived from a table (#18210)
## Addresses #17946
results from querying chrome extension on macOS Chrome browser:
![Screenshot 2024-04-10 at 4 39
13 PM](https://github.com/fleetdm/fleet/assets/61553566/d67901f3-6e20-4190-8dbb-26e93361555b)

- [x] Changes file added for user-visible changes in `changes/`
- [x] Updated tests
- [x] Manual QA for all new/changed functionality
- [ ] TODO - Manual QA on actual Chromebook

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2024-04-10 18:38:41 -07:00
Jacob ShandlingandJacob Shandling 3f32c870a6 Ignore leading/trailing whitespace when filtering entities; fix url param handling; test broad range of affected endpoints (#17455)
## Addresses #16615 and #18041

### #16615:
- Trim whitespace for backend filtered tables
- Trim whitespace in UI for Queries table search string
<img width="1271" alt="Screenshot 2024-03-06 at 11 46 56 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/b818591c-a977-4203-8adb-3a0d909fcfbb">
<img width="1271" alt="Screenshot 2024-03-06 at 11 47 21 AM"
src="https://github.com/fleetdm/fleet/assets/61553566/3c95b992-31ed-4c12-9763-6f5fc7d78b1f">
<img width="1800" alt="Screenshot 2024-03-06 at 3 18 31 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/05c677a4-80e8-4f94-8abc-235cab4145b7">
<img width="1800" alt="Screenshot 2024-03-06 at 5 05 25 PM"
src="https://github.com/fleetdm/fleet/assets/61553566/4a5529a4-dd5f-463c-97ae-6ceaaaff7f93">


_______________________
### #18041:
#### Global:
![Screenshot 2024-04-03 at 12 21
19 PM](https://github.com/fleetdm/fleet/assets/61553566/9a45a3a6-4136-4851-b887-bd176299d0c2)
 
#### Team:
![Screenshot 2024-04-03 at 12 56
36 PM](https://github.com/fleetdm/fleet/assets/61553566/793c70e7-384b-4705-a373-7e30a5188b03)

#### **Similar fix for `GET` ...`vulnerabilities`**


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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2024-04-10 11:50:08 -07:00
Jacob ShandlingandJacob Shandling dfe51474cd BadRequest when no payloads present; BadRequest for invalid payload types (#18169)
## Addresses #17157 
![Screenshot 2024-04-09 at 4 53
22 PM](https://github.com/fleetdm/fleet/assets/61553566/a6a57f55-275f-4a06-89e7-085262d2672c)

- [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>
2024-04-10 10:55:38 -07:00
RachelElysia 21d1d90e3c Fleet UI: Select a query modal revamp (#18001) 2024-04-10 13:54:31 -04:00
RachelElysia 38e1307d6b Fleet UI: Show hidden columns in schema with a note (#17983) 2024-04-10 13:23:22 -04:00
RachelElysia 0b5e0069d4 Revert "Fleet UI: Add advanced setting to set expiry window for activity log (#17989) (#18185)
## Issue
#17989 

## Description
-BE not finished, in progress, but @lucasmrod is starting oncall so
might not be part of sprint

This reverts commit e99eaf6cd3.

# Checklist for submitter

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

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [ ] 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.
- [ ] 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
- [ ] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [ ] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [ ] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [ ] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [ ] 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)).
2024-04-10 12:30:39 -04:00
RachelElysia e99eaf6cd3 Fleet UI: Add advanced setting to set expiry window for activity log (#17989) 2024-04-10 10:48:46 -04:00
Gabriel Hernandez b6e2da59e4 add UI updates to OS updates page for ddm (#18113)
relates to #17417

implements UI changes for updating os versions with ddm. This is just
changing the nudge preview

also cleans up some older code on the OS updates page.

**new nudge preview:**


![image](https://github.com/fleetdm/fleet/assets/1153709/abd15609-e60b-490e-8ec4-b823874d9771)


- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2024-04-10 11:29:15 +01:00
Martin Angers f4d6136236 Ignore pending DDM profiles when waiting to release a device (#18159)
#18160 

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/` or
`orbit/changes/`.
- [x] Manual QA for all new/changed functionality
2024-04-09 17:12:51 -05:00
Victor Lyuboslavsky 3367b7e036 Added orbit_version, fleet_desktop_version, and scripts_enabled to host details. (#18123)
#17361
#17148

In GET fleet/hosts/:id response, added the following fields:
- orbit_version
  - `orbit_version == null` means this agent is not an orbit agent
- fleet_desktop_version
- `fleet_desktop_version == null` means this agent is not an orbit agent
or it is an older version which is not collecting the desktop version
- `fleet_desktop_version == ""` means this agent is an orbit agent but
does not have fleet desktop
- scripts_enabled
- `scripts_enabled == null` means this agent is not an orbit agent or it
is an older version which is not collecting scripts_enabled

In orbit_info table, added the following fields:
- desktop_version
- scripts_enabled

Updated docs for orbit_info PR:
https://github.com/fleetdm/fleet/pull/18135

Updated API docs: https://github.com/fleetdm/fleet/pull/17814

MDM lock/unlock/wipe error messages are not part of this PR. They will
be in a separate PR.

# 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] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [x] Added/updated tests
- [x] If database migrations are included, checked table schema to
confirm autoupdate
- [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)).
2024-04-09 16:33:44 -05:00
Martin Angers 5d4bc856b9 Add changes file 2024-04-09 13:17:50 -04:00
Roberto Dip f827a4727e use license.IsPremium to check for premium licenses (#18141)
a license can be considered premium for trials, this replaces
occurrences that used comparison operators to check for premium
licences.
2024-04-09 11:15:22 -03:00
Sarah Gillespie 05ccf9ee23 Fix issues related to Fleet builtin labels and reserved MDM profile names (#18043) 2024-04-08 14:34:55 -05:00
Roberto Dip bac13b4af2 Prevent MDM migration without assigned ADE profile (#17999)
for #15929 this prevents us sending the notification to start the MDM
migration if the device doesn't have the right JSON profile assigned.
2024-04-08 11:10:29 -03:00
Martin Angers 7c20b9ba94 Merge branch 'feat-macos-software-updates' into mna-17420-update-software-update-ddm 2024-04-08 09:54:33 -04:00
Jacob ShandlingandJacob Shandling 9e2be0028c UI: Restore missing JavaScript context in HQR config (#18087)
## Addresses #18083 
![Screenshot 2024-04-05 at 9 37
20 AM](https://github.com/fleetdm/fleet/assets/61553566/b683d30c-9af2-4cbb-8cea-b4a6e2422464)



- [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>
2024-04-05 11:47:42 -07:00
Victor Lyuboslavsky 5a6c407e1b Calendar webhook will retry if it receives response 429 (#18067)
#18044 
Calendar webhook will retry if it receives response 429 Too Many
Requests. Webhook request will retry for 30 minutes with a 1 minute max
delay between retries.

# Checklist for submitter

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

<!-- Note that API documentation changes are now addressed by the
product design team. -->

- [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
2024-04-05 12:44:56 -05:00