Group.ReadWrite.All for Planner Graph API

%3CLINGO-SUB%20id%3D%22lingo-sub-294717%22%20slang%3D%22en-US%22%3EGroup.ReadWrite.All%20for%20Planner%20Graph%20API%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-294717%22%20slang%3D%22en-US%22%3E%3CP%3EFrom%20time%20to%20time%2C%20I%20get%20requests%20from%20company%20internal%20clients%20who%20want%20to%20automate%20some%20part%20of%20Planner.%20Examples%20of%20requests%20are%20the%20copying%20of%20Plans%2C%20exporting%20a%20plan%20to%20Excel%20and%20creating%20a%20task%20in%20a%20certain%20format.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3ESince%20the%20Flow%20connector%20is%20almost%20non-functional%2C%20I%20want%20to%20talk%20directly%20to%20the%20%3CA%20href%3D%22https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fgraph%2Fapi%2Fplannerplan-list-tasks%3Fview%3Dgraph-rest-1.0%22%20target%3D%22_self%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3EGraph%20API%20for%20Planner%3C%2FA%3E%2C%20but%20unfortunately%2C%20the%20required%20app%20permissions%20are%20Group.Read.All%20and%20Group.ReadWrite.All%2C%20which%20require%20admin%20consent.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EFirstly%2C%20I%20think%20it%20is%20very%20suprising%20(and%20difficult%20to%20explain%20to%20the%20Admin!)%20that%20an%20app%20whose%20sole%20responsibility%20it%20is%20to%20create%20tasks%20in%20Planner%20needs%20the%20permission%20to%20read%20and%20write%20all%20O365%20Groups.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3ESecondly%2C%20I%20do%20not%20understand%20why%20Group.ReadWrite.All%20even%20requires%20admin%20consent.%20It%20is%20a%20delegated%20permission%2C%20and%20O365%20groups%20are%20meant%20to%20be%20created%20by%20the%20end%20users%20in%20a%20self-service%20kind%20of%20way%20-%20our%20users%20create%20and%20manage%20O365%20groups%20all%20the%20time%20when%20they%20open%20a%20Teams%20channel%20or%20create%20a%20Planner.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EIn%20which%20way%20would%20that%20permission%20be%20more%20dangerous%20or%20risky%20than%2C%20e.g.%2C%20Mail.ReadWrite%20or%20Files.ReadWrite%20(both%20of%20which%20do%20not%20require%20AC)%3F%3C%2FP%3E%3CP%3EIs%20there%20some%20sort%20of%20risk%20assessment%20one%20could%20refer%20to%20when%20applying%20for%20this%20permission%3F%26nbsp%3BHow%20could%20I%20get%20an%20informed%20opinion%20about%20the%20worst%20thing%20that%20could%20happen%20when%20an%20app%20has%20this%20permission%3F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-294717%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EPlanner%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-312912%22%20slang%3D%22en-US%22%3ERe%3A%20Group.ReadWrite.All%20for%20Planner%20Graph%20API%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-312912%22%20slang%3D%22en-US%22%3E%3CP%3EI'm%20running%20into%20the%20same%20problem.%20I%20only%20need%20to%20read%20the%20plans%20assigned%20to%20the%20user%20signed%20in.%20Very%20strange%20that%20this%20is%20not%20possible%20without%20Admin%20Consent.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-447362%22%20slang%3D%22en-US%22%3ERe%3A%20Group.ReadWrite.All%20for%20Planner%20Graph%20API%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-447362%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F249243%22%20target%3D%22_blank%22%3E%40CAlbert%3C%2FA%3E%26nbsp%3Band%20others%26nbsp%3B%3C%2FP%3E%3CP%3E%5B2019-04-12%5D%3C%2FP%3E%3CP%3EWondering%2C%20did%20you%20get%20your%20application%20to%20return%20planner%20data%3F%3C%2FP%3E%3CP%3EI'm%20able%20to%20pull%20all%20groups%20and%20have%20the%20application%20delegations%20for%20testing%2C%20but%20I%20am%20not%20able%20to%20pull%20plans.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E
Highlighted
Occasional Visitor

From time to time, I get requests from company internal clients who want to automate some part of Planner. Examples of requests are the copying of Plans, exporting a plan to Excel and creating a task in a certain format.

 

Since the Flow connector is almost non-functional, I want to talk directly to the Graph API for Planner, but unfortunately, the required app permissions are Group.Read.All and Group.ReadWrite.All, which require admin consent.

 

Firstly, I think it is very suprising (and difficult to explain to the Admin!) that an app whose sole responsibility it is to create tasks in Planner needs the permission to read and write all O365 Groups.

 

Secondly, I do not understand why Group.ReadWrite.All even requires admin consent. It is a delegated permission, and O365 groups are meant to be created by the end users in a self-service kind of way - our users create and manage O365 groups all the time when they open a Teams channel or create a Planner.

 

In which way would that permission be more dangerous or risky than, e.g., Mail.ReadWrite or Files.ReadWrite (both of which do not require AC)?

Is there some sort of risk assessment one could refer to when applying for this permission? How could I get an informed opinion about the worst thing that could happen when an app has this permission?

2 Replies
Highlighted

I'm running into the same problem. I only need to read the plans assigned to the user signed in. Very strange that this is not possible without Admin Consent.

Highlighted

@CAlbert and others 

[2019-04-12]

Wondering, did you get your application to return planner data?

I'm able to pull all groups and have the application delegations for testing, but I am not able to pull plans.