<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: bolt-io</title>
    <description>The latest articles on Forem by bolt-io (@bolt_io).</description>
    <link>https://forem.com/bolt_io</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F937126%2Fb6baf68f-eb53-48bc-af46-e708dfc7fb39.png</url>
      <title>Forem: bolt-io</title>
      <link>https://forem.com/bolt_io</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/bolt_io"/>
    <language>en</language>
    <item>
      <title>How I verified my LinkedIn employment</title>
      <dc:creator>bolt-io</dc:creator>
      <pubDate>Fri, 05 May 2023 09:28:20 +0000</pubDate>
      <link>https://forem.com/bolt_io/how-i-verified-my-linkedin-employment-nh6</link>
      <guid>https://forem.com/bolt_io/how-i-verified-my-linkedin-employment-nh6</guid>
      <description>&lt;p&gt;The problem with LinkedIn's employment section is that you have to take it at face value. I could easily add an entry stating I have worked for Microsoft for the past 5 years and it would be up to the recruiter and/or potential employers to do their diligence to be confident in my claims. Well that's all about to change...&lt;/p&gt;

&lt;h1&gt;
  
  
  LinkedIn verified workplace
&lt;/h1&gt;

&lt;p&gt;Microsoft and LinkedIn have released a new feature to verify a LinkedIn member's workplace using Microsoft Entra Verified ID to build confidence that the user is who they say they are and have worked where they claim they have. I won't go in to the detail here, but if you want to learn more about this feature you can do so on &lt;a href="https://www.microsoft.com/en-us/security/blog/2023/04/12/linkedin-and-microsoft-entra-introduce-a-new-way-to-verify-your-workplace/"&gt;Microsoft's blog post&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Note: At the time of writing, this is still in private preview, and &lt;a href="https://kocho.co.uk"&gt;Kocho&lt;/a&gt; are 1 of 70 organisations testing and delivering feedback but don't worry, we will ensure this feature is refined and ready to be rolled out to the mass as soon as possible.&lt;/p&gt;

&lt;h1&gt;
  
  
  Steps for verification
&lt;/h1&gt;

&lt;p&gt;1 - Ensure you have the latest LinkedIn mobile app:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Android 4.1.813 or newer&lt;/li&gt;
&lt;li&gt;iOS 9.27.2336 or newer (within the app, the Apple store states 9.1.312)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;2 - Open the app and navigate to your profile&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--prsToqyY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kera4rnz1rzrf9dmqoi7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--prsToqyY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kera4rnz1rzrf9dmqoi7.png" alt="LinkedIn App homepage" width="551" height="1075"&gt;&lt;/a&gt; &lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5GpS_H4F--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z9cfclml866xiyck2d4r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5GpS_H4F--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z9cfclml866xiyck2d4r.png" alt="LinkedIn App sidebar" width="658" height="509"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;3 - Open your "about this profile" section&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aoAPals1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5bq8y3wyh0fck1min81x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aoAPals1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5bq8y3wyh0fck1min81x.png" alt="LinkedIn about your profile section" width="558" height="1086"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4 - Click on "verify your workplace" - If you don't see this option, please make sure you have the correct LinkedIn app version (specified above) and that your organisation is setup for LinkedIn verified workplace.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--idpSRuHn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/08kbfg2lr2w3tdxbdcfy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--idpSRuHn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/08kbfg2lr2w3tdxbdcfy.png" alt="LinkedIn profile about section" width="523" height="369"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;5 - You'll be shown some information about workplace verification - click "verify" to continue&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vTH6LSJW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/od6j3k52kwa5opoq1kkr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vTH6LSJW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/od6j3k52kwa5opoq1kkr.png" alt="LinkedIn workplace verification information screen" width="552" height="1076"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;6 - Sign-in to your corporate account. This will issue you a Verified ID verified employee credential in the background&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Ex6wTeJz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h8kzj8fjstk3gioh98am.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ex6wTeJz--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h8kzj8fjstk3gioh98am.png" alt="Azure AD sign-in screen" width="439" height="538"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;7 - Wait for your Verified ID credential to be issued - you don't need to do anything here, a webapp is issuing your verified employee credential in the background!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--f2bgIMNi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pg6qcurjj8q27ub1rltk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--f2bgIMNi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pg6qcurjj8q27ub1rltk.png" alt="Verified ID credential issuance waiting screen" width="250" height="85"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;8 - When your credential is issued, you'll see a screen asking you to authorise the presentation of your verified employee credential to LinkedIn - Click "submit" if you're happy with the information you're sharing&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JdNDY3ID--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/df1x7i0jigvf7hioipkp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JdNDY3ID--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/df1x7i0jigvf7hioipkp.png" alt="Consent screen" width="547" height="1067"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;9 - LinkedIn will now verify your employment, and upon success your workplace verification will be added to your profile!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FA2-wzHl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l68jbgzmkw2vzld17zqx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FA2-wzHl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l68jbgzmkw2vzld17zqx.png" alt="Successful verification message" width="422" height="265"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And that's it! Your LinkedIn employment is verified. You can navigate to your profile and see the verification &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--jZybZeNO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jhvh0be7k379v9i3f18c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--jZybZeNO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jhvh0be7k379v9i3f18c.png" alt="LinkedIn profile verification" width="654" height="526"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can also view and delete your verifications within &lt;a href="https://www.linkedin.com/mypreferences/d/verifications"&gt;account preferences&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--suKGPLPu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dfn4drt141fb5blo50r4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--suKGPLPu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dfn4drt141fb5blo50r4.png" alt="LinkedIn settings page" width="628" height="252"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HMJjcGTW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cqp74f26ifl4bbzkhh1i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HMJjcGTW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cqp74f26ifl4bbzkhh1i.png" alt="Verifications" width="800" height="174"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;LinkedIn workplace verification is super easy to do, and it will give confidence to recruiters and employers. Once we've concluded testing with Microsoft this feature will be available to all and I encourage you to take advantage of it!&lt;/p&gt;

</description>
      <category>linkedin</category>
      <category>verifiedid</category>
      <category>microsoft</category>
    </item>
    <item>
      <title>Decentralised Identity Showdown: A Comparison of did:ion and did:web</title>
      <dc:creator>bolt-io</dc:creator>
      <pubDate>Mon, 27 Feb 2023 08:46:01 +0000</pubDate>
      <link>https://forem.com/bolt_io/decentralised-identity-showdown-a-comparison-of-didion-and-didweb-5d2h</link>
      <guid>https://forem.com/bolt_io/decentralised-identity-showdown-a-comparison-of-didion-and-didweb-5d2h</guid>
      <description>&lt;h2&gt;
  
  
  Preface
&lt;/h2&gt;

&lt;p&gt;Decentralised identities is a new emerging identity platform based on open standards, it puts the user in control of their own data. This blog focuses on the differences of publishing your decentralised identifier (DID), used for verification of an issued credential, on web or ION. If you're new to decentralised identities, I recommend reading up on it &lt;a href="https://aka.ms/didfordevs" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  Intro
&lt;/h1&gt;

&lt;p&gt;I recently setup our production Verified ID service in Azure. When you are creating a new Verified ID service, there is a choice to choose your preferred trust system. The choice is between using Web (default) or ION. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2epyq5yqwor3u7aysc6v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2epyq5yqwor3u7aysc6v.png" alt="View of setup screen on Verified ID service in Azure" width="800" height="509"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once your Verified ID service is initialised you cannot change this trust system without deleting all your credentials and resetting the service, so it's a pretty big choice to get right... but often people are unsure about the differences of did:web and did:ion.&lt;/p&gt;

&lt;p&gt;At a high level, did:ion and did:web are two different methods for creating and managing your decentralised identifiers. These decentralised identifiers are used to validate the authenticity of a credential being presented.&lt;/p&gt;

