cloudfoundry / cloudfoundry/cloud_controller_ng

Confusing behavior in `/v3/service_credential_bindings/:guid/details`

Open
#2,488 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

unscheduled
Dominant language
Ruby
Stars
207
Forks
373
Avg merge
2d 12h
Merged PRs (30d)
56

Description

Issue

As a non-space developer, non-admin space user, curling /v3/service_credential_bindings returns a list of service credential bindings, but curling /v3/service_credential_bindings/:guid/details for any listed credential binding returns a 404.

Context

It seems like the error case may have been overlooked in the original proposal

Steps to Reproduce

  • create a service credential binding
  • curl /v3/service_credential_bindings as a non-space developer, non admin user, grab the guid
  • curl /v3/service_credential_bindings/:guid/details as a non-space developer, non admin user
  • see that you can view the credential in the list but cannot view the credential details

Expected result

I believe the intent is to keep the credentials return from the details endpoint from being viewable by anyone without space developer or admin permissions, however I would expect to get a 403 as the user already knows the binding is present

Current result

Currently the curl returns a 404

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the /v3/service_credential_bindings and /v3/service_credential_bindings/:guid/details entry points and reproduce the requests as a non-space developer, non-admin user. Trace the permission and missing-resource handling for a listed binding. Done means the details request returns the expected permission response instead of a 404, with coverage for the reported scenario.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby
Domain
api, authorization
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.