Facebook – Software Engineer’s explanation of Facebook photo privacy, with UML diagram

facebookfacebook-privacySecurity

Facebook photo privacy is more complex than most people think – including the bloggers who fill the Internet trying to explain it in simple terms.

Not only there is the basic album-level privacy setting to consider, but also what happens with Tagging (and related privacy settings) as well as the Share button when clicked by a Friend.

Has anybody seen a good, engineering-type (e.g. UML) diagram? I envision it should include the various privacy "states" a photo can be in, what causes state transitions, and the characteristics of each state?

Best Answer

These are all explained in

http://www.facebook.com/privacy/explanation.php and http://www.facebook.com/help/?page=831

I have not seen any UML diagrams for this for I do not think anyone will easily make one just for display given the requirements you supplied.


Here are all items related to photos based on sourced information from Facebook. Anyone with experience with UMLs will be able to model this for use in their software projects (assuming there is nothing preventing this from happening).

Privacy Guide - Basic Info
http://www.facebook.com/privacy/explanation.php#basicinfo

Connecting on Facebook
Your name, profile picture, gender, networks and username are available to everyone because this info is essential to helping you connect with your friends and family. Name and profile picture help friends recognize you.

Control for what you're tagged in
You control who can see the photos and videos you're tagged in that appear on your profile. Keep in mind, the owner of a photo can still share that photo with people you're not friends with. If you don't want your tag to appear, remove it from the photo or video itself. This will also prevent it from appearing on your profile.

Information available to everyone
Information you've shared with everyone - as well as your name, profile picture, gender, networks, and username - could be seen by anyone on the internet. Please be aware that it will be visible to anyone viewing your profile, and apps and websites you and your friends use will be able to access it.

Search
"Public search" on the Apps and Websites page controls whether people who enter your name in a search engine will see a preview of your Facebook profile.

Choose Your Privacy Settings > Connecting on Facebook

Posts by me
Default setting for posts, including status updates and photos

Types of Views
- Friends and Networks (Make this visible to Option)
- Friends of Friends (Make this visible to Option)
- Friends Only (Make this visible to Option)
- Specific People (Make this visible to Option)
- Custom Lists (Hide this from Option)
- Custom Users (Hide this from Option)

Photos and videos I'm tagged in
The new Facebook profile puts a row of recently tagged photos of you at the top of your profile. Please note that your privacy settings have not changed. Only people you've allowed to view photos you're tagged in will see these photos on your profile.

Types of Views
- Friends and Networks (Make this visible to Option)
- Friends of Friends (Make this visible to Option)
- Friends Only (Make this visible to Option)
- Specific People (Make this visible to Option)
- Custom Lists (Hide this from Option)
- Custom Users (Hide this from Option)

Can comment on posts
Includes status updates, friends' Wall posts, and photos

Types of Views
- Friends and Networks (Make this visible to Option)
- Friends of Friends (Make this visible to Option)
- Friends Only (Make this visible to Option)
- Specific People (Make this visible to Option)
- Custom Lists (Hide this from Option)
- Custom Users (Hide this from Option)

Privacy > Photos
Control who sees each of your photo albums.

Types of Albums
- Profile Pictures
- Wall Photos
- Mobile Uploads
- Third Party Albums
- Personal Albums

Types of Views
- Friends and Networks (Make this visible to Option)
- Friends of Friends (Make this visible to Option)
- Friends Only (Make this visible to Option)
- Specific People (Make this visible to Option)
- Custom Lists (Hide this from Option)
- Custom Users (Hide this from Option)