{"id":11078,"date":"2018-04-05T10:05:53","date_gmt":"2018-04-05T08:05:53","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/"},"modified":"2018-04-05T10:05:53","modified_gmt":"2018-04-05T08:05:53","slug":"password-validation-in-mysql","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/","title":{"rendered":"Password Validation in MySQL"},"content":{"rendered":"<h3>Introduction on validate_password plugin<\/h3>\n<p>Since version 5.6.6 MySQL provides a new security plugins named Password Validation Plugin. The password-validation plugin aims to test passwords strength and improve security. The goal of this blog is to provide you a short overview of the functionalities provided through this plugin and illustrate these functionalities with concrete examples.<\/p>\n<p>As explained into the documentation The validate_password plugin implements two capabilities:<\/p>\n<p>1. The plugin checks the password against the current password policy and rejects the password if it is weak<br \/>\n2. The VALIDATE_PASSWORD_STRENGTH() SQL function assesses the strength of potential passwords. The function takes a password argument and returns an integer from 0 (weak) to 100 (strong).<\/p>\n<p>validate_password plugin implements three level of password checking that are described below:<\/p>\n<ul>\n<li>LOW &#8211; policy tests password length only.<\/li>\n<li>MEDIUM (Default) &#8211; policy adds the conditions that passwords must contain at least 1 numeric character, 1 lowercase character, 1 uppercase character, and 1 special (nonalphanumeric) character<\/li>\n<li>STRONG &#8211; policy adds the condition that password substrings of length 4 or longer must not match words in the dictionary file, if one has been specified.<\/li>\n<\/ul>\n<p>validate_password plugin provides several checks that can be seen using the show variables command:<\/p>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">SHOW VARIABLES LIKE 'validate_password.%';\n+--------------------------------------+--------+\n| Variable_name                        | Value  |\n+--------------------------------------+--------+\n| validate_password.check_user_name    | ON     |\n| validate_password.dictionary_file    |        |\n| validate_password.length             | 8      |\n| validate_password.mixed_case_count   | 1      |\n| validate_password.number_count       | 1      |\n| validate_password.policy             | MEDIUM |\n| validate_password.special_char_count | 1      |\n+--------------------------------------+--------+\n7 rows in set (0,01 sec)\n\n<\/pre>\n<h3>Tests with validate_password.policy=LOW<\/h3>\n<p>First let&#8217;s set the validate_password.policy to LOW to check which tests are done by the plugin. It should only check password length.<\/p>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">SET GLOBAL validate_password.policy=LOW;\n\n+--------------------------------------+-------+\n| Variable_name\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | Value |\n+--------------------------------------+-------+\n| validate_password.check_user_name\u00a0\u00a0\u00a0 | ON\u00a0\u00a0\u00a0 |\n| validate_password.dictionary_file\u00a0\u00a0\u00a0 |\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 |\n| validate_password.length\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | 8\u00a0\u00a0\u00a0\u00a0 |\n| validate_password.mixed_case_count\u00a0\u00a0 | 1\u00a0\u00a0\u00a0\u00a0 |\n| validate_password.number_count\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | 1\u00a0\u00a0\u00a0\u00a0 |\n| validate_password.policy\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 | LOW\u00a0\u00a0 |\n| validate_password.special_char_count | 1\u00a0\u00a0\u00a0\u00a0 |\n+--------------------------------------+-------+\n<\/pre>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">create user 'steulet'@'localhost' identified by '1234567';\nERROR 1819 (HY000): Your password does not satisfy the current policy requirements\n\ncreate user 'steulet'@'localhost' identified by '12345678';\nQuery OK, 0 rows affected (0,01 sec)<\/pre>\n<p>&nbsp;<\/p>\n<h3>Tests with validate_password.policy=MEDIUM<\/h3>\n<p>MEDIUM policy adds the conditions that passwords must contain at least 1 numeric character, 1 lowercase character, 1 uppercase character, and 1 special (nonalphanumeric) character<\/p>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">SET GLOBAL validate_password.policy=MEDIUM;\nQuery OK, 0 rows affected (0,00 sec)\n\nSHOW VARIABLES LIKE 'validate_password.%';\n+--------------------------------------+-------------------------------------+\n| Variable_name | Value |\n+--------------------------------------+-------------------------------------+\n| validate_password.check_user_name | ON |\n| validate_password.dictionary_file |  |\n| validate_password.length | 8 |\n| validate_password.mixed_case_count | 1 |\n| validate_password.number_count | 1 |\n| validate_password.policy | MEDIUM |\n| validate_password.special_char_count | 1 |\n+--------------------------------------+-------------------------------------+\n7 rows in set (0.00 sec)<\/pre>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">create user 'hueber'@'localhost' identified by '12345678';\nERROR 1819 (HY000): Your password does not satisfy the current policy requirements\n\ncreate user 'hueber'@'localhost' identified by '1234567L';\nERROR 1819 (HY000): Your password does not satisfy the current policy requirements\n\ncreate user 'hueber'@'localhost' identified by '123456zL';\nERROR 1819 (HY000): Your password does not satisfy the current policy requirements\n\ncreate user 'hueber'@'localhost' identified by '12345!zL';\nQuery OK, 0 rows affected (0.01 sec)<\/pre>\n<p>&nbsp;<\/p>\n<h3>Tests with validate_password.policy=STRONG<\/h3>\n<p>In order to check the validate_password.policy=STRONG I uploaded a password file used for brute force attack. You can download this file from: https:\/\/github.com\/danielmiessler\/SecLists\/blob\/master\/Passwords\/Most-Popular-Letter-Passes.txt<\/p>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">SET GLOBAL validate_password.dictionary_file='\/u01\/mysqldata\/mysqld2\/PasswordList';\nQuery OK, 0 rows affected (0,00 sec)<\/pre>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">SET GLOBAL validate_password.policy=strong;\nQuery OK, 0 rows affected (0,00 sec)<\/pre>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">SHOW VARIABLES LIKE 'validate_password.%';\n+--------------------------------------+-------------------------------------+\n| Variable_name | Value |\n+--------------------------------------+-------------------------------------+\n| validate_password.check_user_name | ON |\n| validate_password.dictionary_file | \/u01\/mysqldata\/mysqld2\/PasswordList |\n| validate_password.length | 8 |\n| validate_password.mixed_case_count | 1 |\n| validate_password.number_count | 1 |\n| validate_password.policy | STRONG |\n| validate_password.special_char_count | 1 |\n+--------------------------------------+-------------------------------------+<\/pre>\n<p>7 rows in set (0.00 sec)<\/p>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">create user 'neuhaus'@'localhost' identified by 'Manager1;';\nERROR 1819 (HY000): Your password does not satisfy the current policy requirements\n\ncreate user 'neuhaus'@'localhost' identified by 'Password1;';\nERROR 1819 (HY000): Your password does not satisfy the current policy requirements<\/pre>\n<p>If I decrease the validate_password.policy to medium, the plugin doesn&#8217;t check the dictionary file anymore:<\/p>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">SET GLOBAL validate_password.policy=medium;\nQuery OK, 0 rows affected (0,00 sec)\n\ncreate user 'neuhaus'@'localhost' identified by 'Password1;';\nQuery OK, 0 rows affected (0,00 sec)<\/pre>\n<h3>Function VALIDATE_PASSWORD_STRENGTH()<\/h3>\n<p>As explained above the validate_password_strength test a password and returns an integer from 0 (weak) to 100 (strong) representing the password strength.<\/p>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">select VALIDATE_PASSWORD_STRENGTH('abcd');\n+------------------------------------+\n| VALIDATE_PASSWORD_STRENGTH('abcd') |\n+------------------------------------+\n| 25 |\n+------------------------------------+\n1 row in set (0.00 sec)<\/pre>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">select VALIDATE_PASSWORD_STRENGTH('password');\n+----------------------------------------+\n| VALIDATE_PASSWORD_STRENGTH('password') |\n+----------------------------------------+\n| 50 |\n+----------------------------------------+\n1 row in set (0.00 sec)<\/pre>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">select VALIDATE_PASSWORD_STRENGTH('Manager1!');\n+-----------------------------------------+\n| VALIDATE_PASSWORD_STRENGTH('Manager1!') |\n+-----------------------------------------+\n| 75 |\n+-----------------------------------------+\n1 row in set (0.00 sec)<\/pre>\n<pre class=\"brush: actionscript3; gutter: true; first-line: 1\">select VALIDATE_PASSWORD_STRENGTH('aZbq!1)m8N');\n+------------------------------------------+\n| VALIDATE_PASSWORD_STRENGTH('aZbq!1)m8N') |\n+------------------------------------------+\n| 100 |\n+------------------------------------------+\n1 row in set (0.00 sec)<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction on validate_password plugin Since version 5.6.6 MySQL provides a new security plugins named Password Validation Plugin. The password-validation plugin aims to test passwords strength and improve security. The goal of this blog is to provide you a short overview of the functionalities provided through this plugin and illustrate these functionalities with concrete examples. As [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[],"type_dbi":[],"class_list":["post-11078","post","type-post","status-publish","format-standard","hentry","category-database-administration-monitoring"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Password Validation in MySQL - dbi Blog<\/title>\n<meta name=\"description\" content=\"MySQL provides a new security plugins named Password Validation Plugin. The password-validation plugin aims to test passwords strength and improve security\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Password Validation in MySQL\" \/>\n<meta property=\"og:description\" content=\"MySQL provides a new security plugins named Password Validation Plugin. The password-validation plugin aims to test passwords strength and improve security\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-04-05T08:05:53+00:00\" \/>\n<meta name=\"author\" content=\"Gr\u00e9gory Steulet\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Gr\u00e9gory Steulet\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/\"},\"author\":{\"name\":\"Gr\u00e9gory Steulet\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/7609faada8e4d63e04a28ae29e227098\"},\"headline\":\"Password Validation in MySQL\",\"datePublished\":\"2018-04-05T08:05:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/\"},\"wordCount\":348,\"commentCount\":0,\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/\",\"name\":\"Password Validation in MySQL - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"datePublished\":\"2018-04-05T08:05:53+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/7609faada8e4d63e04a28ae29e227098\"},\"description\":\"MySQL provides a new security plugins named Password Validation Plugin. The password-validation plugin aims to test passwords strength and improve security\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/password-validation-in-mysql\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Password Validation in MySQL\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/7609faada8e4d63e04a28ae29e227098\",\"name\":\"Gr\u00e9gory Steulet\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e1531483285469fe17ea7a769ce5d8a8a01847185e4245d9c4d22c575c7c6d3e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e1531483285469fe17ea7a769ce5d8a8a01847185e4245d9c4d22c575c7c6d3e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e1531483285469fe17ea7a769ce5d8a8a01847185e4245d9c4d22c575c7c6d3e?s=96&d=mm&r=g\",\"caption\":\"Gr\u00e9gory Steulet\"},\"description\":\"Gr\u00e9gory Steulet has more than ten years of experience in database and infrastructure management, engineering, and optimization. He is specialized in Oracle technologies and high availability solutions (Oracle DataGuard, Data Replication Block Device). His expertise also includes Avaloq banking applications, as well as the open source field (MySQL, Unix\\\/Linux, etc.). Gr\u00e9gory Steulet is \\\"Oracle Certified Professional 10g\\\", \\\"MySQL Cluster 5.1 Certified\\\", and \\\"Avaloq Certified Professional 2.6\\\". Prior to joining dbi services, Gr\u00e9gory Steulet was Senior Consultant at Trivadis in Lausanne. He also worked as IT Administrator at Box Telecom in Miami Beach, Florida (USA). Gr\u00e9gory Steulet has an Executive MBA from the International Institute of Management in Technology, Fribourg (CH). He also holds a Bachelor's Degree in Business Administration and Computer Science from the University of Applied Sciences Western Switzerland. His branch-related experience covers Telecommunications, Financial Services \\\/ Banking, Logistics, Pharma etc.\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/gregory-steulet\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Password Validation in MySQL - dbi Blog","description":"MySQL provides a new security plugins named Password Validation Plugin. The password-validation plugin aims to test passwords strength and improve security","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/","og_locale":"en_US","og_type":"article","og_title":"Password Validation in MySQL","og_description":"MySQL provides a new security plugins named Password Validation Plugin. The password-validation plugin aims to test passwords strength and improve security","og_url":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/","og_site_name":"dbi Blog","article_published_time":"2018-04-05T08:05:53+00:00","author":"Gr\u00e9gory Steulet","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Gr\u00e9gory Steulet","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/"},"author":{"name":"Gr\u00e9gory Steulet","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/7609faada8e4d63e04a28ae29e227098"},"headline":"Password Validation in MySQL","datePublished":"2018-04-05T08:05:53+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/"},"wordCount":348,"commentCount":0,"articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/","url":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/","name":"Password Validation in MySQL - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2018-04-05T08:05:53+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/7609faada8e4d63e04a28ae29e227098"},"description":"MySQL provides a new security plugins named Password Validation Plugin. The password-validation plugin aims to test passwords strength and improve security","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/password-validation-in-mysql\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Password Validation in MySQL"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/7609faada8e4d63e04a28ae29e227098","name":"Gr\u00e9gory Steulet","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/e1531483285469fe17ea7a769ce5d8a8a01847185e4245d9c4d22c575c7c6d3e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/e1531483285469fe17ea7a769ce5d8a8a01847185e4245d9c4d22c575c7c6d3e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e1531483285469fe17ea7a769ce5d8a8a01847185e4245d9c4d22c575c7c6d3e?s=96&d=mm&r=g","caption":"Gr\u00e9gory Steulet"},"description":"Gr\u00e9gory Steulet has more than ten years of experience in database and infrastructure management, engineering, and optimization. He is specialized in Oracle technologies and high availability solutions (Oracle DataGuard, Data Replication Block Device). His expertise also includes Avaloq banking applications, as well as the open source field (MySQL, Unix\/Linux, etc.). Gr\u00e9gory Steulet is \"Oracle Certified Professional 10g\", \"MySQL Cluster 5.1 Certified\", and \"Avaloq Certified Professional 2.6\". Prior to joining dbi services, Gr\u00e9gory Steulet was Senior Consultant at Trivadis in Lausanne. He also worked as IT Administrator at Box Telecom in Miami Beach, Florida (USA). Gr\u00e9gory Steulet has an Executive MBA from the International Institute of Management in Technology, Fribourg (CH). He also holds a Bachelor's Degree in Business Administration and Computer Science from the University of Applied Sciences Western Switzerland. His branch-related experience covers Telecommunications, Financial Services \/ Banking, Logistics, Pharma etc.","url":"https:\/\/www.dbi-services.com\/blog\/author\/gregory-steulet\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11078","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=11078"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11078\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=11078"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=11078"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=11078"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=11078"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}