Como usar o Regex para definir o(s) domínio(s) que injetam o WalkMe

Last Updated março 13, 2026

Diretrizes Gerais

Regex deve ser o mais específico possível, mas também geral o suficiente para funcionar em páginas diferentes. Para alcançar esse equilíbrio, use prefixos específicos do cliente.

O Regex para cada ambiente deve ser diferente. Os prefixos também são úteis aqui.

Comece e termine cada sequência de regex com .*

  • Exemplo: .*salesforce.com.*

Em vez de usar dígitos, use .*. Substitua quaisquer números em um URL por .*

Certifique-se de colocar um \ antes de cada ponto.

  • Exemplo: .*salesforce \. com.*

Não há necessidade de escapar dos hífens.

  • Exemplo:
    • Não use: .*panasonic\-\-full\.salesforce\.com.*
    • Use:  .*panasonic--full\.salesforce\.com.*)

Para incluir um URL com dois ou mais prefixos diferentes, use (primeiro|segundo|terceiro|etc.) onde os prefixos ocorrem.

Para regex excluir uma palavra, consulte o exemplo abaixo, onde você deseja criar uma extensão com uma conta de editor no Salesforce Classic e outra no Salesforce Console.

  • Exemplo:
    • Salesforce classic regex: .*cs.*.salesforce.com(?!console).*
      • Observação: isso (?!console) exclui a palavra console do regex.
    • Salesforce console regex: .*cs.*.salesforce.com/console.*

Para incluir mais de um regex em um pacote, coloque um | entre cada regex sem espaços.

  • Exemplo: .*cs.*.salesforce.com.*|.*cs.*.visual.force.com.*

Certifique-se de nunca deixar dois || consecutivos em um pacote, pois isso causará uma lista de permissões e corresponderá a todos os URLs e introduzirá erros em determinados sites.

Regex diferencia maiúsculas de minúsculas. Certifique-se de corresponder ao uso correto de maiúsculas/minúsculas da URL dentro do regex.

Regex de domínio mais rigoroso

Pode haver um cenário em que você precise "apertar" o regex para excluir um quadro específico. Por exemplo, você pode querer apenas que o WalkMe injete em um iFrame específico, mas o domínio desse iFrame está incluído em muitos outros iFrames como referência.

Exemplo de domínio iFrame no qual você deseja que o WalkMe apareça:

  • https://visual.force.com/1000

Exemplo de domínio iFrame no qual estamos tentando evitar que o WalkMe se injete:

  • salesforce.com/referrer?=https://visual.force.com/1000

Para especificar o regex que deve vir no início do URL, usamos:

  • ^https?://[^/]*(visual.force).com

Ao usar isso, o WalkMe só injetará no iFrame https://visual.force.com  se for a primeira parte do URL.

Dicas de Regex específicas da plataforma

Há várias extensões que muitas vezes somos solicitados a configurar e que são padrão.

Salesforce

É extremamente importante criar as extensões do Salesforce com cuidado e testá-las em vários cenários de teste devido à variação na plataforma entre as páginas e à presença de muitos iFrames de análise que ocupam 0 px.

