It is a great pleasure to be able let you know that v1 of the Active Directory Authentication Library (ADAL) for .NET has reached General Availability! You can add the library to your projects directly from Visual Studio (search for ADAL) or you can download the NuGet package directly from here.
ADAL .NET makes it easy to add authentication capabilities to your client applications, by exposing the features of both Windows Azure Active Directory and Windows Server Active Directory through simple API that require little or no protocol expertise. You can find a comprehensive list of the features in v1 in Vittorio's deep dive post.
ADAL went through a long and thorough developer preview process, started in August last year (when it was still called AAL). Since then we've released three updates, each of them reflecting your invaluable feedback and the growing set of capabilities exposed by Windows Azure AD and Active Directory Federation Services in Windows Server 2012 R2. Furthermore: an increasing number of Microsoft products and services are taking advantage of the library (the support for organizational accounts in new ASP.NET tools in Visual Studio 2013 are a good example). We believe we reached the right feature set to release a good V1, one which will help you take advantage of Active Directory in your .NET applications.
I want to personally thank you for the many hours you have spent working with ADAL and giving us feedback! Please keep the information flowing: ADAL .NET reached v1, but we still have ADAL for Windows Store apps and ADAL for non-Microsoft platforms in the pipeline!
Alex Simons (twitter: Alex_A_Simons)Director of Program ManagementActive Directory Division
Can this be used for web apps as well?
I was working through this example (blogs.technet.com/.../improved-windows-azure-active-directory-integration-with-asp-net-amp-visual-studio.aspx) and it doesn't work, I get errors about the app using localdb which isn't supported in azure, and when I run in test (localhost) I get no valid key mapping for securityToken, which I think is because of the localdb as well.