&lt;h1&gt;
  
  
  did:ion
&lt;/h1&gt;

&lt;p&gt;When I setup our production service, I chose did:ion as the trust system. did:ion uses ION (Identity Overlay Network), a level 2 open and permissionless network. It can support thousands of transactions per second and uses distributed ledgers to enable censorship and be tamper evasive. It runs as a platform atop of the Bitcoin blockchain. &lt;/p&gt;

&lt;p&gt;You can use the &lt;a href="https://identity.foundation/ion/explorer/?did=did%3Aion%3AEiCcqI2edLiaTTcfKvCfydEZO_cUKUAafwnBrSqfiNeoCg%3AeyJkZWx0YSI6eyJwYXRjaGVzIjpbeyJhY3Rpb24iOiJyZXBsYWNlIiwiZG9jdW1lbnQiOnsicHVibGljS2V5cyI6W3siaWQiOiJkYTRjMDVkNmUwMjM0Y2EyODhlM2ZmNDc4ZTgzNjI5OXZjU2lnbmluZ0tleS1kMzhiMCIsInB1YmxpY0tleUp3ayI6eyJjcnYiOiJzZWNwMjU2azEiLCJrdHkiOiJFQyIsIngiOiJWc3pLWm8ya2JJVW5TcVBCWDJOUmtWYXBHRy14cXNtbXdNbG9yUEJCeXRRIiwieSI6InZpZTI5bUZKOFBqRko5ZW43SGxxMEZFTUZzdE8ycDZPeUZ5Q0V2LXhDRmMifSwicHVycG9zZXMiOlsiYXV0aGVudGljYXRpb24iLCJhc3NlcnRpb25NZXRob2QiXSwidHlwZSI6IkVjZHNhU2VjcDI1NmsxVmVyaWZpY2F0aW9uS2V5MjAxOSJ9XSwic2VydmljZXMiOlt7ImlkIjoibGlua2VkZG9tYWlucyIsInNlcnZpY2VFbmRwb2ludCI6eyJvcmlnaW5zIjpbImh0dHBzOi8va29jaG8uY28udWsvIl19LCJ0eXBlIjoiTGlua2VkRG9tYWlucyJ9LHsiaWQiOiJodWIiLCJzZXJ2aWNlRW5kcG9pbnQiOnsiaW5zdGFuY2VzIjpbImh0dHBzOi8vaHViLmRpZC5tc2lkZW50aXR5LmNvbS92MS4wL2VjZGRkYmNhLWZjZTAtNDgxMi05MWZjLWFiMjc1MTZiMzNmYiJdfSwidHlwZSI6IklkZW50aXR5SHViIn1dfX1dLCJ1cGRhdGVDb21taXRtZW50IjoiRWlDUlVva0JTQkRJZXB2ejZyWWI2NG54UFRBOWxIeXJWdnliUjRaNk5CZjVTUSJ9LCJzdWZmaXhEYXRhIjp7ImRlbHRhSGFzaCI6IkVpQkVlaXhKQnNGdWFXREdJb2hHNXVOQ3F3NHFpcHNxMnF1N0VCc2V5NWJTZUEiLCJyZWNvdmVyeUNvbW1pdG1lbnQiOiJFaURWMmhub1NkeWNNTXVlNE5wSWNrYTBzMUJ6Tk9hTDczaGF0d1JpNGRZQUFBIn19" rel="noopener noreferrer"&gt;ION network explorer&lt;/a&gt; to view published documents.&lt;/p&gt;

&lt;h1&gt;
  
  
  did:web
&lt;/h1&gt;

&lt;p&gt;On the other hand, you can chose did:web. This is a little more familiar to people as it relies on existing web technologies such as DNS and HTTPS. With this approach the trust is with the domain owner and due to needing to verify each presentation request for validity, the DID document needs to be highly available and able to respond to thousands of requests a second for large and mature implementations. If the issuer's domain is not available to verify at the time of presentation, the user may see some security warnings but can continue after accepting the warning. Will this get stricter as the platform matures... perhaps.&lt;/p&gt;

