From 87816167bc4f89e83fd0a427a25fcddd9ffc0509 Mon Sep 17 00:00:00 2001 From: Johan Brandhorst-Satzkorn Date: Wed, 14 Feb 2024 18:09:17 -0800 Subject: [PATCH] handlers/credentials: test for pagination parameters Note that this already always returned the pagination parameters, but now we have a test that it does so. --- .../credentials/credential_service_test.go | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/internal/daemon/controller/handlers/credentials/credential_service_test.go b/internal/daemon/controller/handlers/credentials/credential_service_test.go index bbccea572e..7f553dfd7c 100644 --- a/internal/daemon/controller/handlers/credentials/credential_service_test.go +++ b/internal/daemon/controller/handlers/credentials/credential_service_test.go @@ -1830,4 +1830,25 @@ func TestListPagination(t *testing.T) { protocmp.IgnoreFields(&pbs.ListCredentialsResponse{}, "list_token"), ), ) + + // Create unauthenticated user + unauthAt := authtoken.TestAuthToken(t, conn, kmsRepo, o.GetPublicId()) + unauthR := iam.TestRole(t, conn, prj.GetPublicId()) + _ = iam.TestUserRole(t, conn, unauthR.GetPublicId(), unauthAt.GetIamUserId()) + + // Make a request with the unauthenticated user, + // ensure the response is 403 forbidden. + requestInfo = authpb.RequestInfo{ + TokenFormat: uint32(auth.AuthTokenTypeBearer), + PublicId: unauthAt.GetPublicId(), + Token: unauthAt.GetToken(), + } + requestContext = context.WithValue(context.Background(), requests.ContextRequestInformationKey, &requests.RequestContext{}) + ctx = auth.NewVerifierContext(requestContext, iamRepoFn, tokenRepoFn, serversRepoFn, kmsRepo, &requestInfo) + + _, err = s.ListCredentials(ctx, &pbs.ListCredentialsRequest{ + CredentialStoreId: credStore.PublicId, + }) + require.Error(err) + assert.Equal(handlers.ForbiddenError(), err) }