parse-community / parse-community/parse-server

Installation class cannot be accessible only with master key

Open
#5,875 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
21.4k
Forks
4.8k
Avg merge
7h 45m
Merged PRs (30d)
11

Description

Issue Description

From the client SDKs it seems that the Installation class is intended to be fully accessible to the user and cannot be made accessible only with the master key.

For example in Android SDK the ParseInstallation.getCurrentInstallation() does not expose all the fields it sends to the server when calling save() such as timeZone. This means that it is not easily possible to set the Installation to be accessible with master key only and use a cloud code function to create / update the Installation object. So a user can read and manipulate their Installation object.

Steps to reproduce

...

Expected Results

It should be possible to make the Installation class only accessible with master key.

Suggested Solution

It should be possible to use a cloud code function to create / update the fields of an Installation object.

Actual Outcome

There seems to be no way to not expose all fields of the Installation object to the user.

Environment Setup
  • Server
    • parse-server version (Be specific! Don't say 'latest'.) : 3.x
    • parse-client android SDK version: 1.20.0
Logs/Trace

...

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 Android SDK entry point ParseInstallation.getCurrentInstallation() and the Installation fields sent during save(), then trace the corresponding Parse Server access-control and Cloud Code paths. Done means an Installation class can be restricted to master-key access while Cloud Code can create or update the fields required by the client SDK.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
api, backend, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.