[STR-985] Fix: Allow only Admin users to access certain APIs#104
[STR-985] Fix: Allow only Admin users to access certain APIs#104mendescamara merged 10 commits intomasterfrom
Conversation
|
Hi! I'm VTEX IO CI/CD Bot and I'll be helping you to publish your app! 🤖 Please select which version do you want to release:
And then you just need to merge your PR when you are ready! There is no need to create a release commit/tag.
|
|
Beep boop 🤖 I noticed you didn't make any changes at the
In order to keep track, I'll create an issue if you decide now is not a good time
|
Co-authored-by: Iago Espinoza <iago1501@gmail.com>
|
Your PR has been merged! App is being published. 🚀 After the publishing process has been completed (check #vtex-io-releases) and doing A/B tests with the new version, you can deploy your release by running:
After that your app will be updated on all accounts. For more information on the deployment process check the docs. 📖 |
Summary
This branch strengthens admin user validation in the VTEX service layer, adds automated unit tests, fixes the .NET build when the test project lives under the same
dotnet/folder as the app, and runs .NET tests in the Quality Engineering GitHub Actions workflow.NOTE: I am still analyzing the logs to confirm the impact of this change on the APIs.
Changes
Authentication and License Manager (
VtexAPIService)credential/validate, the flow calls the private accounts API/api/pvt/accounts/{account}/logins/{userId}/grantedto confirm the login is granted in License Manager.false(denied access), as well astrueand JSON boolean forms, instead of relying on HTTP status alone.Id, the user is not treated as valid for the LM check.Unit tests
AvailabilityNotify.Testsproject (xUnit + Moq) with tests focused onVtexAPIService(ValidateUserToken,IsValidAuthUser,ListNotifyRequests) and a testHttpMessageHandlerto stub outbound HTTP calls.dotnet/dotnet.slngroups the app and the test project for restore, build, and test from thedotnet/directory.Build and NuGet
availability-notify.csproj,DefaultItemExcludesforAvailabilityNotify.Tests/**so the SDK default glob does not compile test sources into the main assembly (typical cause of CS0246 forMoq/Xuniton the wrong project).NuGet.Configpinningnuget.orgfor reliable restore when machine-level feeds or credential providers fail.CI (GitHub Actions)
The tests are not yet in GitHub Actions because I don't have permission to modify the .github/workflows files.
I have requested permission from the IT team.
How to verify locally
dotnet restore dotnet build dotnet/availability-notify.csproj dotnet test dotnet/AvailabilityNotify.Tests/AvailabilityNotify.Tests.csproj(Adjust paths if you use a different
.slnat the repo root or underdotnet/.)Checklist