First of all, thanks to Danny Jessee for tons of information to succeed in this assignment.
If you don’t know, SharePoint 2010/2013 can authenticate against identy providers such as Windows Live ID, Google, Yahoo!, and Facebook like a charm with no coding using Windows Azure Access Control Service (ACS) using Claims Based Authentication.
I see this will drive adoption of websites and therefore makes them successful.
Prerequisites
Facebook Application Steps
Azure ACS Steps
Within Azure ACS, we must configure the following four things:
Identity Provider
Relying Party Application
From within your Azure ACS management portal (e.g., https://{your namespace}.accesscontrol.windows.net) and select Relying party applications from the Trust relationships section in the left navigation. In the next screen, click Add.
In the next screen, provide a name for the relying party application (I often just use the fully-qualified domain name of my SharePoint web application) and choose to Enter settings manually. In the boxes below, enter the following values:
In the Authentication Settings section, select the Identity provider you configured above and choose to Create a new rule group. Under Token Signing Settings, choose whether to Use service namespace certificate (if you have already configured a certificate within Azure ACS) or Use a dedicated certificate if you would like to use a different X.509 certificate exclusively for this relying party application.
Click Save to save changes.
Rule Group
SharePoint 2013 Steps
New Web Application
$realm = "http://www.contoso.com"
$signinurl = "https://[your name space].accesscontrol.windows.net:443/v2/wsfederation?wa=wsignin1.0&wtrealm=http%3a%2f%2fwww.contoso.com%2f"
$certloc = "C:\contoso.cer"
$rootcert = Get-PfxCertificate $certloc
New-SPTrustedRootAuthority "Facebook Azure ACS" -Certificate $rootcert
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($certloc)
$map1 = New-SPClaimTypeMapping -IncomingClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress" -IncomingClaimTypeDisplayName "Email" -SameAsIncoming
$map2 = New-SPClaimTypeMapping -IncomingClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name" -IncomingClaimTypeDisplayName "Display Name" –LocalClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"
$map3 = New-SPClaimTypeMapping -IncomingClaimType "http://www.facebook.com/claims/AccessToken" -IncomingClaimTypeDisplayName "Access Token" -SameAsIncoming
$map4 = New-SPClaimTypeMapping -IncomingClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier" -IncomingClaimTypeDisplayName "Name Identifier" –LocalClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn"
$map5 = New-SPClaimTypeMapping -IncomingClaimType "http://schemas.microsoft.com/ws/2008/06/identity/claims/expiration" -IncomingClaimTypeDisplayName "Expiration" -SameAsIncoming
New-SPTrustedIdentityTokenIssuer -Name "Facebook" -Description "Facebook" -Realm $realm -ImportTrustCertificate $cert -ClaimsMappings $map1,$map2,$map3,$map4,$map5 -SignInUrl $signinurl -IdentifierClaim $map1.InputClaimType
Keep in mind:
Run this PowerShell script from the SharePoint 2013 Management Shell (as an Administrator). If you don’t see red text, then we are good to go
Return to the list of web applications in SharePoint 2013 Central Administration. Select the web application and press Authentication Providers.
Choose the appropriate zone and scroll down. Facebook should now appear in the list of trusted identity providers.
Select Facebook and press Save. You have now configured Azure ACS as a new trusted identity provider, and SharePoint knows it can trust SAML tokens signed with your Azure ACS token-signing certificate.
Set User Access Policy
We are ready to test :)
Sign in to SharePoint 2013 with Facebook
Brief of Steps
Setting up this integration requires configuration steps to be performed in three different places:
You can use some codeplex webparts that requires this technique , http://facebookwebparts.codeplex.com/
Feel free to post any questions in the comments!
1-Mohamed, can you please introduce yourself to our readers?
Hello to all! I am Mohamed Khairy and I am one of the Data Center Technical Solutions Experts Team @ CoEX. I was studying Computer science in Modern Academy in Maadi because of my love to computers and technology and graduated in 2005 and since then and I work in this fascinating field and I had 4 work experiences in different countries before joining CoEX.
2- I understand that you are passionate about IT and Technology, what fascinates you most?
I’ve grown up with technology and simply find it amazing. I find it amazing how I can search for anything I want on the web. I find it amazing that I can learn how technology works and use it to solve problems and make useful things and solutions.
Think to yourself - how proud would you feel if you had an issue and you discover how to solve it using technology products. You can then turn it into a solution model that can be used by many people to fix things that annoy them in their daily operations. This is how I would define passion.
I want to make a difference in this world and to improve myself as a person, and I believe that technology and IT can take me anywhere I would like. Security, programming, web design... the possibilities are endless.
Passion to me is to believe strongly in something and it makes you feel great. For me helping people and customers by providing them with a super solutions and helping them also get tech that can improve and better the quality of their environment is a something that makes me feel so great.
3- Can you explain to us how Identity and access management solutions work?
Identity and access management (IAM) is the security discipline that authorizes users to access corporate systems and information. It helps prevent fraudulent access and use of data that could potentially affect the business, its partners, or even worse, its customers.
Identity and access management (IAM) also brings great values to organizations in reducing IT management cost, enhancing employee productivity, and increasing compliance efficiency.
Microsoft Forefront Identity Manager 2010 R2 (FIM) can help you to standardize identity and access management across your organization by delivering self-service identity management for users, automates lifecycle management across heterogeneous platforms for administrators, and provides a rich policy framework for enforcing corporate security policies on users, devices, enterprise applications, data center servers and business processes.
4-Can you provide any links that can help introduce us and expand our knowledge about FIM?
1- Microsoft Forefront Identity Manager 2010 R2
2- TechNet Forefront Identity Manager 2010 R2
3- What's New in Forefront Identity Manager 2010 R2 SP1
6-Away from technology, do you have any other hobbies or passions?
Two, Squash and Shooting.
7- Any advice to anyone that wants to be an IT guru?
The first piece of advice I have is that, if you are interested in technology, you should pay attention to whatever aspect of the industry you plan on entering. Read books, browse the Internet for information on your field of choice, and practice them, whether it is hardware, software technology, or programming. It never hurts to stay informed J
8- How can people contact you for any technical inquiries?
You can email any questions or inquiries to my email: v-mkhair@microsoft.com
Thank you so much Mohamed Khairy