Commit graph

3343 commits

Author SHA1 Message Date
Gabriel Hernandez
94037e5e56
fix not sending upn correctly to api when editing cert authority (#27726)
For #27570

fixes issue where upn was not sent back correctly when editing digicert
cert authority
2025-04-01 15:59:36 +01:00
Ian Littman
0293d99800
Remove default EXE install/uninstall scripts, require entering install/uninstall scripts on EXE upload (#27268)
For #27267.

Below is what's shown immediately after selecting an EXE:

<img width="1254" alt="image"
src="https://github.com/user-attachments/assets/a28d8565-de88-448a-bdbc-92aefc34ad55"
/>


TODO:

* Tests
* GitOps requirements changes
* Disabling add button/adding errors when required scripts aren't
specified

# 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/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/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] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Luke Heath <luke@fleetdm.com>
Co-authored-by: Noah Talerman <47070608+noahtalerman@users.noreply.github.com>
Co-authored-by: RachelElysia <rachel@fleetdm.com>
2025-03-31 13:52:06 -05:00
Gabriel Hernandez
8f056c83d1
small fixes to CA story (#27679)
For #27678

adds another error message to UI for custom profiles.

also fixes an issue with the wrong link for private key, and also
2025-03-31 16:53:52 +01:00
RachelElysia
29034bb230
Fleet UI: Pagination follow-up (#27428) 2025-03-31 11:44:04 -04:00
RachelElysia
f11a73dd53
Fleet UI: Responsive accommodations for 7 cards (#27644) 2025-03-28 16:57:25 -04:00
RachelElysia
f7853ddbef
Fleet UI: Tweaks to improve styling on low widths (#27397) 2025-03-28 11:31:50 -04:00
Gabriel Hernandez
007cdc9efa
fixes for editing certificate authorities in UI. (#27583)
For #27581, #27584, #27612

contains a couple of fixes with editing CAs in UI:

- fix for only removing API token, password, or challenge inputs when
the user has not yet made a change to those fields.
- fix for sending empty array when UPN input is empty
- fix for error for private key
- fix when editing a digicert CA when UPN is set from gitops and is null

- [x] Manual QA for all new/changed functionality
2025-03-28 15:22:21 +00:00
RachelElysia
eaa3ce071c
Fleet UI: Fix dropdown from changing when vuln filters change (#27620) 2025-03-28 10:46:22 -04:00
Gabriel Hernandez
626ff8a467
add new idp section on integrations page and show the users idp connection with fleet (#27566)
For #27282

add new idp section on the integration page. This page will show the
different statuses for the users idp connection with fleet.

**not connected**


![image](https://github.com/user-attachments/assets/13fb46c6-64ca-43fa-a259-e7cf3fdb82b1)

**successful connection**


![image](https://github.com/user-attachments/assets/de80eea5-8d76-4b50-8024-5f702e85f88a)

**failed connection**


![image](https://github.com/user-attachments/assets/bbfcfcf8-51aa-4c08-b57f-cb0c2842313a)

<!-- 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/Committing-Changes.md#changes-files)
for more information.
- [ ] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-03-28 11:23:07 +00:00
jacobshandling
748b5bcd51
Full-stack: Make "Server url" validation conditions consistent across Fleet, update Web Address form validation and submission logic per Fleet best practices (frontend/docs/patterns.md) (#27455)
## For #27454 

Consider Fleet web URL to be valid if it:

- (Front end and back end): uses “https://” or “http://” scheme
 and
- (Front end) accepts only valid or "localhost" hosts (e.g., "a.b.cc" or
"localhost", but not "a.b")
- (Back end) accepts any host (e.g., "localhost", "a.b.cc", or even
"a.b")


### Setup flow UI URL validation:

![setup](https://github.com/user-attachments/assets/34a428d2-5731-46f2-b708-c88b790e3667)

### Org settings UI URL validation:

![org-settings](https://github.com/user-attachments/assets/147916c8-9c5b-4ae7-9e14-625c65b42d0a)

### Server URL validation:
<img width="1464" alt="invalid-url-server"
src="https://github.com/user-attachments/assets/83a112e1-6318-4b09-864d-fe66a223835d"
/>

### Invalid Fleet server URL in DB error:

![invalid-url-in-db](https://github.com/user-attachments/assets/aae591fb-6cc3-49bd-8556-22129be4c2c4)


- [x] Changes file added for user-visible changes in `changes/`,
- [x] Added/updated automated tests
- [ ] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-27 13:56:38 -07:00
Martin Angers
2bb5efd25b
Adjust delete host message for iDevices (#27513) 2025-03-25 15:33:24 -04:00
Gabriel Hernandez
5c56796403
update error message on os settings error details on host details (#27441)
For #27440

Updates showing the profile error message in os settings error cell to
show on a different error message from the API.

<!-- 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
2025-03-25 14:01:54 +00:00
Gabriel Hernandez
11dcb2dbf9
reset some form inputs if others are changed to force users to reenter their values (#27399)
For #26606

This makes a change to empty out the API token, Password, or Challange
inputs when other inputs on their form changes. This forces the user to
put in that value again so that their change can be authenticated.
2025-03-21 16:33:09 +00:00
Gabriel Hernandez
174c389aae
test and fixes for ca forms and modals (#27381)
For #26606

Test and fixes for CA forms

---------

Co-authored-by: Sarah Gillespie <73313222+gillespi314@users.noreply.github.com>
2025-03-21 15:00:30 +00:00
Victor Lyuboslavsky
e7e9f54071
Updated FileVault and BitLocker error messages (#27365)
For #24862

# 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`.
- [x] Added/updated automated tests
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality
2025-03-21 09:56:50 -05:00
Gabriel Hernandez
735328c1e7
UI cleanup for cert auth list header and list item descriptions (#27378) 2025-03-21 14:29:49 +00:00
RachelElysia
0271390b4e
Fleet UI: Do not allow clicking a button that doesn't work (#27364) 2025-03-21 09:35:59 -04:00
RachelElysia
ea37ad6df3
Fleet UI: Surface Windows FMA (#27068) 2025-03-21 09:33:06 -04:00
Gabriel Hernandez
af40739e90
add error for custom profile with wrong variable (#27375)
For #26606

add error message when custom profile contains variable that is not
supported
2025-03-20 22:47:35 +00:00
Gabriel Hernandez
c30d3ac03b
small changes to placeholder and hint text in CA forms (#27372)
For #26606

small changes to digicert and custom scep forms placeholders and help
text
2025-03-20 22:03:10 +00:00
Rachael Shaw
11e8ed27da
#24586 Use consistent language in error messages ("upload" -> "add") (#27316)
See #24586
2025-03-20 15:44:09 -05:00
Dante Catalfamo
e9f1d52f6a
Fix multi-row-select cell firing onClickRow twice (#27010)
#26564
2025-03-20 16:36:59 -04:00
Gabriel Hernandez
549c41e53d
fixes for various UI issues with cert authority feature (#27341)
For #26606

various fixes to the UI for the cert authority feature

- [x] Manual QA for all new/changed functionality
2025-03-20 19:10:48 +00:00
jacobshandling
bc7b3f75f5
A couple naming improvements and cleanups (#27321)
## For #24950 

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

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-20 10:06:46 -07:00
RachelElysia
7f8073624a
FE: Refactor pagination to be a single component (#27224) 2025-03-20 12:40:43 -04:00
Gabriel Hernandez
69165966c8
add UI for adding, editing, deleting new NDES and custom scep cert authorities (#27270)
For #26607, #26608

This adds the ndes and custom scep forms to add those types of
certificate authorities. this includes:

**form for adding and editing ndes**


![image](https://github.com/user-attachments/assets/2effb143-d23b-4a87-948b-4732ddc5c29c)

**form for adding and editing custom scep**


![image](https://github.com/user-attachments/assets/212b496a-0f48-4b2b-aa72-aa482a4e0f6a)

This also contains the removal of the current ndes UI which was on the
mdm settings page

> NOTE: there will be another PR to handle the various error messages
and other polish to the UI.

- [ ] 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/Committing-Changes.md#changes-files)
for more information.
- [ ] Added/updated automated tests
- [ ] Manual QA for all new/changed functionality
2025-03-20 16:14:53 +00:00
RachelElysia
3a04df2746
Fleet UI: Create consistent padding and headers styling for HDP (#27302) 2025-03-20 09:20:30 -04:00
RachelElysia
59d9cafbdd
Fleet UI: Make OS copies in dashboard are consistent (#27248) 2025-03-20 09:20:10 -04:00
RachelElysia
3d3c901d3c
Fleet UI: Disable unsupported auto install of .exe during add flow (#27315) 2025-03-20 09:16:37 -04:00
jacobshandling
c2df8703df
UI: Truncate MDM server url and serial number (#27175)
## For #26295 

<img width="965" alt="Screenshot 2025-03-14 at 4 10 31 PM"
src="https://github.com/user-attachments/assets/908772ef-a666-46ab-82f4-6dbceca17f70"
/>
<img width="965" alt="Screenshot 2025-03-14 at 4 10 26 PM"
src="https://github.com/user-attachments/assets/897c1174-7965-4c3b-8055-6bc2718c2110"
/>



- [x] Changes file added for user-visible changes in `changes/`
- [ ] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-19 09:55:03 -07:00
jacobshandling
915cf416d6
Full-stack: Granular host count data for live queries/policies (#27258)
## For #24950 

- Track more granular host count data when running a live query/policy,
and return it in two new fields of each `"status"`-typed websocket
message
- On completion of live query/policy, display that granular data in a
tooltip in the UI
- Streamline and clarify frontend live query logic
- Update types and field names to better reflect the data they contain
and the sources from which that data is derived
- Add comments to clearly define what various fields of data represent
- Update heading copy rendered while live queries and policies are
running

###
[Demo](https://www.loom.com/share/ad1d64cf527f4fbc981df58ad581242f?sid=a0dc1269-a049-43c3-afdb-65c0bb946ece)

 

![ezgif-6ecb9c3895acd4](https://github.com/user-attachments/assets/02c3ad40-c874-4978-af28-bdaec098906a)



- [x] Changes file added for user-visible changes in `changes/`
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-19 09:53:55 -07:00
Sarah Gillespie
dd99760ee6
Add UI tooltips for errors related to certificates feature in host MDM profiles (#27252) 2025-03-19 10:04:03 -05:00
Scott Gress
f3835e6d49
Allow team admins and team maintainers to manage labels (#27063)
For #27037 

# Checklist for submitter

- [ ] 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/Committing-Changes.md#changes-files)
for more information.

## Details

This PR updates the UI to allow team admins and maintainers to create
labels, and to edit or delete labels that they created. They will not be
able to edit or delete labels created by other team admins or
maintainers, or by global admins. Global admins will still be able to
edit or delete any label.

## Testing

1. Log in a global user and create a new label
1. Create a team admin user
1. Verify that the team admin user can create a label
2. Verify that the team admin user can edit their own label
2. Verify that the team admin user can delete their own label
2. Verify that the team admin user cannot edit or delete the label
created by the global user
3. Create a team maintainer user
1. Verify that the team maintainer user can create a label
2. Verify that the team maintainer user can edit their own label
2. Verify that the team maintainer user can delete their own label
2. Verify that the team maintainer user cannot edit or delete the label
created by the global user
2. Verify that the team maintainer user cannot edit or delete the label
created by the team admin user
3. Verify that the team admin user cannot edit or delete the label
created by the team maintainer user
2025-03-19 09:38:53 -05:00
RachelElysia
4c6a74eacd
Fleet Design: Add software icons into storybook (#27238) 2025-03-19 09:22:12 -04:00
jacobshandling
11307525d1
UI: Validate both org logo URLs, accept data URIs (#27160)
## For #26271 


![ezgif-582a8acaa8686e](https://github.com/user-attachments/assets/4284bbf7-8708-46f3-b020-f4039f8bd1b0)

- [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>
2025-03-18 12:57:07 -07:00
jacobshandling
7953fe2e2c
UI: Simplify New policy flow (#27173)
## For #26052 

- Remove add policy modal from flow
- Update "Schema" links
- Add "Examples" link


![add-policy](https://github.com/user-attachments/assets/69d60573-f6a6-45e8-92ff-4faa29f224a9)




- [x] Changes file added for user-visible changes in `changes/
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-18 12:56:05 -07:00
Sarah Gillespie
e9e0f7b7e3
Update activity log UI for certificate authority features (#27227) 2025-03-18 14:41:03 -05:00
RachelElysia
87cd06bf63
Fleet UI: Unreleased broken software dropdown (#27137) 2025-03-14 10:51:08 -04:00
Gabriel Hernandez
e85b46e915
add UI for editing digicert CA (#27103) 2025-03-13 19:41:22 +00:00
jacobshandling
6a2bbce4fa
UI - Restore accidentally removed GitOps mode compatibility (#27106)
## #27101 

<img width="1352" alt="Screenshot 2025-03-13 at 10 35 08 AM"
src="https://github.com/user-attachments/assets/c89c0d44-e0b8-48bd-98bf-4d9a1b1a908c"
/>

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

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-13 11:52:57 -07:00
Gabriel Hernandez
2f97fecf39
add and delete digicert (#27083)
For #26606

This adds the ability to add and delete digicert integrations in the
fleet UI. this includes:

**The delete modal**


![image](https://github.com/user-attachments/assets/11ab33eb-4db3-4445-8647-2a40436fe2fc)

**the add digicert modal**


![image](https://github.com/user-attachments/assets/c6ae27dc-5a38-4c99-bafa-ef5b9f832ffa)

**integration with API to perform these actions**

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

- [ ] Added/updated automated tests
- [ ] Manual QA for all new/changed functionality
2025-03-13 16:46:10 +00:00
jacobshandling
f3924b9129
UI - make label chooser styling more flexible (#27054)
## Follow-up for https://github.com/fleetdm/fleet/pull/27019

Makes the styling of the label chooser more flexible, will allow
seamless merging of [incoming
changes](https://github.com/fleetdm/fleet/pull/26867)

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

Co-authored-by: Jacob Shandling <jacob@fleetdm.com>
2025-03-12 16:07:10 -07:00
Scott Gress
096a747739
Ability to add labels to queries (front end) (#26867)
For #26649 

# Checklist for submitter

- [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/Committing-Changes.md#changes-files)
for more information.

## Details

This PR adds the ability to select labels when saving or editing a query
in the UI, so that the query will only target hosts with those labels.
It follows the API design from
https://github.com/fleetdm/fleet/pull/26589, utilizing the
`labels_include_any` field. The expectation is that when creating or
updating a query, `labels_include_any` is an array of label names, and
when fetching a single query, `labels_include_any` is an array of
objects with a `name` and an `id` key.

As part of this work the `TargetLabelSelector` component is updated to
allow it to show a message in place of the dropdown when there are no
custom options (e.g. "include any", "include all", "exclude any") to
choose from.
2025-03-12 11:54:29 -07:00
Scott Gress
822fe3dd18
GitOps mode updates (#26733)
For #26719 

Set of updates based on feedback on the GitOps mode. 

- [X] On settings/teams/users, keep "Add user" button and "Actions"
dropdown enabled
- [X] Enable buttons on /settings/integrations/mdm/apple
- [x] Disable form fields (no tooltip) + save button (w/ tooltip) on
/controls/setup-experience/end-user-auth
- [x] Disable "Edit" and "Delete" actions w/ tooltip on software detail
page
- [x] Update Org Settings -> Advanced options to only disable items
available in gitops
  - Domain
  - Verify SSL certs
  - Enable STARTTLS
- [x] Disable adding fleet maintained apps
2025-03-12 11:03:12 -07:00
Scott Gress
20109fa7f8
Allow team admins to view inherited policy details (#26896)
## Details

Quick fix to an issue where when a team admin attempted to via an
inherited policy, they would encounter an eternal spinner / flickering
page. The issue stemmed from a reload cycle being set off by the stored
policy being returned with a team ID of `null`, and existing code that
works around the fact that the `useTeamId` hook modifies the router
state.

## Testing

1. Create an All Teams policy on an instance with at least one team
2. Create an admin for the team
3. Log in as the team admin
4. Go to Policies page, select the team from the dropdown, click on the
inherited policy in the list to view its details.

On main, the details never load.  On this branch, they do.
2025-03-12 10:30:32 -07:00
RachelElysia
dafb0c89f7
Host Software Table: Add vulnerability filters to API and UI (#26995) 2025-03-12 11:26:12 -04:00
jacobshandling
25a3835067
UI - Update label chooser empty state (#27019)
## For #23830 

No labels state –> label present state in 4 places:


![ezgif-38e21421995afd](https://github.com/user-attachments/assets/d71c6a41-ab13-45b1-b6a1-ec1de14fad96)

- [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>
2025-03-11 09:37:23 -07:00
Gabriel Hernandez
9484ac30bc
add UI for certificate authority list (#26955)
For #26605

This is the UI for the certificate authority list that shows the added
CAs. This includes:

**new CA section and list on integration page**


![image](https://github.com/user-attachments/assets/4159bd6d-632e-4adc-ae45-d83f824380ae)

**empty CA list state**


![image](https://github.com/user-attachments/assets/8f27cd8b-53b2-4cf3-ac64-8fa6ec0a2ae2)

**gitops mode on add CA card and CA list**


![image](https://github.com/user-attachments/assets/981a353c-f515-44ed-90d5-f55e412053ba)


![image](https://github.com/user-attachments/assets/286dc503-f2cd-4329-aa46-6301df75b826)


- [ ] Added/updated automated tests
- [x] Manual QA for all new/changed functionality
2025-03-11 14:31:02 +00:00
Dante Catalfamo
fd9664ce4d
Respect user input whitespace when previewing calendar event (#26920)
# 26689
2025-03-11 09:44:02 -04:00
Ian Littman
32143284f6
Force a user to click through to redeem MFA if they aren't on a browser that started the MFA process (#26980)
For #26976.

<img width="384" alt="image"
src="https://github.com/user-attachments/assets/8d057ec2-c3b0-45d1-bb8c-9745b426e27d"
/>

An example of such a browser would be an email link scanner, so this
*should* fix cases where link-scanning was redeeming the MFA link before
the intended user could get to it. Real users can still click through if
they wind up on this page, e.g. if they logged in with a different
browser than the one used to open the MFA link.

Users redeeming MFA with the same browser that initiated the login skp
the button and redeem/land on the dashboard automatically.

# 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/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] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

---------

Co-authored-by: Rachael Shaw <r@rachael.wtf>
2025-03-10 13:56:25 -05:00