Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Privacy concerns MSAL.framework: Name, E-mail, Phone, Other.. Linked to user identity #2093

Open
Volodymyr-13 opened this issue Mar 16, 2024 · 6 comments
Assignees
Labels

Comments

@Volodymyr-13
Copy link

I've recently incorporated the latest MSAL into my application, and upon generating a privacy report in Xcode, I discovered concerning data collection practices.

Screenshot

The extent of data collection outlined in the report is excessive and likely to unsettle my app's users when they encounter it on the App Store. Could you please assist in removing all data collection, tracking, and user identity linking functionalities?

@Volodymyr-13
Copy link
Author

Currently, my intention is to completely eliminate MSAL from my application.
It's the primary source of data collection, including phone numbers and email addresses.
Therefore, I need to specify this on my App Store page, indicating that my app will collect such information.
I don't want potential users to perceive that my app is gathering their phone numbers or email addresses.

@Volodymyr-13
Copy link
Author

Volodymyr-13 commented Mar 22, 2024

Ok, after removing this SDK I'm getting just this in privacy report:

Screenshot

This is NOT linked and just minimum required. Thats how it should be..

Also, I'm using Google Drive and Dropbox SDK's to integrate their cloud services into my app.

@oldalton
Copy link
Member

oldalton commented Apr 11, 2024

MSAL SDK doesn't directly collect this information, but this information will be processed as part of the authentication and identity validation services that MSAL SDK is relying on. Any other SDK that does the same should have the same minimum set of privacy declarations, including your own app if it's calling Entra ID endpoints directly. By eliminating MSAL SDK, you're not fundamentally changing privacy stance of your app, as long as you still do authentication for your end users.

@oldalton oldalton self-assigned this Apr 11, 2024
@ika020202
Copy link

ika020202 commented Apr 26, 2024

Privacy labels declared by MSAL may not be required to be disclosed, as it applies to Optional disclosure.
ref: https://developer.apple.com/app-store/app-privacy-details/#:~:text=to%20your%20app.-,Optional%20disclosure,-Data%20types%20that

The same OAuth library, AppAuth-iOS, does not declare any privacy labels.
Please consider and confirm the above information.

@oldalton
Copy link
Member

Thanks for your inputs, @ika020202. One of the bulletpoints in the optional disclosure list is the following:

Collection of the data occurs only in infrequent cases that are not part of your app’s primary functionality, and which are optional for the user. and

Examples of data that may not need to be disclosed include data collected in optional feedback forms or customer service requests that are unrelated to the primary purpose of the app and meet the other criteria above.

Verifying user's identity is the primary functionality of both MSAL and AppAuth SDKs, and that is considered a primary functionality. Therefore, I don't think it classifies as optional disclosure.

@ika020202
Copy link

Thanks for the reply, @oldalton.

As you point out, it may not be possible to make all privacy information optional disclosure.
However, I suppose there are excessive privacy declarations in relation to the following.

To speculate on the flow of privacy information between MSAL and IDProvider or App,

MSAL To MS IDProvider

  • Only authentication information such as user ID and password is sent.

MSAL To App

  • Which data the App collects depends on the scope of the oauth and the App specification, and these privacy declarations are optional

  • The user interface presents a screen that asks the user for permission.

It would be possible to omit some privacy label declarations, except for Identifiers privacy labels such as User ID, which are required in the above flow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants