{"id":39227,"date":"2020-09-09T15:40:29","date_gmt":"2020-09-09T13:40:29","guid":{"rendered":"https:\/\/www.evidian.com\/?page_id=39227"},"modified":"2026-02-14T13:27:42","modified_gmt":"2026-02-14T11:27:42","slug":"kuppingercole-leadership-compass-identity-governance-administration-iga","status":"publish","type":"page","link":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/","title":{"rendered":"Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration"},"content":{"rendered":"<div id=\"pl-39227\"  class=\"panel-layout\" ><div id=\"pg-39227-0\"  class=\"panel-grid panel-has-style\" ><div class=\"siteorigin-panels-stretch panel-row-style panel-row-style-for-39227-0\" data-stretch-type=\"full-width-stretch\" ><div id=\"pgc-39227-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-39227-0-0-0\" class=\"so-panel widget widget_sow-hero panel-first-child panel-last-child\" data-index=\"0\" ><div\n\t\t\t\n\t\t\tclass=\"so-widget-sow-hero so-widget-sow-hero-default-6e283e92799f-39227 so-widget-fittext-wrapper\"\n\t\t\t data-fit-text-compressor=\"0.85\"\n\t\t>\t\t\t\t<div class=\"sow-slider-base\" style=\"display: none\" tabindex=\"0\">\n\t\t\t\t\t<ul\n\t\t\t\t\tclass=\"sow-slider-images\"\n\t\t\t\t\tdata-settings=\"{&quot;pagination&quot;:true,&quot;speed&quot;:500,&quot;timeout&quot;:5000,&quot;paused&quot;:false,&quot;pause_on_hover&quot;:false,&quot;swipe&quot;:true,&quot;nav_always_show_desktop&quot;:&quot;&quot;,&quot;nav_always_show_mobile&quot;:&quot;&quot;,&quot;breakpoint&quot;:&quot;780px&quot;,&quot;unmute&quot;:false,&quot;anchor&quot;:null}\"\n\t\t\t\t\t\t\t\t\t\tdata-anchor-id=\"\"\n\t\t\t\t>\t\t<li class=\"sow-slider-image  sow-slider-image-cover\" style=\"visibility: visible;;background-color: #333333\" >\n\t\t\t\t\t<div class=\"sow-slider-image-container\">\n\t\t\t<div class=\"sow-slider-image-wrapper\">\n\t\t\t\t<h1 style=\"color:white\">Evidian, an overall product leader in Identity Governance &amp; Administration<\/h1>\n<h2 style=\"color:white\">KuppingerCole Leadership Compass - 25 IGA product vendors evaluated<\/h2>\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"sow-slider-image-overlay sow-slider-image-cover\" style=\"opacity: 0.8;background-image: url(https:\/\/www.evidian.com\/wp-content\/smush-webp\/2022\/11\/identity-1280-250-dark-1.jpg.webp)\"  ><\/div>\t\t<\/li>\n\t\t<\/ul>\t\t\t\t<ol class=\"sow-slider-pagination\">\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\" data-goto=\"0\" aria-label=\"Display slide 1\"><\/a><\/li>\n\t\t\t\t\t\t\t\t\t<\/ol>\n\n\t\t\t\t<div class=\"sow-slide-nav sow-slide-nav-next\">\n\t\t\t\t\t<a href=\"#\" data-goto=\"next\" aria-label=\"Next slide\" data-action=\"next\">\n\t\t\t\t\t\t<em class=\"sow-sld-icon-thick-right\"><\/em>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\n\t\t\t\t<div class=\"sow-slide-nav sow-slide-nav-prev\">\n\t\t\t\t\t<a href=\"#\" data-goto=\"previous\" aria-label=\"Previous slide\" data-action=\"prev\">\n\t\t\t\t\t\t<em class=\"sow-sld-icon-thick-left\"><\/em>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div><\/div><\/div><\/div><\/div><\/div><div id=\"pg-39227-1\"  class=\"panel-grid panel-has-style\" ><div class=\"panel-row-style panel-row-style-for-39227-1\" ><div id=\"pgc-39227-1-0\"  class=\"panel-grid-cell\" ><div id=\"panel-39227-1-0-0\" class=\"so-panel widget widget_sow-editor panel-first-child panel-last-child\" data-index=\"1\" ><div\n\t\t\t\n\t\t\tclass=\"so-widget-sow-editor so-widget-sow-editor-base\"\n\t\t\t\n\t\t>\n<div class=\"siteorigin-widget-tinymce textwidget\">\n\t<h2>Who are the leading Identity and Access Management vendors?<\/h2>\n<h4 style=\"color: #006878;\">European analyst company <a href=\"https:\/\/www.kuppingercole.com\/\" target=\"_blank\" rel=\"noopener\">KuppingerCole<\/a> has positioned <a href=\"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/\" target=\"_blank\" rel=\"noopener noreferrer\">Evidian IGA<\/a> as a Market leader in the Leadership Compass report 2022, focused on Identity Governance &amp;\u00a0 Administration - IGA.<\/h4>\n<p style=\"text-align: center;\"><img decoding=\"async\" src=\"https:\/\/www.evidian.com\/wp-content\/smush-webp\/2023\/01\/kuppinger-iga-2022.png.webp\" alt=\"KuppingerCole positions Evidian IGA and IDaaS as an overall leader in Identity Governance &amp; Administration\" \/><\/p>\n<p>\"<em>The Identity Governance and Administration (IGA) market is continuing to evolve through more integrated Identity Lifecycle Management and Access Governance solutions that are now increasingly aided by intelligent features. This Leadership Compass will give an overview and insights into the IGA market, providing you a compass to help you find the products that can meet the criteria necessary for successful IGA deployments.<\/em>\"<\/p>\n<p><strong>Regarding Evidian IGA, KuppingerCole states:<\/strong> \"<em>Evidian supports deployment of all major models. The solution is delivered as a SaaS, Container (Docker), container orchestration system, managed service or as a software deployed to the server. The solution can also be installed on a virtual machine.<\/em>\"<\/p>\n<div>\n<h4><span style=\"color: #006878;\">Please fill in the form on the right to access the report.<br \/>\nFor a demonstration or other information concerning our Evidian offer, feel free to <strong><a style=\"color: #0596ff;\" href=\"https:\/\/www.evidian.com\/company\/contact-us\/\" target=\"_blank\" rel=\"noopener noreferrer\">contact us<\/a><\/strong>.<\/span><\/h4>\n<\/div>\n<\/div>\n<\/div><\/div><\/div><div id=\"pgc-39227-1-1\"  class=\"panel-grid-cell\" ><div id=\"panel-39227-1-1-0\" class=\"widget_text so-panel widget widget_custom_html panel-first-child panel-last-child\" data-index=\"2\" ><div class=\"textwidget custom-html-widget\"><!-- search for BR to find all modifications made from the original script -->\r\n<script src=\"\/\/pages.atos.net\/js\/forms2\/js\/forms2.min.js\"><\/script>\r\n<!-- BR - add Japan translation -->\r\n<!--\r\n<script src=\"\/\/pages.atos.net\/rs\/247-MBJ-716\/images\/translations.js\"><\/script>\r\n-->\r\n<script src=\"https:\/\/www.evidian.com\/p\/sm7\/translations.js?ver=1.15\"><\/script>\r\n\r\n\r\n<style>\r\n\/* forms color = new blue *\/\r\nform.mktoForm, .mktoFormCol {\r\n    background-color: #006878;\r\n    padding: 20px 20px 30px 10px;\r\n    border-radius: 20px 20px 20px 20px;\r\n\twidth: 95%!important;\r\n\tmargin: auto;\r\n    font-family: 'Montserrat', sans-serif!important;\r\n}\r\n\r\n.panel-cell-style {\r\n    background-color: #006878!important;\r\n    font-family: 'Montserrat', sans-serif!important;\r\n}\r\n\r\nlabel, .mktoHtmlText {\r\n    font-family: 'Montserrat', sans-serif!important;\r\n    color: #ffffff!important;\r\n}\r\n\r\n.mktoButton {\r\n    background-color: #ffffff!important;\r\n    border: 1px solid #002D3C !important;\r\n    font-family: 'Montserrat', sans-serif!important;\r\n    color: #006878!important;\r\n}\r\n\r\n.mktoButton:hover {\r\n    background-color: #002D3C!important;\r\n    font-family: 'Montserrat', sans-serif!important;\r\n    color: #ffffff!important;\r\n\tfont-weight:bold;\r\n}\r\n\r\n.mktoField {\r\n    border: 1px solid #002D3C !important;\r\n    font-family: 'Montserrat', sans-serif!important;\r\n    color: #5A5A5A;\r\n}\r\n\r\n    .setToInvisible {\r\n        display: none !important;\r\n    }\r\n    .setToVisible {\r\n        display: block;\r\n    }\r\n    .mktoErrorRealign {\r\n        left: 2%;\r\n        right: unset !important;\r\n    }\r\n    #mktoFormThankYouMessage {\r\n        text-align: center;\r\n        font-family:'Montserrat', sans-serif!important; \r\n        font-size: 15px;\r\n        padding: 5px;\r\n        \r\n    }\r\n    #mktoFormThankYouMessage a {\r\n        color: #0596FF;\r\n        text-decoration: underline;\r\n    }\r\n    @media only screen and (max-width: 1400px)  {\r\n        .mktoErrorRealign {\r\n            left: 4%;\r\n            right: unset !important;\r\n        }\r\n    }\r\n    @media only screen and (max-width: 768px)  {\r\n        .mktoErrorRealign {\r\n            left: 10%;\r\n            right: unset !important;\r\n        }\r\n    }\r\n\r\n\r\n<\/style>\r\n\r\n<!--Please insert into <form> below\r\n    id=\"mktoForm_xxxx\"              - where xxxx is the marketo form ID. (not always 4 digits) (1047 = atos primary form, sandbox version) \r\n    form-type=\"TypeOfForm\"          - where TypeOfForm is one of: Thank You; Asset Download; Page Redirect.\r\n    data-content=\"NameOfAsset\"      - where NameOfAsset is a user-friendly title of the asset to download.\r\n    data-destination=\"UrlOfAsset\"   - where UrlOfAsset is the full URL of the asset to download or page redirect. (e.g. https:\/\/clever-touch.com\/)\r\n    class=\"mktoForm\"                - this does not need editing. \r\n-->\r\n\r\n<form id=\"mktoForm_1624\"\r\n      form-type=\"Page Redirect\"\r\n      data-content=\"IGA_WP_EN KuppingerCole Leadership Compass Identity Governance &amp; Administration (IGA)\"\r\n      data-destination=\"https:\/\/www.evidian.com\/page-redirect.php?c=IGA_WP_EN&url=https:\/\/www.evidian.com\/pdf\/2022-kuppingercole-iga-idaas-leader.pdf\"\r\n      class=\"mktoForm marketo\">\r\n<\/form>\r\n\r\n<script>\r\n\/\/ begin BR - token for recaptcha verification in marketo-lead-post.php\r\n\tvar reCAPTCHALastUserFingerprint=\"\";\r\n\/\/ end BR\r\n    \/\/in order to access your desired Marketo form change these 2 variables to the 2 provided by the embed code in the line beginning MktoForms2.loadForm\r\n    const baseURL = \"\/\/pages.atos.net\";\r\n    const munchkinID = \"247-MBJ-716\"\r\n\r\n    \/\/takes the id from mktoForm element and converts to just the id number, for use in MktoForms2.loadForm\r\n    const mktoForm_xxxx_ID = document.getElementsByClassName(\"mktoForm\")[0].getAttribute(\"id\")\r\n    const extractDigits = \/\\d+\/;\r\n    const FormID = parseInt(mktoForm_xxxx_ID.match(extractDigits), 10);\r\n    var language;\r\n    var privacyType = \"none\"\r\n    var browserLangFormatted;\r\n    switch (navigator.language) {\r\n        case \"en\": case \"en-GB\":\r\n            browserLangFormatted = \"English GB\";\r\n            break;\r\n        case \"en-US\":\r\n            browserLangFormatted = \"English US\";\r\n            break;\r\n        case \"es\": case \"es-ES\":\r\n            browserLangFormatted = \"European Spanish\";\r\n            break;\r\n        case catchFrenchLanguageCodes(navigator.language): \r\n            browserLangFormatted = \"French\";\r\n            break;\r\n        case catchLatAmSpanishLanguageCodes(navigator.language):\r\n            browserLangFormatted = \"Latin American Spanish\";\r\n            break;\r\n        case catchGermanLanguageCodes(navigator.language):\r\n            browserLangFormatted = \"German\";\r\n            break;\r\n        case \"it\": case \"it-CH\":\r\n            browserLangFormatted = \"Italian\";\r\n            break;\r\n        case \"nl\": case \"nl-BE\":\r\n            browserLangFormatted = \"Dutch\";\r\n            break;\r\n        case \"pt-BR\": \r\n            browserLangFormatted = \"Brazilian Portuguese\"\r\n            break;\r\n        default:\r\n            browserLangFormatted = \"English US\";\r\n            break;\r\n    }\r\n\r\n    \/\/ * @copyright \u00a9 2021 Sanford Whiteman\r\n    \/\/ @license Hippocratic 2.1\r\n    (function(){\r\n\r\n        var userConfig = {\r\n            apiKeys : {\r\n                recaptcha : \"6LfRM6keAAAAACnaog4Sl9nzvzHupd74YADwTAvp\"\r\n            },\r\n            fields : {\r\n                recaptchaFinger : \"reCAPTCHALastUserFingerprint\"\r\n            },\r\n            actions : {\r\n                formSubmit : \"form\"\r\n            },\r\n            debug : {\r\n                testBadFinger : false\r\n            }\r\n        };\r\n\r\n        \/* --- NO NEED TO TOUCH BELOW THIS LINE --- *\/\r\n\r\n        MktoForms2.whenReady(function(mktoForm) {\r\n            var formEl = mktoForm.getFormElem()[0],\r\n                submitButtonEl = formEl.querySelector(\"button[type='submit']\");\r\n\r\n            \/* pending reCAPTCHA widget ready *\/\r\n            submitButtonEl.disabled = true;\r\n\r\n            \/* pending reCAPTCHA verify *\/\r\n            mktoForm.submittable(false);\r\n            mktoForm.locked = false;\r\n\r\n            mktoForm.onValidate(function(native) {\r\n                if (!native) return;\r\n                if(!validate_email()) {\r\n                    \/\/ document.getElementById(\"LblEmail\").focus();\r\n                    \/\/ document.getElementById(\"Email\").focus();\r\n                    \/\/ form.showErrorMessage(\"Please enter your business email address\", emailField); \/\/ under the Email field\r\n                    return;\r\n                }\r\n\r\n                grecaptcha.ready(function() {\r\n                    grecaptcha.execute(userConfig.apiKeys.recaptcha, {\r\n                        action: userConfig.actions.formSubmit\r\n                    })\r\n                        .then(function(recaptchaFinger) {\r\n\t\t                    var mktoFields = {};\r\n                            if (mktoForm.locked == false) {\r\n                                mktoForm.locked = true;\r\n                                if(!userConfig.debug.testBadFinger) {\r\n                                    mktoFields[userConfig.fields.recaptchaFinger] = recaptchaFinger;\r\n                                } else {\r\n                                    mktoFields[userConfig.fields.recaptchaFinger] = \"known bad fingerprint \" + Math.random();\r\n                                }\r\n                                mktoForm.addHiddenFields(mktoFields);\r\n\t\t\t\t\t\t\t\t\/\/ begin BR\r\n\t\t\t\t\t\t\t\t\/\/ console.log('token 1='+recaptchaFinger); \/\/ debug\r\n\t\t\t\t\t\t\t\t\/\/ a recaptcha token can be verified only once\r\n\t\t\t\t\t\t\t\t\/\/ cannot used this token in marketo-lead-post.php else bug in marketo backend\r\n\t\t\t\t\t\t\t\t\/\/ reCAPTCHALastUserFingerprint=mktoFields.reCAPTCHALastUserFingerprint;\r\n\t\t\t\t\t\t\t\t\/\/ end BR\r\n                                mktoForm.submittable(true);\r\n                                mktoForm.submit();\r\n                            } else {\r\n                            }\r\n                        });\r\n                });\r\n            });\r\n\r\n\t\t\t\/\/ begin BR - need a new recaptcha token for marketo-lead-post.php\r\n            mktoForm.onValidate(function(native) {\r\n                if (!native) return;\r\n\r\n                grecaptcha.ready(function() {\r\n                    grecaptcha.execute(userConfig.apiKeys.recaptcha, {\r\n                        action: userConfig.actions.formSubmit\r\n                    })\r\n                        .then(function(recaptchaFinger) {\r\n\t\t\t\t\t\t\t\t\/\/ called twice\r\n\t\t\t\t\t\t\t\t\/\/ console.log('grecaptcha.execute 2');\r\n\t\t\t\t\t\t\t\tif (reCAPTCHALastUserFingerprint == \"\") {\r\n\t\t\t\t\t\t\t\t\t\/\/ console.log('token 2='+recaptchaFinger); \/\/ debug\r\n\t\t\t\t\t\t\t\t\treCAPTCHALastUserFingerprint=recaptchaFinger; \/\/ new token\r\n\t\t\t\t\t\t\t\t}\r\n                        });\r\n                });\r\n            });\r\n\t\t\t\/\/ end BR\r\n\r\n\t\t\tfunction validate_email() {\r\n               var emailField = mktoForm.getFormElem().find('#Email');\r\n               var emailValue = emailField.val();\r\n               var submittable = true;\r\n               if (!emailValue) {\r\n                  submittable = false;\r\n               }\r\n               else {\r\n                  var domain = emailValue.split('@')[1];\r\n                  if (!domain) {\r\n                     submittable = false;\r\n                  }\r\n                  else {\r\n                     if (domain && ['gmail.com', 'yahoo.com', 'outlook.com'].includes(domain.toLowerCase())) {\r\n                        submittable = false;\r\n                     } \r\n                     \/*else {\r\n                         submittable = true;\r\n                     }*\/\r\n                  }\r\n               }\r\n               if (submittable) {\r\n                   \/\/form.submittable(true);\r\n                   return true;\r\n               }\r\n               else {\r\n                   \/\/ document.getElementById(\"LblEmail\").focus();\r\n                   document.getElementById(\"Email\").focus();\r\n                   mktoForm.showErrorMessage(\"Please enter your business email address\", emailField); \/\/ under the Email field\r\n                   \/\/ alert('Please use your business email address');\r\n                   \/\/\tform.submittable(false);\r\n                   return false;\r\n               }\r\n            }\r\n\t\t});\r\n\r\n        var recaptchaListeners = {\r\n            ready : function() {\r\n                MktoForms2.whenReady(function(mktoForm){\r\n                    var formEl = mktoForm.getFormElem()[0],\r\n                        submitButtonEl = formEl.querySelector(\"button[type='submit']\");\r\n\r\n                    submitButtonEl.disabled = false;\r\n                });\r\n            }\r\n        };\r\n        Object.keys(recaptchaListeners).forEach(function globalize(fnName){\r\n            window[\"grecaptchaListeners_\" + fnName] = recaptchaListeners[fnName];\r\n        });\r\n\r\n        \/* inject the reCAPTCHA library *\/\r\n        recaptchaLib = document.createElement(\"script\");\r\n        recaptchaLib.src = \"https:\/\/www.google.com\/recaptcha\/api.js?render=\" + userConfig.apiKeys.recaptcha + \"&onload=grecaptchaListeners_ready\";\r\n        document.head.appendChild(recaptchaLib);\r\n\r\n    })();\r\n\r\n    MktoForms2.loadForm(baseURL, munchkinID, FormID, function(form) {\r\n\r\n\/\/ this will be replaced by a string fetched from translations.js\r\nvar thankYouMessage = \"Thank you for your interest in\";\r\nvar downloadLinkText = \"You can download the report here.\";\r\nvar contactMessage = \"A member of our team will be in touch with you shortly.\"\r\n\r\n\r\n\/\/find out which type of form this is\r\nvar formType = document.getElementsByClassName(\"mktoForm\")[0].getAttribute(\"form-type\");\r\nvar form_destination = document.getElementsByClassName(\"mktoForm\")[0].getAttribute(\"data-destination\");\r\nvar form_content_name = document.getElementsByClassName(\"mktoForm\")[0].getAttribute(\"data-content\");\r\n\r\n\/\/ begin BR - hidden field added with the URL referrer (URL of the form) to display it in the Market alert notification (email from Marketo to commercials)\r\nMktoForms2.whenReady(function (form) {\r\n\tform.addHiddenFields({lastFormReferrer : document.location.href });\r\n});\r\n\/\/ end BR\r\n\r\n\/\/ begin BR - conversion code coming from google ads\r\n\/\/ Event snippet for Clic Submit Formulaire (11\/03\/2021\/ conversion page\r\nfunction gtag_report_conversion(url) {\r\n\tvar callback = function () {\r\n\t\tif (typeof(url) != 'undefined') {\r\n\t\t\tconsole.log('gtag_report_conversion callback url='+url); \/\/ debug\r\n\t\t\t\/\/ window.location = url; \/\/ loading \"url\" after submit (already managed by Marketo)\r\n\t\t}\r\n\t};\r\n\tgtag('event', 'conversion', {\r\n\t\t 'send_to': 'AW-978904711\/Y3XjCIbkmvsBEIfN49ID', \r\n\t\t 'event_callback': callback \r\n\t});\r\n\tconsole.log('gtag conversion called');\r\n\treturn false;\r\n}\r\n\/\/ end BR\r\n\r\nform.onSuccess(function(values, followUpUrl) {\r\n\r\n\t\/\/ begin BR\r\n\t\/\/ google ads conversion code\r\n\tvar getUrl = window.location;\r\n\tconsole.log('Marketo google ads conversion: '+getUrl); \/\/ debug\r\n\tgtag_report_conversion(getUrl);\r\n\r\n\t\/\/ post form parameters on https:\/\/www.evidian.com\/p\/sm7\/marketo-lead-get.php\r\n\tvar param='';\r\n\r\n\tif (window.location.href !== null) {\r\n\t  url=window.location.href;\r\n\t\/\/  console.log('url='+url);\r\n\t}\r\n\telse url=\"not defined\";\r\n\tparam=param+'url='+encodeURIComponent(url);\r\n\r\n\tif (document.getElementsByClassName(\"mktoForm\") !== null) {\r\n\t  form_id=document.getElementsByClassName(\"mktoForm\")[0].getAttribute(\"id\");\r\n\t\/\/  console.log('form_id='+form_id);\r\n\t}\r\n\telse form_id=\"not defined\";\r\n\tparam=param+'&form_id='+encodeURIComponent(form_id);\r\n\r\n\tif (formType !== null) {\r\n\t  form_type=formType;\r\n\t\/\/  console.log('form_type='+form_type);\r\n\t}\r\n\telse form_type=\"not defined\";\r\n\tparam=param+'&form_type='+encodeURIComponent(form_type);\r\n\r\n\tif (form_destination !== null) {\r\n\t  form_destination=form_destination;\r\n\t\/\/  console.log('form_destination='+form_destination);\r\n\t}\r\n\telse form_destination=\"not defined\";\r\n\tparam=param+'&form_destination='+encodeURIComponent(form_destination);\r\n\r\n\tif (form_content_name !== null) {\r\n\t  form_content=form_content_name;\r\n\t\/\/  console.log('form_content='+form_content);\r\n\t}\r\n\telse form_content=\"not defined\";\r\n\tparam=param+'&form_content='+encodeURIComponent(form_content);\r\n\r\n\tif (document.getElementById('preferredLanguage') !== null) {\r\n\t  preferred_language=document.getElementById('preferredLanguage').value;\r\n\t\/\/  console.log('preferred_language='+preferred_language);\r\n\t}\r\n\telse preferred_language=\"not defined\";\r\n\tparam=param+'&preferred_language='+encodeURIComponent(preferred_language);\r\n\r\n\tif (document.getElementById('Salutation') !== null) {\r\n\t  salutation=document.getElementById('Salutation').value;\r\n\t\/\/  console.log('salutation='+salutation);\r\n\t}\r\n\telse salutation=\"not defined\";\r\n\tparam=param+'&salutation='+encodeURIComponent(salutation);\r\n\r\n\tif (document.getElementById('FirstName') !== null) {\r\n\t  first_name=document.getElementById('FirstName').value;\r\n\t\/\/  console.log('first_name='+first_name);\r\n\t}\r\n\telse first_name=\"not defined\";\r\n\tparam=param+'&first_name='+encodeURIComponent(first_name);\r\n\r\n\tif (document.getElementById('LastName') !== null) {\r\n\t  last_name=document.getElementById('LastName').value;\r\n\t\/\/  console.log('last_name='+last_name);\r\n\t}\r\n\telse last_name=\"not defined\";\r\n\tparam=param+'&last_name='+encodeURIComponent(last_name);\r\n\r\n\tif (document.getElementById('Email') !== null) {\r\n\t  email=document.getElementById('Email').value;\r\n\t\/\/  console.log('email='+email);\r\n\t}\r\n\telse email=\"not defined\";\r\n\tparam=param+'&email='+encodeURIComponent(email);\r\n\r\n\tif (document.getElementById('Phone') !== null) {\r\n\t  phone=document.getElementById(\"Phone\").value;\r\n\t\/\/  console.log('phone='+phone);\r\n\t}\r\n\telse phone=\"not defined\";\r\n\tparam=param+'&phone='+encodeURIComponent(phone);\r\n\r\n\tif (document.getElementById('JobFunction__c') !== null) {\r\n\t  job_function=document.getElementById(\"JobFunction__c\").value;\r\n\t\/\/  console.log('phone='+job_function);\r\n\t}\r\n\telse job_function=\"not defined\";\r\n\tparam=param+'&job_function='+encodeURIComponent(job_function);\r\n\r\n\tif (document.getElementById('SF_Job_Title__c') !== null) {\r\n\t  job_title=document.getElementById(\"SF_Job_Title__c\").value;\r\n\t\/\/  console.log('job_title='+job_title);\r\n\t}\r\n\telse job_title=\"not defined\";\r\n\tparam=param+'&job_title='+encodeURIComponent(job_title);\r\n\r\n\tif (document.getElementById('Company') !== null) {\r\n\t  company=document.getElementById(\"Company\").value;\r\n\t\/\/  console.log('company='+company);\r\n\t}\r\n\telse company=\"not defined\";\r\n\tparam=param+'&company='+encodeURIComponent(company);\r\n\r\n\tif (document.getElementById('Company_Revenue__c') !== null) {\r\n\t  company_revenue=document.getElementById(\"Company_Revenue__c\").value;\r\n\t\/\/  console.log('company_revenue='+company_revenue);\r\n\t}\r\n\telse company_revenue=\"not defined\";\r\n\tparam=param+'&company_revenue='+encodeURIComponent(company_revenue);\r\n\r\n\tif (document.getElementById('Company_Size__c') !== null) {\r\n\t  company_size=document.getElementById(\"Company_Size__c\").value;\r\n\t\/\/  console.log('company_size='+company_size);\r\n\t}\r\n\telse company_size=\"not defined\";\r\n\tparam=param+'&company_size='+encodeURIComponent(company_size);\r\n\r\n\tif (document.getElementById('customerIndustry') !== null) {\r\n\t  industry=document.getElementById(\"customerIndustry\").value;\r\n\t\/\/  console.log('industry='+industry);\r\n\t}\r\n\telse industry=\"not defined\";\r\n\tparam=param+'&industry='+encodeURIComponent(industry);\r\n\r\n\tif (document.getElementById('Country') !== null) {\r\n\t\tcountry=document.getElementById(\"Country\").value;\r\n\t\/\/\tconsole.log('[success] country='+country);\r\n\t}\r\n\telse country=\"not defined\";\r\n\tparam=param+'&country='+encodeURIComponent(country);\r\n\r\n\tif (document.getElementById('Purchase_Authority__c') !== null) {\r\n\t  purchase_authority=document.getElementById(\"Purchase_Authority__c\").value;\r\n\t\/\/  console.log('purchase_authority='+purchase_authority);\r\n\t}\r\n\telse purchase_authority=\"not defined\";\r\n\tparam=param+'&purchase_authority='+encodeURIComponent(purchase_authority);\r\n\r\n\tif (document.getElementsByName('Opt_in__c') !== null) {\r\n\t\tif(document.getElementsByName('Opt_in__c')[0].checked)\r\n\t\t  opt_in=\"Yes\";\r\n\t\telse opt_in=\"No\";\r\n\t\/\/  console.log('opt_in='+opt_in);\r\n\t}\r\n\telse opt_in=\"not defined\";\r\n\tparam=param+'&opt_in='+encodeURIComponent(opt_in);\r\n\r\n\tif (document.getElementById('enquiryType') !== null) {\r\n\t\/\/  enquiry_type=document.getElementById(\"enquiryType\").value;\r\n      \/\/ Get the <select> element and translated \r\n\t  var selectElement=document.getElementById(\"enquiryType\");\r\n\r\n\t  \/\/ Get the selected option\r\n\t  var selectedOption=selectElement.options[selectElement.selectedIndex];\r\n\r\n\t  \/\/ Get the text content of the selected option\r\n\t  enquiry_type=selectedOption.text;\r\n\t  \/\/  console.log('enquiry_type='+enquiry_type);\r\n\t}\r\n\telse enquiry_type=\"not defined\";\r\n\tparam=param+'&enquiry_type='+encodeURIComponent(enquiry_type);\r\n\r\n\tif (document.getElementById('enquiryType') !== null) {\r\n\t   enquiry_type_not_translated=document.getElementById(\"enquiryType\").value;\r\n\t  \/\/  console.log('enquiry_type_not_translated='+enquiry_type_not_translated);\r\n\t}\r\n\telse enquiry_type_not_translated=\"not defined\";\r\n\tparam=param+'&enquiry_type_not_translated='+encodeURIComponent(enquiry_type_not_translated);\r\n\r\n\tmy_campaign=\"\";\r\n\t\/\/ console.log('my_campaign='+my_campaign);\r\n\tparam=param+'&my_campaign='+encodeURIComponent(my_campaign);\r\n\r\n\tif (document.getElementById('enquiry') !== null) {\r\n\t  enquiry=document.getElementById(\"enquiry\").value;\r\n\t\/\/  console.log('enquiry='+enquiry);\r\n\t}\r\n\telse enquiry=\"not defined\";\r\n\tparam=param+'&enquiry='+encodeURIComponent(enquiry);\r\n\r\n\tif (document.getElementById('interestedIn') !== null) {\r\n\t  interested_in=document.getElementById(\"interestedIn\").value;\r\n\t\/\/  console.log('interested_in='+interested_in);\r\n\t}\r\n\telse interested_in=\"not defined\";\r\n\tparam=param+'&interested_in='+encodeURIComponent(interested_in);\r\n\r\n\t\/\/ Deal reg - customer company\r\n\tif (document.getElementById('programMemberField01') !== null) {\r\n\t  programMemberField01=document.getElementById(\"programMemberField01\").value;\r\n\t\/\/  console.log('programMemberField01='+programMemberField01);\r\n\t}\r\n\telse programMemberField01=\"not defined\";\r\n\tparam=param+'&programMemberField01='+encodeURIComponent(programMemberField01);\r\n\r\n\t\/\/ Deal reg - customer industry\r\n\tif (document.getElementById('programMemberField02') !== null) {\r\n\t  programMemberField02=document.getElementById(\"programMemberField02\").value;\r\n\t\/\/  console.log('programMemberField02='+programMemberField02);\r\n\t}\r\n\telse programMemberField02=\"not defined\";\r\n\tparam=param+'&programMemberField02='+encodeURIComponent(programMemberField02);\r\n\r\n\t\/\/ Deal reg - customer country\r\n\tif (document.getElementById('programMemberField03') !== null) {\r\n\t  programMemberField03=document.getElementById(\"programMemberField03\").value;\r\n\t\/\/  console.log('programMemberField03='+programMemberField03);\r\n\t}\r\n\telse programMemberField03=\"not defined\";\r\n\tparam=param+'&programMemberField03='+encodeURIComponent(programMemberField03);\r\n\r\n\t\/\/ Deal reg - quantity of users\/servers\r\n\tif (document.getElementById('programMemberField04') !== null) {\r\n\t  programMemberField04=document.getElementById(\"programMemberField04\").value;\r\n\t\/\/  console.log('programMemberField04='+programMemberField04);\r\n\t}\r\n\telse programMemberField04=\"not defined\";\r\n\tparam=param+'&programMemberField04='+encodeURIComponent(programMemberField04);\r\n\r\n\t\/\/ Deal reg - purchase timeline\r\n\tif (document.getElementById('Purchase_Timeline__c') !== null) {\r\n\t  purchase_timeline=document.getElementById(\"Purchase_Timeline__c\").value;\r\n\t\/\/  console.log('purchase_timeline='+purchase_timeline);\r\n\t}\r\n\telse purchase_timeline=\"not defined\";\r\n\tparam=param+'&purchase_timeline='+encodeURIComponent(purchase_timeline);\r\n\r\n\t\/\/ Deal reg - budget\r\n\tif (document.getElementById('programMemberField05') !== null) {\r\n\t  programMemberField05=document.getElementById(\"programMemberField05\").value;\r\n\t\/\/  console.log('programMemberField05='+programMemberField05);\r\n\t}\r\n\telse programMemberField05=\"not defined\";\r\n\tparam=param+'&programMemberField05='+encodeURIComponent(programMemberField05);\r\n\r\n\t\/\/ Deal reg - advised by\r\n\tif (document.getElementById('programMemberField06') !== null) {\r\n\t  programMemberField06=document.getElementById(\"programMemberField06\").value;\r\n\t\/\/  console.log('programMemberField06='+programMemberField06);\r\n\t}\r\n\telse programMemberField06=\"not defined\";\r\n\tparam=param+'&programMemberField06='+encodeURIComponent(programMemberField06);\r\n\r\n\tif (reCAPTCHALastUserFingerprint !== null) {\r\n\t\/\/  console.log('reCAPTCHALastUserFingerprint='+reCAPTCHALastUserFingerprint);\r\n\t}\r\n\telse reCAPTCHALastUserFingerprint=\"not defined\";\r\n\tparam=param+'&reCAPTCHALastUserFingerprint='+encodeURIComponent(reCAPTCHALastUserFingerprint);\r\n\r\n\t\/\/ console.log('param='+param);\r\n\r\n\t\/\/POST\r\n\tvar request=new XMLHttpRequest();\r\n\trequest.open(\"POST\", \"https:\/\/www.evidian.com\/p\/sm7\/marketo-lead-post.php\", false);\r\n\trequest.setRequestHeader(\"Content-Type\", \"application\/x-www-form-urlencoded; charset=UTF-8\");\r\n\trequest.send(param);\r\n\tif (request.readyState != \"4\") return false;\r\n\tif (request.status != \"200\") return false;\r\n\t\/\/ end BR\r\n\r\n    \/\/ Page Redirect - immediately goes to destination page in same tab\r\n   if (formType == \"Page Redirect\") {\r\n\t\t\/\/ test if it is a call for a SafeKit free trial license key (sek*.asp): if yes add the email in query string\r\n\t\tlet result=form_destination.indexOf(\"sek\");\r\n\t\tif (result !== -1) form_destination=form_destination+\"?Email=\"+encodeURIComponent(email);\r\n\t\t\/\/ console.log('Page Redirect (form_destination)='+\" \"+form_destination);\r\n\t\twindow.open(form_destination, \"_self\");\r\n\t\t\/\/ window.open(form_destination, \"_parent\"); \/\/ original line\r\n        return false;\r\n    }\r\n    \/\/ Asset Download - shows TY message with link to asset. \r\n    else if (formType == \"Asset Download\") {\r\n        if (form_content_name !== \"\") {\r\n            jQuery(\"#mktoFormThankYouMessageText\").html(thankYouMessage + \" \" + form_content_name + \".\");\r\n        } else {\r\n            jQuery(\"#mktoFormThankYouMessageText\").html(thankYouMessage);\r\n        }\r\n        jQuery(\"#mktoFormThankYouMessageLink\").attr(\"href\", form_destination);\r\n        jQuery(\"#mktoFormThankYouMessageLink\").html(downloadLinkText)\r\n        jQuery(\"#mktoFormThankYouMessageLink\").addClass(\"setToVisible\").removeClass(\"setToInvisible\");\r\n        showThankYouMessage();\r\n        return false;\r\n    }\r\n    \/\/ Thank You, or any kind of form not listed - shows TY message saying we'll get back to you\r\n    else {\r\n        jQuery(\"#mktoFormThankYouMessageText\").html(thankYouMessage);\r\n        jQuery(\"#mktoFormContactMessage\").html(contactMessage);\r\n        jQuery(\"#mktoFormContactMessage\").addClass(\"setToVisible\").removeClass(\"setToInvisible\");\r\n        showThankYouMessage();\r\n        return false;\r\n    };\r\n\r\n});\r\n\r\n        function translateFormLabels() {\r\n\t\t\t\r\n\t\t\t\/\/ BR - as translateFormLabels is called each time a field is changed, let's take advantage of it to force Costa Rica.\r\n\t\t\t\/\/ Clear the pre-filled form fields set by the browser based on the user's input history.\r\n\t\t\tif (document.getElementById('Country') !== null) {\r\n\t\t\t\tvar display=\"none\";\r\n\t\t\t\tvar country_predefined=\"\";\r\n\t\t\t\tif ((display == \"none\") && (country_predefined == \"Costa Rica\")) {\r\n\t\t\t\t\t\/\/ console.log('[translate] country='+document.getElementById(\"Country\").value);\r\n\t\t\t\t\tdocument.getElementById(\"Country\").value=\"Costa Rica\";\r\n\t\t\t\t\t\/\/ console.log('[translate] country='+document.getElementById(\"Country\").value);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\r\n            if (document.getElementById(\"preferredLanguage\")) {\r\n                \/\/use the form's language field, if it's empty, use the browser's default language\r\n                if (form.vals().preferredLanguage.length > 0) {\r\n                    language = form.vals().preferredLanguage;\r\n                } else {\r\n                    language = browserLangFormatted\r\n                }\r\n\r\n                const translationsObj = getTranslations(language);\r\n                const formFieldLabels = Object.keys(form.vals());\r\n                const keysForThisLanguage = Object.keys(languageTranslations[language]);\r\n\r\n                for (var i=0; i<formFieldLabels.length ; i++) {\r\n                    if (formContains(formFieldLabels[i], keysForThisLanguage)) {\r\n                        var objOfThisField = translationsObj[formFieldLabels[i]];\r\n                        \/\/change this label text to translated version\r\n                        jQuery(\"#Lbl\" + formFieldLabels[i]).html(objOfThisField.label);\r\n\r\n                        if (objOfThisField.type == \"select\") {\r\n                            var optionsForThisSelect = objOfThisField.options\r\n\r\n                            \/\/alphabestises the dropdown options for the field, based on the translated display text - ONLY sorts, not displays\r\n\/\/ BR BUG                   if (keysForThisLanguage[i] == \"customerIndustry\") {\r\n\t\t\t\t\t\t\tif (formFieldLabels[i] == \"customerIndustry\") {\r\n                                sortIndustryField(optionsForThisSelect);\r\n                            }\r\n\r\n\/\/ BR added\r\n                            \/\/alphabestises the dropdown options for the field, based on the translated display text - ONLY sorts, not displays\r\n\t\t\t\t\t\t\tif (formFieldLabels[i] == \"Country\") {\r\n                                sortIndustryField(optionsForThisSelect);\r\n                            }\r\n\/\/ end BR\r\n\r\n                            var valuesForThisSelect = optionsForThisSelect.map(a => a.value);\r\n                            var textsForThisSelect = optionsForThisSelect.map(a => a.text);\r\n                            var formOptionsForThisField = jQuery(\"#\" + formFieldLabels[i] + \" option\");\r\n                            var thisFormField = jQuery(\"#\" + formFieldLabels[i])\r\n\r\n                            \/\/if this dropdown option is in translations.js, translate the text that is displayed.\r\n                            for (var j = 0; j < formOptionsForThisField.length; j++) {\r\n                                var indexOfOption = valuesForThisSelect.indexOf(formOptionsForThisField[j].value);\r\n                                if (indexOfOption > -1) {\r\n                                    formOptionsForThisField[j].innerHTML = textsForThisSelect[indexOfOption];\r\n                                }\r\n                            }\r\n\r\n                            \/\/DISPLAYS the alphabetised options for the dropdown\r\n\/\/ BR BUG                   if (keysForThisLanguage[i] == \"customerIndustry\") {\r\n\t\t\t\t\t\t\tif (formFieldLabels[i] == \"customerIndustry\") {\r\n                                overwriteIndustryField(thisFormField, valuesForThisSelect, textsForThisSelect)\r\n                            }\r\n\r\n\/\/ BR added\r\n                            \/\/DISPLAYS the alphabetised options for the dropdown\r\n\t\t\t\t\t\t\tif (formFieldLabels[i] == \"Country\") {\r\n                                overwriteIndustryField(thisFormField, valuesForThisSelect, textsForThisSelect)\r\n                            }\r\n\/\/ end BR\r\n\r\n                            \/\/remove all salutation options, then replace with the values for this language\r\n\/\/ BR BUG                   if (keysForThisLanguage[i] == \"Salutation\") {\r\n                            if (formFieldLabels[i] == \"Salutation\") {                                currentSalutationSelected = form.vals().Salutation\r\n                                jQuery(\"#Salutation\").html(\"\")\r\n                                for (var j = 0; j < valuesForThisSelect.length; j++) {\r\n                                    jQuery(\"#Salutation\").append(jQuery('<option\/>', {\r\n                                        value: valuesForThisSelect[j],\r\n                                        text : textsForThisSelect[j]\r\n                                    }));\r\n                                }\r\n                                \/\/if the selected salutation is still an option, keep it selected.\r\n                                if (valuesForThisSelect.includes(currentSalutationSelected)) {\r\n                                    form.vals({ \"Salutation\" : currentSalutationSelected})\r\n                                }\r\n                            }\r\n\r\n                        } else if (objOfThisField.type == \"radio\") {\r\n                            var optionsForThisSelect = objOfThisField.options\r\n                            var valuesForThisSelect = optionsForThisSelect.map(a => a.value);\r\n                            var textsForThisSelect = optionsForThisSelect.map(a => a.text);\r\n                            var radioOptionsValueForThisField = jQuery(\"input[name='Opt_in__c']\");\r\n                            var radioOptionsLabelForThisField = jQuery(\"input[name='Opt_in__c']\").next();\r\n                            for (var j = 0; j < radioOptionsLabelForThisField.length; j++) {\r\n                                var indexOfOption = valuesForThisSelect.indexOf(radioOptionsValueForThisField[j].value);\r\n                                if (indexOfOption > -1) {\r\n                                    radioOptionsLabelForThisField[j].innerHTML = textsForThisSelect[indexOfOption];\r\n                                    jQuery(radioOptionsLabelForThisField[j]).removeClass(\"setToInvisible\");\r\n                                }\r\n                            }\r\n                        }\r\n                    };\r\n                }\r\n\r\n                \/\/choose correct privacy policy\r\n                var nationalPrivLawURL = \"none\"; \r\n                var nationalPrivLawRegex = new RegExp;\r\n                switch (form.vals().Country) {\r\n                    case \"United Kingdom\": case \"Isle of Man\": case \"Gibraltar\" : \r\n                        privacyType = \"DPA\";\r\n                        nationalPrivLawURL = \"https:\/\/www.legislation.gov.uk\/ukpga\/2018\/12\/contents\/enacted\";\r\n                        nationalPrivLawRegex = \/DPA|APD\/g;\r\n                        break;\r\n                    case \"United States\" : \r\n                        if (form.vals().State == \"CA\") {\r\n                            privacyType = \"CCPA\";\r\n                            nationalPrivLawURL = \"https:\/\/oag.ca.gov\/privacy\/ccpa\";\r\n                            nationalPrivLawRegex = \/CCPA\/g;\r\n                            nationalPrivLawURL2 = \"https:\/\/thecpra.org\/\"\r\n                            nationalPrivLawRegex2 = \/CPRA\/g;\r\n                        } else {\r\n                            privacyType = \"none\";\r\n                            nationalPrivLawURL = \"none\"\r\n                        }\r\n                        break;\r\n                    case \"Canada\" : \r\n                        privacyType = \"CASL\";\r\n                        nationalPrivLawURL = \"https:\/\/laws-lois.justice.gc.ca\/eng\/acts\/E-1.6\/index.html\";\r\n                        nationalPrivLawRegex = \/CASL\/g;\r\n                        break;\r\n                    case \"Brazil\" : \r\n                        privacyType = \"LGDP\";\r\n                        nationalPrivLawURL = \"https:\/\/lgpd-brazil.info\/\";\r\n                        nationalPrivLawRegex = \/LGPD\/g;\r\n                        break;\r\n                    case \"South Africa\" : \r\n                        privacyType = \"POPIA\";\r\n                        nationalPrivLawURL = \"https:\/\/popia.co.za\/\";\r\n                        nationalPrivLawRegex = \/POPIA\/g;\r\n                        break;\r\n                    case \"Mexico\" : \r\n                        privacyType = \"LFPDPPP\";\r\n                        nationalPrivLawURL = \"https:\/\/privacyinternational.org\/state-privacy\/1006\/state-privacy-mexico#dataprotection\"\r\n                        nationalPrivLawRegex = \/LFPDPPP\/g;\r\n                        break;\r\n                    case gdprCountries(form.vals().Country) : \r\n                        privacyType = \"GDPR\";\r\n                        nationalPrivLawURL = \"https:\/\/gdpr.eu\/\";\r\n                        nationalPrivLawRegex = \/GDPR|RGPD|DSGVO|AVG\/g\r\n                        break;\r\n                    default:\r\n                        privacyType = \"none\";\r\n                        nationalPrivLawURL = \"none\";\r\n                        break;\r\n                };\r\n\r\n                \/\/translate opt-in text\t\r\n\t\t\t\t\/\/ BR - translate opt-in messages only if they are displayed\r\n\t\t\t\tif (document.getElementById('LblOpt_in__c') !== null) {\r\n\t\t\t\t\t\/\/ BR - Count all elements with class of mktoHtmlText \r\n\t\t\t\t\t\/\/ and translate only the two last opt-in mktoHtmlText elements\r\n\t\t\t\t\t\/\/ Instead of jQuery(\".mktoHtmlText\").eq(0) jQuery(\".mktoHtmlText\").eq(1)\r\n\t\t\t\t\t\/\/ call jQuery(\".mktoHtmlText\").eq(count_mktoHtmlText-2) and jQuery(\".mktoHtmlText\").eq(count_mktoHtmlText-1)\r\n\t\t\t\t\tvar count_mktoHtmlText = document.querySelectorAll('.mktoHtmlText').length;\r\n\t\t\t\t\t\/\/ console.log('count_mktoHtmlText='+count_mktoHtmlText);\r\n\t\t\t\t\tvar optInTextObj = translationsObj[\"OptInText\"];\r\n\t\t\t\t\tvar optInTypes = optInTextObj.map(a => a.value);\r\n\t\t\t\t\t\/\/only California is different Opt-In to GDPR\/Default\r\n\t\t\t\t\tif (privacyType == \"CCPA\") {\r\n\t\t\t\t\t\tjQuery(\".mktoHtmlText\").eq(count_mktoHtmlText-2).html(optInTextObj[optInTypes.indexOf(privacyType)].text); \r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tjQuery(\".mktoHtmlText\").eq(count_mktoHtmlText-2).html(optInTextObj[0].text); \r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\/\/translate Privacy Policy text\r\n\t\t\t\t\tvar privacyTextObj = translationsObj[\"PrivacyText\"];\r\n\t\t\t\t\tvar privacyTypes = privacyTextObj.map(a => a.value);\r\n\t\t\t\t\tvar indexOfPrivacyType = privacyTypes.indexOf(privacyType);\r\n\t\t\t\t\tjQuery(\".mktoHtmlText\").eq(count_mktoHtmlText-1).html(privacyTextObj[indexOfPrivacyType].text); \r\n\r\n\t\t\t\t\t\/\/add in privacy policy links to translated text, for atos and for national law (e.g. GDPR)\r\n\t\t\t\t\tif (jQuery(\".mktoHtmlText\").eq(count_mktoHtmlText-1).html()) {\r\n\t\t\t\t\t\tvar privacyText = jQuery(\".mktoHtmlText\").eq(count_mktoHtmlText-1)\r\n\t\t\t\t\t\tvar atosPrivLinkRegex = \/(Privacy Policy|Politique de confidentialit\u00e9|Informativa sulla privacy|Datenschutzrichtlinie|Pol\u00edtica de privacidad|Privacybeleid|Pol\u00edtica de Privacidade)\/g\r\n\t\t\t\t\t\tvar atosPrivPolicyURL = 'https:\/\/eviden.com\/privacy-policy\/'\r\n\t\t\t\t\t\t\tif (language == \"French\") {\r\n\t\t\t\t\t\t\t\t\/\/only French link is non-EN\r\n\t\t\t\t\t\t\t\tatosPrivPolicyURL = 'https:\/\/eviden.com\/fr-fr\/politique-de-confidentialite\/'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\/\/add atos privacy link\r\n\t\t\t\t\t\taddInLink(privacyText, atosPrivLinkRegex, atosPrivPolicyURL);\r\n\t\t\t\t\t\tif (privacyType != \"none\" ) {\r\n\t\t\t\t\t\t\t\/\/add GDPR etc. link\r\n\t\t\t\t\t\t\taddInLink(privacyText, nationalPrivLawRegex, nationalPrivLawURL);\r\n\t\t\t\t\t\t\tif (privacyType == \"CCPA\") {\r\n\t\t\t\t\t\t\t\t\/\/California has two links\r\n\t\t\t\t\t\t\t\taddInLink(privacyText, nationalPrivLawRegex2, nationalPrivLawURL2);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t\/* end modif BR *\/\r\n\t\t\t\t\r\n                \/\/translate Submit Button\r\n                var submitButtonObj = translationsObj[\"Submit\"];\r\n\t\t\t\tvar submit_text=\"\"; \/\/ special text requested for Submit\r\n\t\t\t\tif (submit_text == \"\") {\r\n\t\t\t\t\tsubmit_text=submitButtonObj.text;\r\n\t\t\t\t}\r\n                jQuery(\".mktoButton[type='submit']\").html(submit_text);\r\n                \r\n                \/\/translate Thank You texts\r\n                if (form_content_name != \"\" && formType == \"Asset Download\") {\r\n                    thankYouMessage = translationsObj[\"ThankYouDataContent\"]\r\n                } else {\r\n                    thankYouMessage = translationsObj[\"ThankYouEmptyDataContent\"]\r\n                }\r\n                downloadLinkText = translationsObj[\"DownloadLinkText\"]\r\n                contactMessage = translationsObj[\"ContactTYText\"]\r\n                \r\n            };\r\n\t\t\t\r\n\t\t\t\/\/ BR - set label_job_title if defined\r\n\t\t\tvar label_job_title=\"\";\r\n\t\t\tif (label_job_title != \"\") {\r\n\t\t\t\tlabelElement = document.getElementById(\"LblSF_Job_Title__c\");\r\n\t\t\t\tlabelElement.innerHTML = label_job_title;\r\n\t\t\t}\r\n\r\n        };\r\n\r\n        const sortIndustryField = function(options) {\r\n            options.sort(function(a,b) {\r\n                \/\/make sure the 'please select' option is first\r\n                if (a.value == b.value) return 0\r\n                if (a.value == \"\") return -1;\r\n                if (b.value == \"\") return 1;\r\n                \/\/and sort the rest alphabetically\r\n                return a.text.localeCompare(b.text)\r\n                \/\/if (a.text > b.text) return 1;\r\n                \/\/if (a.text < b.text) return -1;\r\n                \/\/return 0 \r\n            })\r\n        }\r\n\r\n\r\n        const overwriteIndustryField = function(field, values, texts) {\r\n            var selectedVal = (field.val())\r\n            field.html(\"\");\r\n            for (var j = 0; j < values.length; j++) {\r\n                field.append(jQuery('<option\/>', {\r\n                    value: values[j],\r\n                    text : texts[j]\r\n                }));\r\n            }\r\n            \/\/keep previously selected value as selected\r\n            field.val(selectedVal);\r\n        } \r\n\r\n        \/\/add in privacy links to translated text\r\n        const addInLink = function(privacyText, unlinkedTextRegex, privURL) {\r\n            var stringToLink = privacyText.html().match(unlinkedTextRegex)\r\n            var linkedText = \"<a href=\"+ privURL + \" target='blank'>\" + stringToLink + \"<\/a>\";\r\n            var replacement = privacyText.html().replace(unlinkedTextRegex, linkedText);\r\n            privacyText.html(replacement) \r\n        }\r\n        \r\n        const formContains = (label, keysForThisLanguage) => {\r\n            if (keysForThisLanguage.includes(label)) {\r\n                return true\r\n            } else {\r\n                return false\r\n            }\r\n        }\r\n\r\n        const getTranslations = (language) => {\r\n            if(Object.keys(languageTranslations).includes(language)) {\r\n                return languageTranslations[language];\r\n            } else { return [] }\r\n        }\r\n\r\n        translateFormLabels();\r\n\r\n        \/\/when a field changes, check if any progressive fields have appeared and need translation\r\n        jQuery(\".mktoForm\").on(\"change\", \".mktoField\", () => {\r\n            translateFormLabels();\r\n        }); \r\n\r\n\r\n        \/\/check for a Marketo validation error message appearing, grab its text and change it to translated version\r\n        jQuery(document).delegate('.mktoForm', 'focus', function() {\r\n            if (document.getElementById(\"preferredLanguage\")) {\r\n                if ( jQuery('.mktoErrorMsg')['0'] ) {\r\n                    originalErrorMessage = jQuery('.mktoErrorMsg')[0];\r\n                    errorMessageID = jQuery(originalErrorMessage).attr('id')\r\n                    fieldID = errorMessageID.replace('ValidMsg', '')\r\n                    const translationsObj = getTranslations(language);\r\n                    var objOfThisField = translationsObj[fieldID];\r\n                    jQuery('.mktoError').addClass(\"mktoErrorRealign\")\r\n                    jQuery('.mktoErrorMsg')['0'].innerHTML = objOfThisField.requiredError;\r\n                };\r\n            };\r\n        });\r\n\r\n\/\/ Begin BR\r\n\t\tjQuery(document).ready( function($){\r\n\/*\r\n\tinverse first name \/ last name for Japanese (does not work - break the dynamic form - pb solved in translation.js)\r\n\t$first_name_div=$(\"#FirstName\").parents(\".mktoFormRow\")\r\n\t$first_name_div.clone(true).insertAfter($(\"#LastName\").parents(\".mktoFormRow\"))\r\n\t$first_name_div.remove()\r\n*\/\r\n\t\/* add Japanese in the list of languages *\/\r\n\t$('#preferredLanguage').append('<option value=\"Japanese\">Japanese<\/option>');\r\n\t\/* implement shortcodes \"marketo id=\"1624\" shortcodes...\" *\/\r\n\tvar display=\"none\";\r\n\tvar preferred_language=\"English US\";\r\n\tif (preferred_language != \"\") {\r\n\t\t$('#preferredLanguage').val(\"English US\");\r\n\t\t$('#preferredLanguage').trigger('change');\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#preferredLanguage\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\r\n\tvar enquiry_type=\"Product Information\";\r\n\tif (enquiry_type != \"\") {\r\n\t\t$('#enquiryType').val(\"Product Information\");\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#enquiryType\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\r\n\tif (\"1624\" == \"1624\") {\r\n\t\tvar my_campaign=\"\";\r\n\t\tif (my_campaign != \"\") {\r\n\t\t\telements=document.getElementsByName(\"programMemberField01\"); \/\/ hidden field\r\n\t\t\tif ( elements.length > 0 ) elements[0].value=\"\";\r\n\t\t}\r\n\t}\r\n\t\r\n\tvar interested_in=\"Identity Governance and Administration\";\r\n\tif (interested_in != \"\") {\r\n\t\t$('#interestedIn').val(\"Identity Governance and Administration\");\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#interestedIn\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\tvar phone=\"\";\r\n\tif (phone != \"\") {\r\n\t\t$('#Phone').val(\"\");\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#Phone\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\tvar job_title=\"Not specified\";\r\n\tif (job_title != \"\") {\r\n\t\t$('#SF_Job_Title__c').val(\"Not specified\");\r\n\t\tif (display == \"none\") {\r\n\t\t\tif (job_title == \"email\") {\r\n\t\t\t\tlabelElement = document.getElementById(\"LblSF_Job_Title__c\");\r\n\t\t\t\tlabelElement.innerHTML = \"Business Email Address *\";\r\n\t\t\t\t$('#SF_Job_Title__c').val(\"\");\r\n\t\t\t} else {\r\n\t\t\t\t$(\"#SF_Job_Title__c\").parents(\".mktoFormRow\").css('display','none');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tvar industry=\"Other\";\r\n\tif (industry != \"\") {\r\n\t\t$('#customerIndustry').val(\"Other\");\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#customerIndustry\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\tvar enquiry=\"\";\r\n\tif (enquiry != \"\") {\r\n\t\t$('#enquiry').val(\"\");\r\n\t\tif ((display == \"none\")&& (enquiry==\"none\"))\r\n\t\t\t$(\"#enquiry\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\tvar email=\"\";\r\n\tif (email != \"\") {\r\n\t\t$('#Email').val(\"\");\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#Email\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\tvar first_name=\"\";\r\n\tif (first_name != \"\") {\r\n\t\t$('#FirstName').val(\"\");\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#FirstName\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\tvar last_name=\"\";\r\n\tif (last_name != \"\") {\r\n\t\t$('#LastName').val(\"\");\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#LastName\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\tvar company=\"\";\r\n\tif (company != \"\") {\r\n\t\t$('#Company').val(\"\");\r\n\t\tif (display == \"none\")\r\n\t\t\t$(\"#Company\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\tvar country_predefined=\"\";\r\n\tif (country_predefined != \"\") {\r\n\t\t$('#Country').val(\"\");\r\n\t\t\/\/ keep country visible except when equal to Costa Rica\r\n\t\tif ((display == \"none\")&& (country_predefined == \"Costa Rica\")) {\r\n\t\t\t\/\/ console.log('[ready] display none for country='+document.getElementById(\"Country\").value);\r\n\t\t\t$(\"#Country\").parents(\".mktoFormRow\").css('display','none');\r\n\t\t}\r\n\r\n\t}\r\n\tvar display_salutation=\"false\";\r\n\tif (display_salutation == \"false\") {\r\n\t\t$(\"#Salutation\").parents(\".mktoFormRow\").css('display','none')\r\n\t}\r\n\t\r\n\ttranslateFormLabels(); \/* translate and sort according pre-selection *\/\r\n\r\n});\r\n\/\/ End BR\r\n\r\n\t});\r\n\r\n    \/\/check for Countries in GDPR during privacy policy selection\r\n    const gdprCountriesArr = listOfEuropeanCountries\r\n    const gdprCountries = (country) => {\r\n        if (gdprCountriesArr.includes(country)) {\r\n            return country;\r\n        } else return false;\r\n    }\r\n\r\n    function showThankYouMessage() {\r\n        MktoForms2.whenReady(function (form) {\r\n            form.getFormElem().hide();\r\n            jQuery(\"#mktoFormThankYouMessage\").addClass(\"setToVisible\").removeClass(\"setToInvisible\");\r\n        });\r\n    }\r\n\r\n    \r\n<\/script>\r\n\r\n<div id=\"mktoFormThankYouMessage\" class=\"setToInvisible\" mktoname=\"Form Thank you message\">\r\n    <div><span id=\"mktoFormThankYouMessageText\">Thank you for your interest.<\/span>\r\n        <!-- <a> below only displays if form-type is Asset Download-->\r\n        <a class=\"setToInvisible\" id=\"mktoFormThankYouMessageLink\" target=\"_blank\" href=\"\">You can download the report here.<\/a>\r\n    <\/div>\r\n    <!-- span below only displays if form-type is Contact Us-->\r\n    <span id=\"mktoFormContactMessage\" class=\"setToInvisible\">A member of our team will be in touch with you shortly<\/span>\r\n<\/div><\/div><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"Who are the leading Identity and Access Management vendors? European analyst company KuppingerCole has positioned Evidian IGA as a Market leader in the Leadership Compass report 2022, focused on Identity Governance &amp;\u00a0 Administration - IGA. \"The Identity Governance and Administration (IGA) market is continuing to evolve through more integrated Identity Lifecycle Management and Access Governance [&hellip;]","protected":false},"author":71,"featured_media":0,"parent":4555,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-full-screen-marketo-form.php","meta":{"_acf_changed":false,"_lmt_disableupdate":"no","_lmt_disable":"","footnotes":""},"class_list":["post-39227","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration<\/title>\n<meta name=\"description\" content=\"Evidian IGA and IDaaS positionned as an overall leader, product leader, innovation leader and market leader among 25 IGA product vendors\" \/>\n<meta name=\"robots\" content=\"noindex, follow\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration\" \/>\n<meta property=\"og:description\" content=\"Evidian IGA and IDaaS positionned as an overall leader, product leader, innovation leader and market leader among 25 IGA product vendors\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/\" \/>\n<meta property=\"og:site_name\" content=\"Evidian\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-14T11:27:42+00:00\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/kuppingercole-leadership-compass-identity-governance-administration-iga\\\/\",\"url\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/kuppingercole-leadership-compass-identity-governance-administration-iga\\\/\",\"name\":\"Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.evidian.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/kuppingercole-leadership-compass-identity-governance-administration-iga\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/kuppingercole-leadership-compass-identity-governance-administration-iga\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.evidian.com\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/kuppinger-iga-2022.png\",\"datePublished\":\"2020-09-09T13:40:29+00:00\",\"dateModified\":\"2026-02-14T11:27:42+00:00\",\"description\":\"Evidian IGA and IDaaS positionned as an overall leader, product leader, innovation leader and market leader among 25 IGA product vendors\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/kuppingercole-leadership-compass-identity-governance-administration-iga\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/kuppingercole-leadership-compass-identity-governance-administration-iga\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/kuppingercole-leadership-compass-identity-governance-administration-iga\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.evidian.com\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/kuppinger-iga-2022.png\",\"contentUrl\":\"https:\\\/\\\/www.evidian.com\\\/wp-content\\\/uploads\\\/2023\\\/01\\\/kuppinger-iga-2022.png\",\"width\":1000,\"height\":506},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/kuppingercole-leadership-compass-identity-governance-administration-iga\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Evidian\",\"item\":\"https:\\\/\\\/www.evidian.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Products\",\"item\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Evidian Identity Governance and Administration\",\"item\":\"https:\\\/\\\/www.evidian.com\\\/products\\\/identity-governance-and-administration-iga-10\\\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.evidian.com\\\/#website\",\"url\":\"https:\\\/\\\/www.evidian.com\\\/\",\"name\":\"Evidian\",\"description\":\"The European Leader in Unified Identity, Access Management, and Business Continuity\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.evidian.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.evidian.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.evidian.com\\\/#organization\",\"name\":\"Evidian\",\"alternateName\":\"Evidian\",\"url\":\"https:\\\/\\\/www.evidian.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.evidian.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.evidian.com\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/evidian-new-blue-1.png\",\"contentUrl\":\"https:\\\/\\\/www.evidian.com\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/evidian-new-blue-1.png\",\"width\":734,\"height\":200,\"caption\":\"Evidian\"},\"image\":{\"@id\":\"https:\\\/\\\/www.evidian.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/showcase\\\/eviden-cybersecurity\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCJKPuw2SDVNYUjZEJyLbIAA\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration","description":"Evidian IGA and IDaaS positionned as an overall leader, product leader, innovation leader and market leader among 25 IGA product vendors","robots":{"index":"noindex","follow":"follow"},"og_locale":"en_US","og_type":"article","og_title":"Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration","og_description":"Evidian IGA and IDaaS positionned as an overall leader, product leader, innovation leader and market leader among 25 IGA product vendors","og_url":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/","og_site_name":"Evidian","article_modified_time":"2026-02-14T11:27:42+00:00","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/","url":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/","name":"Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration","isPartOf":{"@id":"https:\/\/www.evidian.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/#primaryimage"},"image":{"@id":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/#primaryimage"},"thumbnailUrl":"https:\/\/www.evidian.com\/wp-content\/uploads\/2023\/01\/kuppinger-iga-2022.png","datePublished":"2020-09-09T13:40:29+00:00","dateModified":"2026-02-14T11:27:42+00:00","description":"Evidian IGA and IDaaS positionned as an overall leader, product leader, innovation leader and market leader among 25 IGA product vendors","breadcrumb":{"@id":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/#primaryimage","url":"https:\/\/www.evidian.com\/wp-content\/uploads\/2023\/01\/kuppinger-iga-2022.png","contentUrl":"https:\/\/www.evidian.com\/wp-content\/uploads\/2023\/01\/kuppinger-iga-2022.png","width":1000,"height":506},{"@type":"BreadcrumbList","@id":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/kuppingercole-leadership-compass-identity-governance-administration-iga\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Evidian","item":"https:\/\/www.evidian.com\/"},{"@type":"ListItem","position":2,"name":"Products","item":"https:\/\/www.evidian.com\/products\/"},{"@type":"ListItem","position":3,"name":"Evidian Identity Governance and Administration","item":"https:\/\/www.evidian.com\/products\/identity-governance-and-administration-iga-10\/"},{"@type":"ListItem","position":4,"name":"Evidian IGA and IDaaS, an overall product leader in Identity Governance &amp; Administration"}]},{"@type":"WebSite","@id":"https:\/\/www.evidian.com\/#website","url":"https:\/\/www.evidian.com\/","name":"Evidian","description":"The European Leader in Unified Identity, Access Management, and Business Continuity","publisher":{"@id":"https:\/\/www.evidian.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.evidian.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.evidian.com\/#organization","name":"Evidian","alternateName":"Evidian","url":"https:\/\/www.evidian.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.evidian.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.evidian.com\/wp-content\/uploads\/2024\/01\/evidian-new-blue-1.png","contentUrl":"https:\/\/www.evidian.com\/wp-content\/uploads\/2024\/01\/evidian-new-blue-1.png","width":734,"height":200,"caption":"Evidian"},"image":{"@id":"https:\/\/www.evidian.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.linkedin.com\/showcase\/eviden-cybersecurity\/","https:\/\/www.youtube.com\/channel\/UCJKPuw2SDVNYUjZEJyLbIAA"]}]}},"_links":{"self":[{"href":"https:\/\/www.evidian.com\/wp-json\/wp\/v2\/pages\/39227","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.evidian.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.evidian.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.evidian.com\/wp-json\/wp\/v2\/users\/71"}],"replies":[{"embeddable":true,"href":"https:\/\/www.evidian.com\/wp-json\/wp\/v2\/comments?post=39227"}],"version-history":[{"count":0,"href":"https:\/\/www.evidian.com\/wp-json\/wp\/v2\/pages\/39227\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/www.evidian.com\/wp-json\/wp\/v2\/pages\/4555"}],"wp:attachment":[{"href":"https:\/\/www.evidian.com\/wp-json\/wp\/v2\/media?parent=39227"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}