Criando a extensão

  • Use o regex de previsão negativa para evitar o servidor de sessão e outras injeções desnecessárias: (?!/(login/sessionserver|s.gif)
  • Usar a lógica "Ou" dentro do pacote é mais eficiente do que criar duas extensões separadas
  • "na"  pode ser às vezes  "ap", " eu" ou "cs", dependendo da localização geográfica do servidor Salesforce, mas geralmente não muda, portanto, fique com o URL que você tem
    • nameansNorthAmerica,apmeansAsia-Pacific,andeumeansEurope, Middle East or Africa.csrepresenta um ambiente sandbox
    • O número ao lado do código de duas letras indica a instância do servidor no país atribuído. Isso pode mudar ao carregar um novo ambiente ou atualizar um ambiente existente
    • Você pode ver o status de integridade dos servidores Salesforce em  http://trust.salesforce.com/trust/instances

Testando a extensão

  • Peça ao CSM que forneça uma página "pesada" com muito conteúdo ou, em alternativa, uma página importante na implementação e certifique-se de que ela funcione bem lá.
  • Verifique se a extensão não está injetando em muitos iFrames usando a  Ferramenta de Diagnóstico de Extensão Master
Observação

Ao criar/testar no Salesforce Lightning, use uma  nova extensão sem o componente "walkme_"; por exemplo, walkmecs funcionará e walkme_cs não funcionará.

Teste

Site  URLs de exemplo  Regex Sugerido
Salesforce Classic https://panasonic--fullcopy.cs24.my.salesforce.com/
https://panasonic--fullcopy--field-trip.cs24.visual.force.com/
 .*customername.*.cs.*.my.salesforce.com.*|.*cs.*.salesforce.com/(?!console).*|.*cs.*.visual.force.com.*
Salesforce Lightning  https://cs24.lightning.force.com/  .*cs.*.lightning.force.com.*
Salesforce Console  https://cs6.salesforce.com/console?tsid=02u50000000e56v  .*cs.*.salesforce.com/console.*


Produção

Site  URLs de exemplo  Regex Sugerido
Salesforce Classic https://panasonic.my.salesforce.com/home/home.jsp
https://panasonic--c.na34.visual.force.com/
 .*customername.my.salesforce.com.*|.*na.*.salesforce.com/(?!console).*|.*na.*.visual.force.com.*
Salesforce Lightning https://na34.lightning.force.com/  .*na.*.lightning.force.com.*
Salesforce Console https://na2.salesforce.com/console?tsid=02u50000000e56v  .*na.*.salesforce.com/console.*

Nos exemplos acima, você notará que adicionamos (?!console) ao regex do Salesforce Classic. Como esses pacotes estão dentro da mesma extensão e os URLs Classic e Console são bastante semelhantes, não queremos que o WalkMe fique confuso e carregue o WalkMe onde não deveria carregar (ou não carregar!). A única diferença entre um dos URLs Clássico e do Console é que o URL do Console tem "/console" no final. Portanto, adicionamos o (?!console) ao regex do Salesforce Classic para garantir que ele não carregue nenhum conteúdo destinado ao Console Salesforce.

Workday®

Teste

 URL de exemplo  Regex Sugerido
  impl.workday.com/tripadvisor/d/home.htmld  .*impl.workday.com/customername.*

Produção

 URL de exemplo  Regex Sugerido
 https://www.myworkday.com/sunbeltrentals/login.flex  .*myworkday.com/customername.*

SuccessFactors

Teste

 URL de exemplo  Regex Sugerido
https://hcm4preview.sapsf.com/ .*hcm.*preview.sapsf.com.*

Produção

 URL de exemplo  Regex Sugerido
https://performancemanager5.successfactors.com/ .*performancemanager.*.successfactors.com.*
Observação

Os URLs do SuccessFactors não têm um padrão constante. A produção e o teste podem ser praticamente idênticos, por exemplo: https://performancemanager5.successfactors.eu.
Se esse for o caso, use extensões diferentes com o mesmo regex.

Distinguir entre URLs semelhantes, mas criticamente diferenciados

Ao configurar uma extensão, você geralmente precisará de vários pacotes para diferentes plataformas, por exemplo, um para o Salesforce normal (SFDC) e outro para o Service Cloud. Nesses casos, a extensão do navegador utilizará regex para diferenciar entre plataformas e injetar diferentes trechos nessas diferentes plataformas, conforme apropriado. No cenário hipotético do SFDC Service Cloud, poderíamos usar regex para diferenciar entre essas plataformas da seguinte forma:

URL normal do SFDC:

URL normal do Service Cloud:

Instrução Regex para que a extensão capture qualquer URL do Service Cloud:

  • .*cs2.salesforce.com/console.*

Isso se baseia na aparência do termo "console" imediatamente após o salesforce.com domain.

Como uma diferença clara entre o URL do Service Cloud e o URL do SFDC é o aparecimento da palavra "console" imediatamente após "salesforce.com", podemos usar isso para nossa vantagem.

Usando os símbolos regex "?!", podemos destacar todas as instâncias de "salesforce.com" que não são seguidas da palavra "console" e, dados nossos dois URLs base, sabemos que esses serão URLs SFDC.

SFDC regex:

  • .*cs2.salesforce.com/(?!console).*

Aqui, "?!console" significa qualquer URL que possua os itens neste regex, onde "console" NÃO aparece nesta posição na expressão.

Isso não corresponderá https://cs2.salesforce.com/console?tsid=02u5000000e56v, mas ele corresponderá https://cs2.salesforce.com/home/home.jsp?tsid=02u00000000hV.se

Was this article helpful?

Thanks for your feedback!

Faça parte de algo maior.

Interaja com colegas, tire dúvidas e compartilhe ideias.

Explore nossa comunidade
×