&lt;h1&gt;
  
  
  Decentralisation
&lt;/h1&gt;

&lt;p&gt;I mentioned that did:web relies on a domain being highly available and scalable for verifying the credential being presented, by definition having reliance on this central authority is not only a single point of failure, it makes did:web less decentralised compared to did:ion. This also makes did:web less secure, as you are putting trust into the domain owner to manage and control the DID; whereas did:ion relies on a fully decentralised and distributed network overlay platform.&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;In summary, the main difference is the underlying technology. With existing web technologies like DNS and HTTPS, issuers can leverage did:web. However, for a truly decentralised platform, you should use did:ion, which uses the ION protocol and blockchain technology. &lt;/p&gt;

&lt;p&gt;I highly recommend going for did:ion if your use case would allow it. Not only is it more secure, it's more decentralised, has a higher trust level, and ensures immutability. Moreover, did:ion will allow your issued credentials to still be issuer verified should the your implementation cease to exist in the future.&lt;/p&gt;

</description>
      <category>crypto</category>
      <category>blockchain</category>
      <category>web3</category>
      <category>offers</category>
    </item>
    <item>
      <title>Your back-up authentication method may leave your account at risk 🔐</title>
      <dc:creator>bolt-io</dc:creator>
      <pubDate>Thu, 05 Jan 2023 12:42:59 +0000</pubDate>
      <link>https://forem.com/bolt_io/your-back-up-authentication-method-may-leave-your-account-at-risk-jk4</link>
      <guid>https://forem.com/bolt_io/your-back-up-authentication-method-may-leave-your-account-at-risk-jk4</guid>
      <description>&lt;p&gt;In today's world of identity and security, there is a big push for passwordless authentication. However, even when you enable passwordless, there is always the option to fallback to entering a password when using Azure Active Directory (AAD).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--RAJ9Z76M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i6r37hismiwdcyossiyb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--RAJ9Z76M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i6r37hismiwdcyossiyb.png" alt="Microsoft Login showing ability to fall back to password based sign-in" width="800" height="741"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For those who have not randomised their AAD password when going to passwordless, there is still a risk your account can be targeted using this traditional authentication method; leaving you liable to the already established social engineering tactics.&lt;/p&gt;

&lt;p&gt;Of course, this does not just land itself to passwords and passwordless. When I enrolled two factor authentication (2FA) with GitHub, I was given a set of recovery keys. A great initiative in order to allow users to gain access to their account should they not be able to use that mechanism anymore... but this relies on one important thing:- those security keys being stored securely. Too many people without cyber security awareness will simply copy those keys, paste them into a txt file and name that file " account recovery keys" meaning that the enhanced security on your account is just a facade should an attacker have access to your files.&lt;/p&gt;

&lt;p&gt;Even if we are cyber conscious, there are often controls outside of our control enforced on our authentication experience. Some companies specify if you add Microsoft Authenticator as an authentication method, you must also add a second authentication method, often this is forced to be SMS/Phone based.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Your account is only as secure as your lowest authentication method rating.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What do I mean by this? Let's say you had just password authentication, this is probably bottom tier in terms of account security hygiene. Well, if you add two-factor authentication (2FA) with an SMS/Phone based one-time password (OTP), your account is undoubtably more secure than it once was but there are SMS intercept attacks that can allow attackers to have unauthorised access to your account.&lt;/p&gt;

