{"id":5968,"date":"2015-10-23T15:03:22","date_gmt":"2015-10-23T13:03:22","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/"},"modified":"2015-10-23T15:03:22","modified_gmt":"2015-10-23T13:03:22","slug":"sql-server-2016-security-dynamic-data-masking-numeric-data-types","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/","title":{"rendered":"SQL Server 2016 &#8211; Security: Dynamic Data masking \u2013 Numeric Data Types"},"content":{"rendered":"<p>This blog is a part of the series &#8220;<a title=\"SQL Server 2016 - Security: Dynamic Data Masking\" href=\"http:\/\/dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking\/\" target=\"_blank\"><strong>SQL Server 2016 &#8211; Security: Dynamic Data masking<\/strong><\/a>&#8220;.<br \/>\nI remember you my different logins used to connect to AdventureWorks:<\/p>\n<ul>\n<li>sql login <strong>u1<\/strong> with the <strong>db_owner role<\/strong> &#8211;&gt; No masking<\/li>\n<li>sql login <strong>u2<\/strong> with the <strong>db_datareader<\/strong> role &#8211;&gt; masking<\/li>\n<\/ul>\n<p>The Data Types used are: <strong>bit, tinyint, smallint, int, float &amp; money<\/strong>.<\/p>\n<p><!--more--><\/p>\n<p>I run this query to have all columns with the tested data type in the clause <strong>WHERE<\/strong>:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">SELECT  T.NAME AS [TABLE NAME], C.NAME AS [COLUMN NAME], P.NAME AS [DATA TYPE], P.MAX_LENGTH AS[SIZE]\nFROM SYS.OBJECTS AS T JOIN SYS.COLUMNS AS C\nON T.OBJECT_ID=C.OBJECT_ID\nJOIN SYS.TYPES AS P\nON C.SYSTEM_TYPE_ID=P.SYSTEM_TYPE_ID\nWHERE T.TYPE_DESC='USER_TABLE' and T.NAME&lt;&gt;'sysdiagrams' and P.NAME='bit' ORDER BY T.NAME,C.NAME<\/pre>\n<h3>Bit Data type<\/h3>\n<p>Let\u2019s go with the bit Data Type \ud83d\ude1b<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4630 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09.png\" alt=\"bit Data Type masking\" width=\"300\" height=\"117\" \/><\/a><br \/>\nI select one of these columns, for example: DimEmployee.SalesPersonFlag<br \/>\nWith this Data Type, only the default masking mode works<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">ALTER TABLE [DimEmployee] ALTER COLUMN [SalesPersonFlag] ADD MASKED WITH (FUNCTION = 'default()')<\/pre>\n<p>And the question is, what the user u2 see in place of the real data&#8230;<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM10.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4631 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM10.png\" alt=\"Dynamic Data Masking default masking mode for Bit data type\" width=\"300\" height=\"280\" \/><\/a><br \/>\nI test with u2 and I\u2019m surprise. Data are masked! Cool I have only \u20180\u2019 for all data. \ud83d\ude09<\/p>\n<h3>Tinyint Data type<\/h3>\n<p>I select the column and type with this data type and I select one of this column for my test and use only the default masking mode:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM12.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4632 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM12.png\" alt=\"Query for tinyint Data type\" width=\"300\" height=\"286\" \/><\/a><\/p>\n<p>With u1, I see all different values and 18484 rows<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM13.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4633 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM13.png\" alt=\"without masking mode\" width=\"300\" height=\"217\" \/><\/a><br \/>\nWith u2, I see for all 18484 rows but with a value 0.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM14.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4634 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM14.png\" alt=\"with masking mode\" width=\"300\" height=\"215\" \/><\/a><\/p>\n<h3>Smallint &amp; int Data types<\/h3>\n<p>I do the same for these others &#8220;integer&#8221; data types:<\/p>\n<ul>\n<ul>\n<li><strong>smallint Data type<\/strong> selection and masking:<\/li>\n<\/ul>\n<\/ul>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM15.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4635 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM15.png\" alt=\"Dynamic Data Masking default masking mode for smallint Data type\" width=\"300\" height=\"215\" \/><\/a><\/p>\n<ul>\n<ul>\n<li><strong>int Data type<\/strong> selection and masking:<\/li>\n<\/ul>\n<\/ul>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM16.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4636 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM16.png\" alt=\"Dynamic Data Masking default masking mode for int Data type\" width=\"300\" height=\"205\" \/><\/a><\/p>\n<p>With u1, I see all different values.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM17.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4637 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM17.png\" alt=\"smallint &amp; int Data Type without masking\" width=\"300\" height=\"215\" \/><\/a><br \/>\nWith u2, I see for all rows with a value of 0.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM18.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4638 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM18.png\" alt=\"smallint &amp; int Data Type with masking\" width=\"300\" height=\"216\" \/><\/a><\/p>\n<h3>Float Data Type<\/h3>\n<p>Like all integers data types, the Dynamic Data Masking replace the value per 0 with the default masking mode.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM21.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4639 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM21.png\" alt=\"Dynamic Data Masking default masking mode for Float\" width=\"300\" height=\"194\" \/><\/a><\/p>\n<p>With u1, I see all different values.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM22.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4640 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM22.png\" alt=\"Float Data Type without masking\" width=\"300\" height=\"214\" \/><\/a><br \/>\nWith u2, I see for all rows with a value of 0.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM23.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4641 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM23.png\" alt=\"Float Data Type with masking\" width=\"300\" height=\"216\" \/><\/a><\/p>\n<h3>Money Data Type<\/h3>\n<p>Like all numerical data types, the Dynamic Data Masking replace the value per 0 with the default masking mode.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM24.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4642 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM24.png\" alt=\"Dynamic Data Masking default masking mode for Money\" width=\"300\" height=\"292\" \/><\/a><\/p>\n<p>With u1, I see all different values.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM25.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4643 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM25.png\" alt=\"Money Data Type without masking\" width=\"300\" height=\"216\" \/><\/a><br \/>\nWith u2, I see for all rows with a value of 0 and NULL.<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM26.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-medium wp-image-4644 aligncenter\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM26.png\" alt=\"Money Data Type with masking\" width=\"300\" height=\"215\" \/><\/a><\/p>\n<p><strong>It is good to notice that a NULL value is not masked.<\/strong><\/p>\n<h3>Core message<\/h3>\n<ul>\n<li>Numeric Data Types tested use <strong>only the default masking mode<\/strong><\/li>\n<li>The default value is <strong>0<\/strong><\/li>\n<li>A NULL value is not masked<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This blog is a part of the series &#8220;SQL Server 2016 &#8211; Security: Dynamic Data masking&#8220;. I remember you my different logins used to connect to AdventureWorks: sql login u1 with the db_owner role &#8211;&gt; No masking sql login u2 with the db_datareader role &#8211;&gt; masking The Data Types used are: bit, tinyint, smallint, int, [&hellip;]<\/p>\n","protected":false},"author":15,"featured_media":5984,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229,48],"tags":[49,25,51,566],"type_dbi":[],"class_list":["post-5968","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-database-administration-monitoring","category-technology-survey","tag-microsoft","tag-security","tag-sql-server","tag-sql-server-2016"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>SQL Server 2016 - Security: Dynamic Data masking \u2013 Numeric Data Types<\/title>\n<meta name=\"description\" content=\"This blog is a part of the series &quot;SQL Server 2016 - Security: Dynamic Data masking&quot; especially to test numeric data types from AdventureWorks\" \/>\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\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SQL Server 2016 - Security: Dynamic Data masking \u2013 Numeric Data Types\" \/>\n<meta property=\"og:description\" content=\"This blog is a part of the series &quot;SQL Server 2016 - Security: Dynamic Data masking&quot; especially to test numeric data types from AdventureWorks\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2015-10-23T13:03:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"752\" \/>\n\t<meta property=\"og:image:height\" content=\"293\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"St\u00e9phane Haby\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"St\u00e9phane Haby\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 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\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/\"},\"author\":{\"name\":\"St\u00e9phane Haby\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/d0bfb7484ae81c8980fc2b11334f803b\"},\"headline\":\"SQL Server 2016 &#8211; Security: Dynamic Data masking \u2013 Numeric Data Types\",\"datePublished\":\"2015-10-23T13:03:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/\"},\"wordCount\":363,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png\",\"keywords\":[\"Microsoft\",\"Security\",\"SQL Server\",\"SQL Server 2016\"],\"articleSection\":[\"Database Administration &amp; Monitoring\",\"Technology Survey\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/\",\"name\":\"SQL Server 2016 - Security: Dynamic Data masking \u2013 Numeric Data Types\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png\",\"datePublished\":\"2015-10-23T13:03:22+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/d0bfb7484ae81c8980fc2b11334f803b\"},\"description\":\"This blog is a part of the series \\\"SQL Server 2016 - Security: Dynamic Data masking\\\" especially to test numeric data types from AdventureWorks\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png\",\"width\":752,\"height\":293},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SQL Server 2016 &#8211; Security: Dynamic Data masking \u2013 Numeric Data Types\"}]},{\"@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\/d0bfb7484ae81c8980fc2b11334f803b\",\"name\":\"St\u00e9phane Haby\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/1123227ca39a5dca608c0f72d23cd1904fee29979749bbb3a485b9438436c553?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1123227ca39a5dca608c0f72d23cd1904fee29979749bbb3a485b9438436c553?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1123227ca39a5dca608c0f72d23cd1904fee29979749bbb3a485b9438436c553?s=96&d=mm&r=g\",\"caption\":\"St\u00e9phane Haby\"},\"description\":\"St\u00e9phane Haby has more than ten years of experience in Microsoft solutions. He is specialized in SQL Server technologies such as installation, migration, best practices, and performance analysis etc. He is also an expert in Microsoft Business Intelligence solutions such as SharePoint, SQL Server and Office. Futhermore, he has many years of .NET development experience in the banking sector and other industries. In France, he was one of the first people to have worked with Microsoft Team System. He has written several technical articles on this subject. St\u00e9phane Haby is Microsoft Most Valuable Professional (MVP) as well as Microsoft Certified Solutions Associate (MCSA) and\u00a0Microsoft Certified Solutions Expert (MCSE) for SQL Server 2012. He is also Microsoft Certified Technology Specialist (MCTS) and Microsoft Certified IT Professional (MCITP) for SQL Server 2008 as well as ITIL Foundation V3 certified. He holds a Engineer diploma in industrial computing and automation from France. His branch-related experience covers Chemicals &amp; Pharmaceuticals, Banking \/ Financial Services, and many other industries.\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/stephane-haby\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"SQL Server 2016 - Security: Dynamic Data masking \u2013 Numeric Data Types","description":"This blog is a part of the series \"SQL Server 2016 - Security: Dynamic Data masking\" especially to test numeric data types from AdventureWorks","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\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/","og_locale":"en_US","og_type":"article","og_title":"SQL Server 2016 - Security: Dynamic Data masking \u2013 Numeric Data Types","og_description":"This blog is a part of the series \"SQL Server 2016 - Security: Dynamic Data masking\" especially to test numeric data types from AdventureWorks","og_url":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/","og_site_name":"dbi Blog","article_published_time":"2015-10-23T13:03:22+00:00","og_image":[{"width":752,"height":293,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png","type":"image\/png"}],"author":"St\u00e9phane Haby","twitter_card":"summary_large_image","twitter_misc":{"Written by":"St\u00e9phane Haby","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/"},"author":{"name":"St\u00e9phane Haby","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/d0bfb7484ae81c8980fc2b11334f803b"},"headline":"SQL Server 2016 &#8211; Security: Dynamic Data masking \u2013 Numeric Data Types","datePublished":"2015-10-23T13:03:22+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/"},"wordCount":363,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png","keywords":["Microsoft","Security","SQL Server","SQL Server 2016"],"articleSection":["Database Administration &amp; Monitoring","Technology Survey"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/","url":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/","name":"SQL Server 2016 - Security: Dynamic Data masking \u2013 Numeric Data Types","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png","datePublished":"2015-10-23T13:03:22+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/d0bfb7484ae81c8980fc2b11334f803b"},"description":"This blog is a part of the series \"SQL Server 2016 - Security: Dynamic Data masking\" especially to test numeric data types from AdventureWorks","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/DDM09-1.png","width":752,"height":293},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/sql-server-2016-security-dynamic-data-masking-numeric-data-types\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"SQL Server 2016 &#8211; Security: Dynamic Data masking \u2013 Numeric Data Types"}]},{"@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\/d0bfb7484ae81c8980fc2b11334f803b","name":"St\u00e9phane Haby","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/1123227ca39a5dca608c0f72d23cd1904fee29979749bbb3a485b9438436c553?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1123227ca39a5dca608c0f72d23cd1904fee29979749bbb3a485b9438436c553?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1123227ca39a5dca608c0f72d23cd1904fee29979749bbb3a485b9438436c553?s=96&d=mm&r=g","caption":"St\u00e9phane Haby"},"description":"St\u00e9phane Haby has more than ten years of experience in Microsoft solutions. He is specialized in SQL Server technologies such as installation, migration, best practices, and performance analysis etc. He is also an expert in Microsoft Business Intelligence solutions such as SharePoint, SQL Server and Office. Futhermore, he has many years of .NET development experience in the banking sector and other industries. In France, he was one of the first people to have worked with Microsoft Team System. He has written several technical articles on this subject. St\u00e9phane Haby is Microsoft Most Valuable Professional (MVP) as well as Microsoft Certified Solutions Associate (MCSA) and\u00a0Microsoft Certified Solutions Expert (MCSE) for SQL Server 2012. He is also Microsoft Certified Technology Specialist (MCTS) and Microsoft Certified IT Professional (MCITP) for SQL Server 2008 as well as ITIL Foundation V3 certified. He holds a Engineer diploma in industrial computing and automation from France. His branch-related experience covers Chemicals &amp; Pharmaceuticals, Banking \/ Financial Services, and many other industries.","url":"https:\/\/www.dbi-services.com\/blog\/author\/stephane-haby\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/5968","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\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=5968"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/5968\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/5984"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=5968"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=5968"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=5968"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=5968"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}