Commit graph

17572 commits

Author SHA1 Message Date
Ian Littman
ab958704f7
Fix insufficient deduplication on vulnerabilities count query (#31021)
Fixes #27580.

# 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://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#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 automated tests
- [x] Manual QA for all new/changed functionality
2025-07-17 17:40:21 -05:00
Sarah Gillespie
ce02856f85
Potential datastore optimizations for concurrent use of list mdm command API to poll results by host identifier (#30804) 2025-07-17 15:25:31 -05:00
Lucas Manuel Rodriguez
2a7547eb37
Update orbit CHANGELOG.md with 1.45.1 release date to stable (#30991) 2025-07-17 15:29:18 -03:00
Dante Catalfamo
484e4896de
Make sure SAML requests always ask for email format NameID (#31008)
#30978
2025-07-17 14:25:33 -04:00
Noah Talerman
0492dcbcdf
Making a request: Fast track for Fleeties (#31004)
Why? 
- Fleetie feature requests are creating a bottleneck during the
[Unpacking the
why](https://fleetdm.com/handbook/product-design#unpacking-the-why)
stage in the new feature request pipeline.
- Most, if not all, Fleetie feature requests don't need to be unpacked.
They come from dogfooding use cases that don't require a former IT admin
to understand.
2025-07-17 13:17:56 -04:00
Jahziel Villasana-Espinoza
3324157511
Use upgrade code if available to improve accuracy of auto-install policy (#30977)
> Closes #27447

# 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://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files)
for more information.
- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Ian Littman <iansltx@gmail.com>
2025-07-17 12:18:06 -04:00
Ian Littman
c6ab9939b5
Extract UpgradeCode from MSI custom packages, use for better uninstall script generation (#30969)
Fixes #27758.

<img width="807" height="303" alt="image"
src="https://github.com/user-attachments/assets/58e5b9bc-42d6-4195-868e-bf6206ec9cd5"
/>

# 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://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#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] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [x] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [x] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-07-17 10:33:23 -05:00
Juan Fernandez
fdfef5adf1
30311: Fix race condition in test (#30903)
For #30311 

Refactored `AddHostsToTeam` so that batch size can be specified via a
parameter and not a global variable.
2025-07-17 10:20:49 -04:00
Lucas Manuel Rodriguez
8f2f805741
Use UUID if osquery identifier not set (#30990)
Change related to https://github.com/fleetdm/fleet/issues/28818.
2025-07-17 16:03:01 +02:00
Mitch Francese
e380abfd0e
Fixed typo for step 4 of "Running the vulnerability dashboard with Docker." (#30731)
Changed `docker compose up --build` to `docker-compose up --build`
2025-07-17 10:00:22 -04:00
Victor Lyuboslavsky
d70f5fd501
Deleting host deletes its host identity cert. (#30984)
Fixes #30474

# Checklist for submitter
- [x] Added/updated automated tests


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Tests**
* Added new test cases to verify that re-enrollment with a deleted
host's certificate is correctly rejected.
* **Bug Fixes**
* Improved host deletion to ensure related certificate records are
properly cleared.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-17 15:40:05 +02:00
Jahziel Villasana-Espinoza
da697eb0c4
update logic and copy in case of vpp verification failure (#30964)
> Closes #30938 

# 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] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
- [x] For unreleased bug fixes in a release candidate, confirmed that
the fix is not expected to adversely impact load test results or alerted
the release DRI if additional load testing is needed.
2025-07-17 08:31:36 -04:00
Victor Lyuboslavsky
f79fed9712
Added auth.require_http_message_signature server option. (#30983)
For #30947 

# Checklist for submitter

- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] Added/updated automated tests


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Added support for requiring HTTP message signatures for fleetd
requests, configurable via a new setting.
* Enhanced middleware to enforce HTTP message signature requirements
when enabled.

* **Tests**
* Introduced integration tests to verify host identity endpoints enforce
HTTP message signature requirements.
* Updated test utilities and suite setup to support configurable
signature enforcement.

* **Chores**
* Refactored configuration and test server options to support the new
signature enforcement feature.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-17 13:23:19 +02:00
Konstantin Sykulev
97120876cd
Sort package ids to ensure consistent uninstall script generation (#30968)
Fixes #29286

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#changes-files)
for more information.
- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-07-16 20:44:30 -05:00
Mike Thomas
5df4bd7106
Update meetups.ejs (#30972)
Removed Mac Admin Monthly. Looks like this isn't an active event
anymore.
2025-07-17 08:46:55 +09:00
Jahziel Villasana-Espinoza
5159b82281
add a JSON schema for homebrew FMA inputs (#30881)
# 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] Manual QA for all new/changed functionality
2025-07-16 19:41:39 -04:00
Eric
9b8d438c63
Website: update deliver-apple-csr exits (#30952)
Closes: https://github.com/fleetdm/fleet/issues/30914

Changes:
- Updated the `deliver-apple-csr` endpoint to return a
`csrMissingRequiredValue ` response when the provided unsigned CSR data
does not contain a required value.
2025-07-16 18:07:19 -05:00
Jordan Montgomery
fc1211436c
Add note to macOS MDM setup about failures during Setup Assistant (#30897)
For #30089 . This behavior appears to be an Apple bug, or at least an
unsupported usecase(rebooting while at the Remote Management screen,
before the DeviceConfigured is sent) and thus our best course of action
is to document that a user should Wipe/Reset the device when this
happens unless we learn more about how to prevent this which seems
unlikely.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Documentation**
* Added a new section detailing potential causes and recovery steps for
automatic enrollment failures during macOS MDM setup.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Marko Lisica <83164494+marko-lisica@users.noreply.github.com>
Co-authored-by: Rachael Shaw <r@rachael.wtf>
2025-07-16 17:50:18 -05:00
Eric
f6857f1081
Website: Update configuration profile builder (#30970)
Changes:
- Commented out the FileVault and BitLocker payloads in the
configuration profile builder until we can test the generated payloads
- Updated the configuration builder to automatically select the access
type of Windows settings if the setting only supports one access type.
- Added support for 6 Firewall-related settings for Windows
2025-07-16 17:33:01 -05:00
Eric
e0c1929e4b
Website: Update create-android-signup-url error handling (#30956)
Closes #30935

Changes:
- Updated created-android-signup-url to return a bad request response if
a provided callback URL cannot be used to create an Android Enterprise
signup URL.
2025-07-16 14:44:19 -05:00
Jordan Montgomery
df924f13b3
Update PR Template based on #30574 postmortem (#30957) 2025-07-16 13:24:57 -06:00
Jahziel Villasana-Espinoza
363411b82d
Don't show copy if host is Android (#30951)
> Closes #30905

# 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] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
- [x] For unreleased bug fixes in a release candidate, confirmed that
the fix is not expected to adversely impact load test results or alerted
the release DRI if additional load testing is needed.
2025-07-16 14:43:45 -04:00
Juan Fernandez
049e28ca02
For 29994: Use comshim for proper COM initialization (#30920)
For #29994 

The `mdm_bridge` Orbit table was not using comshim for initializing the multi-threaded COM apartment which was causing panics.
2025-07-16 14:40:28 -04:00
Victor Lyuboslavsky
836cc044d2
Fleet server verifies HTTP signature (#30825)
Fixes #30473 

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
- [x] Added/updated automated tests
- [ ] Manual QA for all new/changed functionality

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Added support for TPM-backed host identity certificates enabling
hardware-backed HTTP signature authentication for hosts.
* Introduced HTTP signature verification middleware for API requests,
applied conditionally for premium licenses.
* Hosts presenting identity certificates must authenticate with matching
HTTP message signatures during enrollment and authentication.
* Added SCEP-based certificate issuance for secure host identity
management.
* Updated enrollment endpoints to use standardized request/response
contract types.

* **Bug Fixes**
* Enhanced authentication logic to verify consistency between host
identity certificates and host records, preventing duplicate or
mismatched identities.

* **Chores**
* Updated dependencies and test infrastructure to support HTTP signature
verification and host identity certificate workflows.
* Added comprehensive integration and datastore tests for host identity
certificate issuance, storage, and authentication.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-16 20:08:27 +02:00
Victor Lyuboslavsky
a31db7fc83
ADR-0002: Not using GitHub Discussions (#30927)
See doc.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Documentation**
* Added a new decision record outlining the reasons for not using GitHub
Discussions for technical conversations and summarizing considered
alternatives.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Luke Heath <luke@fleetdm.com>
2025-07-16 19:55:36 +02:00
Dante Catalfamo
06160d35e9
Explicitly request email NameID from MDM SSO providers (#30886)
#30785
2025-07-16 13:48:38 -04:00
Noah Talerman
b8f75b2b96
New 🗺️ Roadmap board (#30919) 2025-07-16 11:43:28 -06:00
Luke Heath
976e28a21e
Add @fleetdm/go to backend patterns, Rachael is back (#30950) 2025-07-16 11:22:11 -06:00
Victor Lyuboslavsky
2653ae2108
Added "Assert vs require" section to patterns-backend.md (#30928) 2025-07-16 19:21:54 +02:00
Sam Pfluger
439c2cde59
Remove unused auto-issue digital-experience.rituals.yml (#30946) 2025-07-16 11:54:53 -05:00
Sam Pfluger
4e4e2e6357
Comment out customer support eng position (#30948)
@zayhanlon
2025-07-16 11:54:18 -05:00
Jorge Falcon
91cedf039d
Allow Loadtesting environment non-empty s3 bucket cleanup on terraform destroy (#30899)
* Modified resource aws_s3_bucket blocks to include `force_destroy =
true` in firehose.tf and s3.tf.
2025-07-16 12:15:27 -04:00
Magnus Jensen
dcd751d66e
Fix declaration status conditions not following profile status conditions (#30911)
Profile status respect remove operation for pending and failed status,
where the declarations did not, meaning the host would show up with a
wrong status if only a declaration was pending or failed removal.

This was also affecting the `os_setting` api filter option for list
hosts (maybe elsewhere), which is also fixed by this change.

A part of #29824
2025-07-16 18:03:16 +02:00
Jahziel Villasana-Espinoza
4f4865653a
handle dmg and zip installers, which can come from FMA (#30916)
> Closes #30913

# 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] Added support on fleet's osquery simulator `cmd/osquery-perf` for
new osquery data ingestion features.
- [x] Manual QA for all new/changed functionality
2025-07-16 11:06:36 -04:00
Noah Talerman
4eabb79b9d
New t-shirt sizes (#30934) 2025-07-16 08:14:44 -06:00
Luke Heath
e52a8a2ecf
Apply starter library during for fleetctl preview server (#30519) 2025-07-16 08:12:32 -06:00
Jahziel Villasana-Espinoza
d740c50db5
specify script type in readme (#30887)
# 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] Manual QA for all new/changed functionality
2025-07-16 10:08:15 -04:00
Allen Houchins
633f969ce9
Changed CROSS JOIN to INNER JOIN to fix syntax error (#30851)
The example queries that we provide for the `chrome_extensions` and
`firefox_addons` table produce a syntax error because they use CROSS
JOIN instead of INNER JOIN.

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
2025-07-16 09:00:29 -05:00
Eric
34f53b9c05
Website: Update fleet-series-b-memo.pdf (#30925)
Changes:
- Updated the Series B investor memo PDF. The current version in the
repo has incorrect page numbers
2025-07-15 19:41:43 -05:00
Eric
77d515908d
Website: add IT comparison to homepage and /device-management (#30908)
Closes: #26744 

Changes:
- Added PatchMyPC to the IT comparison table on the homepage and the
/device-management page.
2025-07-15 19:26:00 -05:00
Eric
b4d393c4e1
Website: Update fleet-series-b-memo.pdf (#30922)
Closes: https://github.com/fleetdm/confidential/issues/11439

Changes:
- Updated the formatting in the Series B investor memo PDF.
2025-07-15 18:52:18 -05:00
Jahziel Villasana-Espinoza
d6083c500e
avoid oob panic (#30910)
# 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] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
- [x] For unreleased bug fixes in a release candidate, confirmed that
the fix is not expected to adversely impact load test results or alerted
the release DRI if additional load testing is needed.
2025-07-15 19:35:58 -04:00
Mike Thomas
586a1d5b84
Add crosslinks to landing pages (#30866)
closes https://github.com/fleetdm/confidential/issues/11103

- Identified spots on the landing pages to cross-link to each other.

---------

Co-authored-by: Eric <eashaw@sailsjs.com>
2025-07-15 16:39:11 -05:00
Marko Lisica
0ba750f361
Removing status from Figma cover page (#30870)
We decided to remove status from Figma cover page, because it's hard to
maintain and often status doesn't reflect real state of the issue.
2025-07-15 17:13:48 -04:00
Victor Lyuboslavsky
a6c34eae9f
Fix Entra ID SCIM URL documentation (#30823)
Fix Entra ID SCIM URL documentation to match contributor docs:
https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/integrations/scim-integration.md#entra-id-integration
2025-07-15 16:01:41 -05:00
github-actions[bot]
3799af50f9
Update versions of fleetd components in Fleet's TUF [automated] (#30912)
Automated change from [GitHub
action](https://github.com/fleetdm/fleet/actions/workflows/fleetd-tuf.yml).

Co-authored-by: lucasmrod <lucasmrod@users.noreply.github.com>
2025-07-15 17:49:00 -03:00
Ian Littman
694f67a26c
Filter out DEB/RPM installers in ListHostSoftware when they're incompatible with the target host's distro (#30852)
Fixes #29849.

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/guides/committing-changes.md#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 automated tests
- [x] Manual QA for all new/changed functionality
2025-07-15 15:41:42 -05:00
Victor Lyuboslavsky
85a98d83dd
Refactor EnrollOrbit/EnrollHost (#30872)
Fixes #30473 

Refactore Datastore.EnrollHost and Datastore.EnrollOrbit methods to use
functional options. Doing this refactor before adding new options to
those methods. This should make the code more maintainable and easier to
understand.

No functional changes here. Just refactoring.

# Checklist for submitter

- [x] Added/updated automated tests


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Refactor**
* Streamlined host and Orbit enrollment methods to use a flexible
options-based pattern instead of fixed parameter lists.
* Updated related tests and service logic to use the new options
approach, improving clarity and extensibility for enrollment operations.

* **New Features**
* Introduced configuration options for host and Orbit enrollment,
allowing more explicit and customizable parameter setting during
enrollment.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-07-15 17:22:02 -03:00
Sam Pfluger
d7c3ad0f0f
Remove former team member (#30909) 2025-07-15 14:59:05 -05:00
jacobshandling
e497d7c11e
UI: Follow-up for 25798 - update tests, reorganize component locations (#30792)
## Follow-up for #25798

- [x] Added/updated automated tests
- [x] Manual QA

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
Co-authored-by: Gabriel Hernandez <ghernandez345@gmail.com>
2025-07-15 12:33:19 -07:00