&lt;p&gt;Okay, so password and 2FA with SMS is insecure, so I've enrolled time-based one-time password (TOTP) to my account. Well, you're still susceptible to the SMS intercept attacks if you kept your phone authentication method on your account as a back-up authentication system; since the point of back-up authentication methods are to allow you to use that method to gain access to your account if you can't get a TOTP. Therefore, those organisations that force you to have a SMS/Phone call based back-up method are lowering your account security rating! I challenge you to take that to your security team.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--r_ouObND--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lq2xuze8yz528l5ltylw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--r_ouObND--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lq2xuze8yz528l5ltylw.png" alt="Account sign-in prompt with ability to click &amp;quot;I can't use my Microsoft Authenticator app right now&amp;quot;" width="800" height="668"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Bk3uQKEh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0rgxzkviu35d5i9vov2l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Bk3uQKEh--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0rgxzkviu35d5i9vov2l.png" alt="Image showing ability to use a back-up verification method - SMS" width="800" height="1047"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;My final notes on this topic:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Never use the same password across multiple accounts.&lt;/li&gt;
&lt;li&gt;Always aim for the strongest authentication method available.&lt;/li&gt;
&lt;li&gt;If you have recovery keys to store, make sure they are stored and secured properly.&lt;/li&gt;
&lt;li&gt;If you enrol a stronger method then check to see if other, more susceptible, methods can be removed.&lt;/li&gt;
&lt;li&gt;Challenge the policies in your company if you think they can improve their security posture.&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>identity</category>
      <category>mfa</category>
      <category>authentication</category>
      <category>security</category>
    </item>
    <item>
      <title>How I almost got locked out of 50+ accounts</title>
      <dc:creator>bolt-io</dc:creator>
      <pubDate>Tue, 04 Oct 2022 15:30:43 +0000</pubDate>
      <link>https://forem.com/bolt_io/how-i-almost-got-locked-out-of-50-accounts-amb</link>
      <guid>https://forem.com/bolt_io/how-i-almost-got-locked-out-of-50-accounts-amb</guid>
      <description>&lt;h2&gt;
  
  
  Background
&lt;/h2&gt;

&lt;p&gt;I work with many clients and have done in my current employment since March 2020. It’s fair to say that I have access to multiple client environments; some of which I developed and provisioned, and some of which I help support. Along with my personal accounts, this means my Microsoft Authenticator app is used for 59 accounts!&lt;/p&gt;

&lt;p&gt;I’ve also had my phone for almost 5 years. As one of the first iPhone X’s on the market, the last past year has been a struggle for keeping the available storage in check. It was time for a new phone.&lt;/p&gt;

&lt;h2&gt;
  
  
  New phone time
&lt;/h2&gt;

&lt;p&gt;The new iPhones were out in September 2022, and I had my eyes on the iPhone 14 Pro with 1TB of storage (the other extreme, but now I know I won’t run out of storage anytime soon!).&lt;/p&gt;

&lt;p&gt;Apple products are great for upgrading. Switched the new phone on, sat it beside the old one and it automatically prompted me to transfer all my files, apps, and settings. At the end of the transfer my old phone prompted me to reset it, so I could sell it on or give it to a family member. I decided against this, at least until I saw everything was secure, transferred, and working on the new phone.&lt;/p&gt;

&lt;h2&gt;
  
  
  Microsoft Authenticator
&lt;/h2&gt;

&lt;p&gt;One of the things I use multiple times per day is Microsoft Authenticator. All my native AAD accounts are device enrolled and Passwordless enabled (this will become important soon). &lt;/p&gt;

&lt;p&gt;Alongside my native accounts, I have federated accounts – these count for about 80% of the accounts I have. I can’t use my federated accounts for Passwordless sign-in, but they are used for push-notifications for multi-factor authentication (MFA) against client tenants.&lt;/p&gt;

&lt;p&gt;I also have multiple accounts used for MFA one-time passwords (OTPs), for discord, GitHub, LinkedIn, Pluralsight, etc.&lt;/p&gt;

&lt;h2&gt;
  
  
  Action required
&lt;/h2&gt;

&lt;p&gt;I opened my authenticator, all my Azure Active Directory (AAD) accounts, both native/local and federated had action required warning underneath them.&lt;/p&gt;

