-
Notifications
You must be signed in to change notification settings - Fork 65
Open
Milestone
Description
They say they're for built-in users, but it looks like they're for regular silo users users.
omicron/nexus/external-api/src/lib.rs
Lines 483 to 504 in 1f91ca1
| /// List built-in (system) users in silo | |
| #[endpoint { | |
| method = GET, | |
| path = "/v1/system/users", | |
| tags = ["system/silos"], | |
| }] | |
| async fn silo_user_list( | |
| rqctx: RequestContext<Self::Context>, | |
| query_params: Query<PaginatedById<params::SiloSelector>>, | |
| ) -> Result<HttpResponseOk<ResultsPage<views::User>>, HttpError>; | |
| /// Fetch built-in (system) user | |
| #[endpoint { | |
| method = GET, | |
| path = "/v1/system/users/{user_id}", | |
| tags = ["system/silos"], | |
| }] | |
| async fn silo_user_view( | |
| rqctx: RequestContext<Self::Context>, | |
| path_params: Path<params::UserParam>, | |
| query_params: Query<params::SiloSelector>, | |
| ) -> Result<HttpResponseOk<views::User>, HttpError>; |
silo_user_list call chain
omicron/nexus/src/external_api/http_entrypoints.rs
Lines 655 to 656 in 1f91ca1
| let users = nexus | |
| .silo_list_users(&opctx, &silo_lookup, &pag_params) |
omicron/nexus/db-queries/src/db/datastore/silo_user.rs
Lines 710 to 714 in 1f91ca1
| paginated(silo_user, id, pagparams) | |
| .filter(silo_id.eq(authz_silo_user_list.silo().id())) | |
| .filter(user_provision_type.eq(db_silo.user_provision_type)) | |
| .filter(time_deleted.is_null()) | |
| .select(model::SiloUser::as_select()) |
silo_user_view call chain
omicron/nexus/src/external_api/http_entrypoints.rs
Lines 687 to 688 in 1f91ca1
| let user = nexus | |
| .silo_user_fetch(&opctx, &silo_lookup, path.user_id) |
Lines 313 to 330 in 1f91ca1
| /// Fetch a user in a Silo | |
| pub(crate) async fn silo_user_fetch( | |
| &self, | |
| opctx: &OpContext, | |
| silo_lookup: &lookup::Silo<'_>, | |
| silo_user_id: SiloUserUuid, | |
| ) -> LookupResult<SiloUser> { | |
| let (authz_silo,) = silo_lookup.lookup_for(authz::Action::Read).await?; | |
| let (_, silo_user) = self | |
| .silo_user_lookup_by_id( | |
| opctx, | |
| &authz_silo, | |
| silo_user_id, | |
| authz::Action::Read, | |
| ) | |
| .await?; | |
| Ok(silo_user) | |
| } |
Metadata
Metadata
Assignees
Labels
No labels