{"id":1327,"date":"2023-11-14T07:47:30","date_gmt":"2023-11-14T15:47:30","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/identity\/?p=1327"},"modified":"2024-02-20T09:21:27","modified_gmt":"2024-02-20T17:21:27","slug":"introducing-native-auth","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/identity\/introducing-native-auth\/","title":{"rendered":"Introducing Native Authentication for consumer mobile applications"},"content":{"rendered":"<p>Authentication experiences are the gateway to consumer applications. Friction in sign-up or sign-in has a direct impact on user onboarding, retention, and ultimately company revenue. These processes should be smooth and align with your brand&#8217;s identity to instill consumer confidence and trust. With that, we&#8217;d like to share some work we&#8217;re doing to make this easier and invite you to get an early look.<\/p>\n<p><div  class=\"d-flex justify-content-center\"><a class=\"cta_button_link btn-primary mb-24\" href=\"https:\/\/aka.ms\/NativeAuthPrPSignup\" target=\"_blank\">Sign up for Native Authentication private preview<\/a><\/div><\/p>\n<h2>Why Native Authentication matters<\/h2>\n<p>In the standard, browser-delegated mobile app login process, users often experience a disruptive jump during authentication. They are taken to a system browser for authentication only to be redirected back to the app when the login is complete. This leads to a diluted experience and branding can be compromised. Consumer mobile app developers often look for solutions that give them greater control over the user interface and experience.<\/p>\n<h2>Craft seamless, pixel-perfect authentication experiences<\/h2>\n<p>Native Authentication empowers you to take complete control over the design of the login experience. It allows you to craft stunning, pixel-perfect authentication screens that seamlessly integrated into your apps, rather than having to rely on browser-based solutions.<\/p>\n<p>You can build rich, mobile-first sign-up and sign-in journeys using either our API or the Microsoft Authentication Library (MSAL), for Android and iOS. This API-centric approach offers extensive flexibility in design as well as the ability to create highly customized interactions and flows. All of which are essential for crafting stunning and delightful consumer mobile applications.<\/p>\n<p><div style=\"width: 640px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1327-1\" width=\"640\" height=\"360\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/devblogs.microsoft.com\/identity\/wp-content\/uploads\/sites\/74\/2023\/11\/Native-Authentication.mp4?_=1\" \/><a href=\"https:\/\/devblogs.microsoft.com\/identity\/wp-content\/uploads\/sites\/74\/2023\/11\/Native-Authentication.mp4\">https:\/\/devblogs.microsoft.com\/identity\/wp-content\/uploads\/sites\/74\/2023\/11\/Native-Authentication.mp4<\/a><\/video><\/div><\/p>\n<h2>Authentication made simple, while you focus on building your app<\/h2>\n<p>We have designed our SDK with some key principles in mind. All with the goal of simplifying the process of adding authentication to your app:<\/p>\n<h3>No identity expertise required<\/h3>\n<p>Our SDK offers scenario-based, intuitive interfaces that eliminate the need for deep identity knowledge. The interfaces abstract away the details of the identity protocol and automatically take care of caching, session, and token management, offering a secure and reliable way of adding authentication.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/identity\/wp-content\/uploads\/sites\/74\/2023\/11\/Native-auth-code-sample.png\" alt=\"native-auth-code-sample\" \/><\/p>\n<p><div style=\"width: 640px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1327-2\" width=\"640\" height=\"360\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/youtube\" src=\"https:\/\/www.youtube.com\/watch?v=ykf3sm5nxRc&#038;_=2\" \/><a href=\"https:\/\/www.youtube.com\/watch?v=ykf3sm5nxRc\">https:\/\/www.youtube.com\/watch?v=ykf3sm5nxRc<\/a><\/video><\/div><\/p>\n<h3>Discoverable via IDE<\/h3>\n<p>We appreciate that following long, step-by-step guides can be tedious. Which is why the native authentication SDK takes full advantage of IDE autocompletions, making integration a breeze with improved developer productivity.<\/p>\n<h3>State machines limit developer error<\/h3>\n<p>Coding errors are reduced by modelling SDK flows as a state machine. The states closely mimic actual user login flow. The design of the state machine limits what actions a developer can implement at each state. Let\u2019s say, for example, a one-time passcode has been sent and the state machine is now in a state called CodeRequired. Developers can call only methods that make sense for that state\u2014submitCode() and resendCode(). The IDE will automatically restrict any other methods at this state, effectively minimizing the potential for developer error and abstracting away the complexities of protocol orchestration.<\/p>\n<p><div style=\"width: 640px;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-1327-3\" width=\"640\" height=\"360\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/devblogs.microsoft.com\/identity\/wp-content\/uploads\/sites\/74\/2023\/11\/State-machine-example.mp4?_=3\" \/><a href=\"https:\/\/devblogs.microsoft.com\/identity\/wp-content\/uploads\/sites\/74\/2023\/11\/State-machine-example.mp4\">https:\/\/devblogs.microsoft.com\/identity\/wp-content\/uploads\/sites\/74\/2023\/11\/State-machine-example.mp4<\/a><\/video><\/div><\/p>\n<h3>Secure from the ground up<\/h3>\n<p>The Native Authentication SDK and the underlying API have been designed from the ground up with security in mind. The Microsoft Identity standards team and other industry players are working within the IETF to define a new standard that enables first-party clients to support native interaction patterns. Our API and SDK are based on this and enable native apps to authenticate securely, leveraging platform security capabilities like identity protection, and others, yet to be implemented, such as conditional access and MFA.<\/p>\n<h2>Participate in the private preview program<\/h2>\n<p>We are actively looking for developers to participate in a private preview of this new feature, ahead of the broader public preview release. If you are interested, or you believe this would be valuable for your organization, we would be happy to collaborate with you. Simply click the link below to register!<\/p>\n<p><div  class=\"d-flex justify-content-center\"><a class=\"cta_button_link btn-primary mb-24\" href=\"https:\/\/aka.ms\/NativeAuthPrPSignup\" target=\"_blank\">Sign up for Native Authentication private preview<\/a><\/div><\/p>\n<h2>Join us at Microsoft Ignite<\/h2>\n<p>If you\u2019re attending the Microsoft Ignite conference this week, you\u2019ll have the opportunity to sit down with one of our experts in a one-on-one session to ask them questions about your own particular scenarios. Sessions will take place both virtually and in-person, at the Connection Zone at Ignite, and are <a href=\"https:\/\/ignite.microsoft.com\/en-US\/get-started#personatabs&amp;tab3\">available to book<\/a> for free now.<\/p>\n<h2>Let\u2019s stay connected<\/h2>\n<p>To learn more or test out features of the Microsoft Entra suite of solutions, visit our <a href=\"https:\/\/developer.microsoft.com\/en-us\/identity\/\">developer center<\/a>. Sign up for email updates on the <a href=\"https:\/\/devblogs.microsoft.com\/identity\/\">Identity blog<\/a> to keep up with all things Identity. And, follow us on <a href=\"https:\/\/www.youtube.com\/@MicrosoftSecurity\/playlists\">YouTube<\/a> for video overviews, tutorials, and deep dives.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog post outlines the importance of smooth and brand-aligned login processes for customer satisfaction and loyalty. We invite you to take an early look at work we&#8217;re doing to help you make your mobile app login journeys more user-friendly and in line with your brand&#8217;s identity.<\/p>\n","protected":false},"author":119380,"featured_media":717,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[32,33],"tags":[38,17,16,47,50,24,39],"class_list":["post-1327","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news","category-product-updates","tag-authentication","tag-customer-identity","tag-entra","tag-external-id","tag-identity","tag-identity-standards","tag-native-authentication"],"acf":[],"blog_post_summary":"<p>This blog post outlines the importance of smooth and brand-aligned login processes for customer satisfaction and loyalty. We invite you to take an early look at work we&#8217;re doing to help you make your mobile app login journeys more user-friendly and in line with your brand&#8217;s identity.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/posts\/1327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/users\/119380"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/comments?post=1327"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/posts\/1327\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/media\/717"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/media?parent=1327"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/categories?post=1327"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/identity\/wp-json\/wp\/v2\/tags?post=1327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}