&lt;p&gt;My new device fingerprint wasn’t the same as my old device, and I need to re-enrol my new iPhone on all of my AAD accounts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PupRdODX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mrrh2asdi6tlo26rbd7n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PupRdODX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mrrh2asdi6tlo26rbd7n.png" alt="Action required" width="800" height="272"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For my native/local accounts, I could use my password to enrol the new Microsoft Authenticator app as a new trusted device… but for my native accounts I use Passwordless, therefore I did not know what my password was!&lt;/p&gt;

&lt;p&gt;Moreover, for my federated accounts, since there is no “password handling” in the federated tenant, I could not go down the password reset route and the only option I was presented with was to scan a QR code as if I was setting up Microsoft Authenticator from scratch.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--D6zIF2PW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6q6oltc7plqykbde99y4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--D6zIF2PW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6q6oltc7plqykbde99y4.png" alt="Full account details" width="602" height="332"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For some of my federated accounts, I had setup my phone number as an authentication method first, before enrolling the Microsoft Authenticator app. These accounts allowed me to MFA via SMS and setup the new phone, for the others… I was stuck.&lt;/p&gt;

&lt;p&gt;Well, almost. If there is another administrator with the correct role to manage authentication methods (e.g., authentication administrator) then they could remove my old iPhone from the authentication methods.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iyA87W8U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ay12wq2mav7780vo9v57.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iyA87W8U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ay12wq2mav7780vo9v57.png" alt="Force MFA re-enrolment" width="602" height="372"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This would force me to setup a new MFA method when signing in next time. This administrator could also add a new authentication method and setup my phone number as an authentication method to reinforce that the account remains secure.&lt;/p&gt;

&lt;p&gt;Seems a lot of work, especially when we are talking about over 50 AAD accounts. This would take forever.&lt;/p&gt;

&lt;h2&gt;
  
  
  The brainwave
&lt;/h2&gt;

&lt;p&gt;I didn’t wipe my old device!&lt;/p&gt;

&lt;p&gt;There was no-one else I required bar myself if I used my old device to authenticate then transfer the authentication method over to my new device. Heading over to &lt;a href="https://aka.ms/mfasetup"&gt;aka.ms/mfasetup&lt;/a&gt;, I successfully logged into my corporate account using Passwordless on my old device.&lt;/p&gt;

&lt;p&gt;From this screen I was able to add a new method, my new device’s Microsoft Authenticator app.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MjQhcKEO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/84uijrzekpem8qkbuhv4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MjQhcKEO--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/84uijrzekpem8qkbuhv4.png" alt="Enroling a new device" width="602" height="323"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once I was enrolled, I could remove the old device from the list of authentication methods, just in case it fell into the wrong hands.&lt;/p&gt;

&lt;h2&gt;
  
  
  Success!
&lt;/h2&gt;

&lt;p&gt;I was able to login with my new phone, and setup Passwordless authentication for native accounts. All I had to do now was switch organisation, use my old phone for MFA, register my new phone, delete the old, and setup a phone sign-in method (if I ever lose the device, I can use SMS as an MFA method in the future). &lt;/p&gt;

&lt;p&gt;I then proceeded to do this for the remaining accounts, which did take a long time and was very repetitive, but this was much better than contacting each client and getting their IT support staff to reset the sign-in methods for me.&lt;/p&gt;

&lt;h2&gt;
  
  
  Takeaways
&lt;/h2&gt;

&lt;p&gt;If you’re changing your phone, don’t wipe the existing phone until you’ve recovered all your Azure Active Directory accounts and enrolled them on the new device. The Microsoft Authenticator cloud backup and recovery steps does not mean you can instantly start using all your accounts like normal. This is due to the credential being tied to a specific device and never sent over the network; therefore, you must prove your identity and enrol the new device before the credential is created.&lt;/p&gt;

</description>
      <category>authenticatorapp</category>
      <category>azure</category>
      <category>aad</category>
      <category>security</category>
    </item>
  </channel>
</rss>
