{"componentChunkName":"component---src-pages-markdown-remark-fields-slug-js","path":"/engineering/bruteforce-lock-and-unlock/","result":{"data":{"markdownRemark":{"id":"b9026a02-df51-568b-a4d8-9607a9945690","excerpt":"First, let's understand some basic terminology. Basic Terminology Brute-force attack: A method where every possible combination of characters or values is…","html":"<p>First, let's understand some basic terminology.</p>\n<h2 id=\"basic-terminology\" style=\"position:relative;\"><a href=\"#basic-terminology\" aria-label=\"basic terminology permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Basic Terminology</h2>\n<ol>\n<li><strong>Brute-force attack:</strong> A method where every possible combination of characters or values is systematically tried to gain unauthorized access to a system, application, or data.</li>\n<li><strong>Brute-force lock:</strong> Brute-force lock is a type of account lock made to prevent a bruteforce attack.</li>\n<li><strong>Brute-force lockout:</strong> Brute-force lockout is a security mechanism that blocks access after a certain number of failed authentication attempts to prevent unauthorized access through repeated trial and error.</li>\n<li><strong>CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart):</strong> CAPTCHA is a method used to determine whether a user is human by presenting a challenge that is easy for humans to solve but difficult for bots.</li>\n<li><strong>Multi-Factor Authentication (MFA):</strong> MFA is a security method that requires multiple forms of identification to grant access, typically combining something the user knows, has, and is.</li>\n</ol>\n<p>In LoginRadius, you can implement brute-force lockout using APIs.</p>\n<blockquote>\n<p>To implement brute-force lockout, please register in the <a href=\"https://admin-console.loginradius.com/dashboard\"><em>LoginRadius Admin Console</em></a>.</p>\n</blockquote>\n<p>Let's go through the API implementation of brute-force lockout and user unlock.</p>\n<h2 id=\"api-implementation-for-brute-force-lockout\" style=\"position:relative;\"><a href=\"#api-implementation-for-brute-force-lockout\" aria-label=\"api implementation for brute force lockout permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>API Implementation for Brute-force Lockout</h2>\n<h3 id=\"creating-a-basic-application\" style=\"position:relative;\"><a href=\"#creating-a-basic-application\" aria-label=\"creating a basic application permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Creating a Basic Application</h3>\n<ol>\n<li>To implement brute-force lockout using API, create a simple app with login and registration features.</li>\n<li>This can be done by using <em><a href=\"https://admin-console.loginradius.com/deployment/idx\">Admin Console</a></em>.</li>\n<li>Navigate through <em><a href=\"https://devadmin-console.lrinternal.com/deployment/idx\">Deployment > Identity Experience Framework</a></em>.</li>\n<li>You can design the required application using theme, customization, preview, and implement options.</li>\n<li>You can also customize the predefined templates if needed.</li>\n</ol>\n<blockquote>\n<p>You can view the created app using the link <em><a href=\"https://%60%3Capp-name%3E%60.hub.loginradius.com/auth.aspx\">https://<code>&#x3C;app-name></code>.hub.loginradius.com/auth.aspx</a></em> in the <em>implement</em> section of the <em>Identity Experience Framework</em> or from the preview section.</p>\n</blockquote>\n<h3 id=\"brute-force-lockout\" style=\"position:relative;\"><a href=\"#brute-force-lockout\" aria-label=\"brute force lockout permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Brute-force Lockout</h3>\n<h4 id=\"enabling\" style=\"position:relative;\"><a href=\"#enabling\" aria-label=\"enabling permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Enabling</h4>\n<p>In LoginRadius, the brute-force lockout feature can be enabled from the <em><a href=\"https://admin-console.loginradius.com/platform-security/account-protection/auth-security/brute-force-lockout\">Admin Console</a></em>.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 768px; \"\n    >\n      <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 48.61538461538462%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAAAsTAAALEwEAmpwYAAABrElEQVQoz32STWsUQRCG51+JhGzWzdfiZkEU4tVLQC8iBBEhkPyg+Au8eVH0IJhDwLPOV0/P7Ex3T/fOx75W9bLLmqwOPHRT0/XWW9UdPJo8xc7+BIODCXb3xxidnmH88hJ74ycUe4zB4cQzPJ5i7+jE7x8Oj/BgcICd0Ri7dIb/HU+f4eT5CwTOzVHXFrW1sNbRvoaqKmhjoLRG13X437dYLPza0jlLGkGSCpRlhaKYQSkN5xyyLEMYhojCCFJK5HkBmecUlx4paU9xQ8VZkDFk4HckECht8OXrN7x6fY43b9/j3cUVwjhFMtNIiwoVuS3L0hf1a6VgqSh30zTN2iG7C5MMgciWDsIoJiLEcYzK1JDaodAW87Zbu1glb2uZxyaosyAvCj+rtm18RcZSK0Yv23fzxs+nbVtP3/d/FdgUTAUJ3tz+9Ik8A74QxpBDRbBQtxKjlYux4MrZVsGPnz5j0XdehIN943AbKVz/yEhke/K2j2fIlxlESYrZeugEXUJRKgi6FG2Wbjfh53QXjs8o91ciEWT0BPjpbJIKASHEvfi/SIkwEfjwPcIfL/rWGQiSpx0AAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <img\n        class=\"gatsby-resp-image-image\"\n        alt=\"admin_bfl_page.png\"\n        title=\"admin_bfl_page.png\"\n        src=\"/static/a9abab8067a9a5380efae628b960b3cc/e5715/admin_bfl_page.png\"\n        srcset=\"/static/a9abab8067a9a5380efae628b960b3cc/a6d36/admin_bfl_page.png 650w,\n/static/a9abab8067a9a5380efae628b960b3cc/e5715/admin_bfl_page.png 768w,\n/static/a9abab8067a9a5380efae628b960b3cc/c65fa/admin_bfl_page.png 1434w\"\n        sizes=\"(max-width: 768px) 100vw, 768px\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n        loading=\"lazy\"\n      />\n    </span></p>\n<h4 id=\"testing\" style=\"position:relative;\"><a href=\"#testing\" aria-label=\"testing permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Testing</h4>\n<ol>\n<li>Register with a new user and log in with the correct email and password. It is observed that the user is redirected to the profile page after authentication.</li>\n</ol>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 768px; \"\n    >\n      <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 49.38461538461538%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAAAsTAAALEwEAmpwYAAACGElEQVQoz32SzU8TQRiH+Yck3vRGbdQD0hAPxggkWPkS9GA1FMEUYtAGKqaKRkk0losHL5KIRBM0Jh706skPohzUkJbt0t3t7rb71ceZoVUOxEmenXdmNr/5ve87bb7vY9suxZLOz99FtrUKmm5iWi5WtaYwTBHbdaqOt4u9i9yTlHcsHNfFq9dp8zyPKAqpVqtMTk6SvnKZwuNHZGevc0MwPDTIxbFRDMOARgNpIAwDwiAQy4YgIhCx3PcESlBu2LZNdv4W8a4EM/MLXBifYCR5ms6jHcSPHaesabjChWma4nJLEYahEpUaSsf3Wg4jSuUy10aGuX+ykzeZNB9vZ1kb7OVO7DAT5/rZ0nRKuo1uiTTrYNUaGG6EH0TKXSAwnT2CmhA8n0zyZCbDh2dPuTueYnk6zdqDe6y/WBU1swnrNZF2hPg0kctIuZOibk0KikJGwrZWLDJ8NsnE7E2m53JMZTJMDSTIXL1Edm6ez790Vr8YvPpm8nrDVPPLrwZl2ycK/L+iymEobtFFjdI9Z5jq6yM1OsbzlRVm0ilGek8xOjTApx9bvN20effd4P2mJWaT9Q2DHeefoKStLhxK28XSNp2JbrpjMTra2zmR6KK/r4dDBw8QPxKjUqmw32g1RXXZa9ZQdssUz2K5UCC/uMhCPk8ul1PMiXQfLi3hOI7KxPPFEwl2CZr4/h7BViAP/jda/+3HXsE/8YWxtTuNeGcAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <img\n        class=\"gatsby-resp-image-image\"\n        alt=\"loginpage_with_data.png\"\n        title=\"loginpage_with_data.png\"\n        src=\"/static/d3def753c308c27e016d94aff3d5635a/e5715/loginpage_with_data.png\"\n        srcset=\"/static/d3def753c308c27e016d94aff3d5635a/a6d36/loginpage_with_data.png 650w,\n/static/d3def753c308c27e016d94aff3d5635a/e5715/loginpage_with_data.png 768w,\n/static/d3def753c308c27e016d94aff3d5635a/4c5bd/loginpage_with_data.png 1435w\"\n        sizes=\"(max-width: 768px) 100vw, 768px\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n        loading=\"lazy\"\n      />\n    </span>\n<br>\n<span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 768px; \"\n    >\n      <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 50.76923076923077%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB4ElEQVQoz32SS2sTURiG+3u6snhZxFkIihLtSqihpK1GbKnSNo3GdlKhtchoRSNSaa2LaqISUBcJRRMwruuPUFzVNBlvmNtkLsnjOZNOmgj6wTsfB877nPecb/osy8JoNPj5q8ynz1/YKZQo6T/aKn2jINY7X4tUqobYZ1Ormx3VDcvtv8s1GoJhmSZ9pvhIqG3bqKrKjYUYq6sPWYjNsXRzkdELISbGxykVi1SrFdfoled1hFd2U8gFStm2g6ZpKIpCPP6AcCTKZPAsI8cOM3jyBIXdXWF03INbLYRarprNJh7D8oDeta9FrzMUGObV6zdsvcvxWFvk0unjhM6PiSfQaTptoCwJk+UBHdvie3nvynJTvV5najrM3HyM9/kPpFIptLv3Wd98ztbbLIZh7IH203UD26G6gLVajeXbKzx78ZJEMkk4PMu92SCPliNsPk2K96v2JPsbaJrW/pUlUBpuzUyjDgeYuDJFIpFk/vIYk+f8YkAqeknvAP6VUEI7wIoA3rkaIR4YYmZklLWNDZ6srxEY9LOkRtH1/wN7huIlDIYu4juqcLC/nwMDA5zxn8J35BCKz9cD7K7uhD1Tlv/Xx+1tstks2VzO7el0mkwmQz6fdw90xJQ9Y7e8hFJ/APhEsTpxWRLtAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <img\n        class=\"gatsby-resp-image-image\"\n        alt=\"successful_login.png\"\n        title=\"successful_login.png\"\n        src=\"/static/ba2b6d61774f4c9d32738ca535404e8a/e5715/successful_login.png\"\n        srcset=\"/static/ba2b6d61774f4c9d32738ca535404e8a/a6d36/successful_login.png 650w,\n/static/ba2b6d61774f4c9d32738ca535404e8a/e5715/successful_login.png 768w,\n/static/ba2b6d61774f4c9d32738ca535404e8a/c65fa/successful_login.png 1434w\"\n        sizes=\"(max-width: 768px) 100vw, 768px\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n        loading=\"lazy\"\n      />\n    </span></p>\n<ol start=\"2\">\n<li>Now, log out and try to log in with incorrect credentials.</li>\n<li>If the password is incorrect successively till the lockout threshold, the account gets locked. </li>\n<li>Therefore, brute-force lockout is achieved.</li>\n</ol>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 768px; \"\n    >\n      <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 50%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAAAsTAAALEwEAmpwYAAACIklEQVQoz32S3UuTURjA9yclXYRYa4lWMIoIZ4NyNStWF6XGUildY6EkdFFUGIro/Fhz5ubmJngTUhdd2MdFF9ZdRDbJnG57P/a+77Zf550uJkgHfjyH8zznd55zOBYpPE12Osj6yEiFzYkJNsfHyYZCSPPzyLEY+WiUzOws25EI2yJmpqYqbE1OVtgYGyM3EyQ/9wqLlIghL8YopOKErrkJWOsJuS/x/JydYWcLPttRHjZayZk1yynkpQSKmJtoYm7uU5ILyImoyC1i0QETQ/B0PEiToxXfk2d4Bx9x0+PirP0kR5qayRZLKKImVyojiZgXlPeoOooCi6aqGIUCkiwT6OzgxZlm3nTfYnXIz7IQjp6y4mt3sbG1Q3ozx58dlaxcrLAjGeiazq5DZUvkLJqmoes6Ba3Ana4uHvf3824xztC9XoZ9XqKjL1lKJNFVWbRh9liq6U1QLlF1yKq2JzQMVEWhy+PhtvcuPf4AgYEBuq/Y6e24zv2+Pt5/zzCzJjH3Nc/rb3lm13KEBT+zGmXDbMiUajUdims/uOGhx+Gg093OVGiGQb+PqxfO0+66yJcfv/mQVvn0S+JzWuajiKvrEhlFpyiEpsdkn9DZdpnTJxqx1h3iuM2Gs7WF+sN1HGtoQBFvfNAo11x5n1ATwrcrKyzE48QEUfH3wuEwkcgcyVSqcqBRLKKZtQJdNzDEU1VF/4S1C/8b1bqD0CsH7Ob/At3aoIZGA4SQAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <img\n        class=\"gatsby-resp-image-image\"\n        alt=\"incorrect_pwd.png\"\n        title=\"incorrect_pwd.png\"\n        src=\"/static/aa289f7862ab5cf1bb2ece6007b6ebd4/e5715/incorrect_pwd.png\"\n        srcset=\"/static/aa289f7862ab5cf1bb2ece6007b6ebd4/a6d36/incorrect_pwd.png 650w,\n/static/aa289f7862ab5cf1bb2ece6007b6ebd4/e5715/incorrect_pwd.png 768w,\n/static/aa289f7862ab5cf1bb2ece6007b6ebd4/bd9eb/incorrect_pwd.png 1442w\"\n        sizes=\"(max-width: 768px) 100vw, 768px\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n        loading=\"lazy\"\n      />\n    </span></p>\n<blockquote>\n<p>In the <em><a href=\"https://admin-console.loginradius.com/platform-security/account-protection/auth-security/brute-force-lockout\">Admin Console</a></em>, you can set the <em>brute-force lockout threshold, lockout type, and suspend effective period</em>. </p>\n</blockquote>\n<h3 id=\"lockout-types-in-loginradius\" style=\"position:relative;\"><a href=\"#lockout-types-in-loginradius\" aria-label=\"lockout types in loginradius permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Lockout Types in LoginRadius</h3>\n<p>LoginRadius supports the following lockout types: </p>\n<ol>\n<li><strong>Suspend</strong>: Suspends further login attempts after multiple failed tries for a certain amount of time, deterring automated attacks and enhancing system security by limiting access from suspicious sources.</li>\n<li>\n<p><strong>CAPTCHA</strong>: </p>\n<ul>\n<li>A security measure used to unlock a locked account on entering valid credentials by presenting a challenge to solve. </li>\n<li>This challenge is often easy for humans to solve but difficult for the bots.</li>\n</ul>\n<blockquote>\n<p><em>Refer <a href=\"#captcha\">CAPTCHA</a> in miscellaneous section to learn more</em>.</p>\n</blockquote>\n</li>\n<li><strong>Security Questions</strong>: A personalized query set up by the user to verify identity to unlock a locked account with valid credentials.</li>\n<li><strong>Block</strong>: Restricts login attempts from a specific source (email ID or username) after multiple failed tries, enhancing security against unauthorized access.</li>\n</ol>\n<h3 id=\"unlocking-an-account-locked-through-brute-force-lockout\" style=\"position:relative;\"><a href=\"#unlocking-an-account-locked-through-brute-force-lockout\" aria-label=\"unlocking an account locked through brute force lockout permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Unlocking an Account Locked through Brute-force Lockout</h3>\n<p>You can unlock the locked user account in two ways, using:</p>\n<ol>\n<li>Account Update API from the LoginRadius Account API collection.</li>\n<li>Auth Unlock Account by Access Token from the LoginRadius Authentication API collection.</li>\n</ol>\n<blockquote>\n<p>For more understanding on <em>Auth Unlock Account</em>, refer <a href=\"https://www.loginradius.com/docs/api/v2/admin-console/platform-security/auth-security-configuration/\">Auth Security Configuration</a></p>\n</blockquote>\n<h4 id=\"account-update-api-from-the-loginradius-account-api-collection\" style=\"position:relative;\"><a href=\"#account-update-api-from-the-loginradius-account-api-collection\" aria-label=\"account update api from the loginradius account api collection permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Account Update API from the LoginRadius Account API Collection</h4>\n<p>Calling the Account Update API with the provided endpoint, using the given method, providing the <em>apisecret</em> and <em>apikey</em>, and formatting the given body will unlock the account.</p>\n<ol>\n<li>Endpoint: <code>https://api.loginradius.com/identity/v2/manage/account/{uid}</code></li>\n<li>Method: PUT</li>\n<li>Parameters: apisecret, apikey</li>\n<li>Body:</li>\n</ol>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"0\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">{</span>\n<span class=\"grvsc-line\">   ...</span>\n<span class=\"grvsc-line\">  &quot;FirstName&quot;: &quot;Test&quot;,</span>\n<span class=\"grvsc-line\">  &quot;MiddleName&quot;: null,</span>\n<span class=\"grvsc-line\">   ...</span>\n<span class=\"grvsc-line\">}</span></code></pre>\n<ol start=\"5\">\n<li>Response:</li>\n</ol>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"\" data-index=\"1\"><code class=\"grvsc-code\"><span class=\"grvsc-line\">{</span>\n<span class=\"grvsc-line\">    ...</span>\n<span class=\"grvsc-line\">    &quot;LoginLockedType&quot;: &quot;None&quot;,</span>\n<span class=\"grvsc-line\">    &quot;Email&quot;: [</span>\n<span class=\"grvsc-line\">        {</span>\n<span class=\"grvsc-line\">            &quot;Type&quot;: &quot;Primary&quot;,</span>\n<span class=\"grvsc-line\">            &quot;Value&quot;: &quot;user1@yopmail.com&quot;</span>\n<span class=\"grvsc-line\">        }</span>\n<span class=\"grvsc-line\">    ],</span>\n<span class=\"grvsc-line\">    ...</span>\n<span class=\"grvsc-line\">}</span></code></pre>\n<br>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 768px; \"\n    >\n      <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 49.07692307692307%; position: relative; bottom: 0; left: 0; background-image: url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAKABQDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAIF/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEAMQAAAB3KmgD//EABQQAQAAAAAAAAAAAAAAAAAAACD/2gAIAQEAAQUCX//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EABQQAQAAAAAAAAAAAAAAAAAAACD/2gAIAQEABj8CX//EABoQAAEFAQAAAAAAAAAAAAAAABAAARExUWH/2gAIAQEAAT8haxHVp//aAAwDAQACAAMAAAAQ4A//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAaEAACAwEBAAAAAAAAAAAAAAAAAREhQVEx/9oACAEBAAE/EGhliIqrFdw15wXglwrwl9P/2Q=='); background-size: cover; display: block;\"\n  ></span>\n  <img\n        class=\"gatsby-resp-image-image\"\n        alt=\"unlocked_account_update.jpeg\"\n        title=\"unlocked_account_update.jpeg\"\n        src=\"/static/2c6b8e1386c3ac8d4ed9a214833246d0/212bf/unlocked_account_update.jpg\"\n        srcset=\"/static/2c6b8e1386c3ac8d4ed9a214833246d0/6aca1/unlocked_account_update.jpg 650w,\n/static/2c6b8e1386c3ac8d4ed9a214833246d0/212bf/unlocked_account_update.jpg 768w,\n/static/2c6b8e1386c3ac8d4ed9a214833246d0/a90fb/unlocked_account_update.jpg 1433w\"\n        sizes=\"(max-width: 768px) 100vw, 768px\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n        loading=\"lazy\"\n      />\n    </span></p>\n<h2 id=\"conclusion\" style=\"position:relative;\"><a href=\"#conclusion\" aria-label=\"conclusion permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Conclusion</h2>\n<ul>\n<li>Unlocking user accounts previously locked due to brute force lockout using LoginRadius APIs demonstrates the platform's account management and security enhancement efficiency.</li>\n<li>Moving forward, leveraging LoginRadius's robust security features ensures uninterrupted user access while fortifying your system against unauthorized access attempts.</li>\n</ul>\n<h2 id=\"miscellaneous\" style=\"position:relative;\"><a href=\"#miscellaneous\" aria-label=\"miscellaneous permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Miscellaneous</h2>\n<h3 id=\"captcha\" style=\"position:relative;\"><a href=\"#captcha\" aria-label=\"captcha permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>CAPTCHA</h3>\n<p>LoginRadius supports the following types of CAPTCHAs: </p>\n<ul>\n<li>reCAPTCHA V2: Users solve challenges like clicking on images or entering text to prove they're human.</li>\n<li>reCAPTCHA V3: Operates in the background, assessing user behavior to assign a risk score without user interaction.</li>\n<li>hCAPTCHA: Like reCAPTCHA, it offers bot protection with a privacy focus.</li>\n<li>QQ Tencent CAPTCHA: A CAPTCHA service by Tencent commonly used in China to verify human users.</li>\n</ul>\n<h3 id=\"multi-factor-authentication-mfa\" style=\"position:relative;\"><a href=\"#multi-factor-authentication-mfa\" aria-label=\"multi factor authentication mfa permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Multi-Factor Authentication (MFA):</h3>\n<ul>\n<li><em>LoginRadius</em> offers multiple security features, including Multi-Factor Authentication. </li>\n<li>This feature can be enabled from the <em><a href=\"https://admin-console.loginradius.com/dashboard\">Admin Console</a></em> to add an additional layer of security.</li>\n<li>LoginRadius provides predefined MFA types, which can be enabled further.</li>\n</ul>\n<p><em>To understand more about LoginRadius APIs, refer to the <a href=\"https://www.loginradius.com/docs/api/v2/getting-started/introduction/\">API docs</a></em>.</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n  .dark-default-dark {\n    background-color: #1E1E1E;\n    color: #D4D4D4;\n  }\n</style>","headings":[{"value":"Basic Terminology","depth":2},{"value":"API Implementation for Brute-force Lockout","depth":2},{"value":"Creating a Basic Application","depth":3},{"value":"Brute-force Lockout","depth":3},{"value":"Enabling","depth":4},{"value":"Testing","depth":4},{"value":"Lockout Types in LoginRadius","depth":3},{"value":"Unlocking an Account Locked through Brute-force Lockout","depth":3},{"value":"Account Update API from the LoginRadius Account API Collection","depth":4},{"value":"Conclusion","depth":2},{"value":"Miscellaneous","depth":2},{"value":"CAPTCHA","depth":3},{"value":"Multi-Factor Authentication (MFA):","depth":3}],"fields":{"slug":"/engineering/bruteforce-lock-and-unlock/"},"frontmatter":{"metatitle":null,"metadescription":null,"description":"In this blog, you'll learn about brute-force lockout, the creation of a basic app using Identity Experience Framework, and how to unlock a user account using APIs.","title":"Testing Brute-force Lockout with LoginRadius","canonical":null,"date":"May 29, 2024","updated_date":null,"tags":["Brute-force","LoginRadius","Authentication"],"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.5037593984962405,"src":"/static/1ff36040268e755844bfd2e543baf5b5/03979/implementing-brute-force-lockout.png","srcSet":"/static/1ff36040268e755844bfd2e543baf5b5/f5f11/implementing-brute-force-lockout.png 200w,\n/static/1ff36040268e755844bfd2e543baf5b5/6d133/implementing-brute-force-lockout.png 400w,\n/static/1ff36040268e755844bfd2e543baf5b5/03979/implementing-brute-force-lockout.png 800w,\n/static/1ff36040268e755844bfd2e543baf5b5/aca38/implementing-brute-force-lockout.png 1200w","sizes":"(max-width: 800px) 100vw, 800px"}}},"author":{"id":"Gayathri Suresh","github":"gayathrisuresh150501","bio":"Discover the World of a Dynamic Software Engineer: Competitive Coder, Gamer, Badminton, and Handball Player. Enjoys Novels, Embraces All-Round Development, and Passionate about Making a Difference!","avatar":null}}}},"pageContext":{"id":"b9026a02-df51-568b-a4d8-9607a9945690","fields__slug":"/engineering/bruteforce-lock-and-unlock/","__params":{"fields__slug":"engineering"}}},"staticQueryHashes":["1171199041","1384082988","1711371485","1753898100","2100481360","229320306","23180105","528864852"]}