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

Last Updated dezembro 10, 2025

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ão e correspondência com todos os URLs e introduzirá erros em determinados sites.

Regex diferencia maiúsculas de minúsculas. Certifique-se de corresponder às maiúsculas e minúsculas corretas do 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 que o WalkMe injete apenas em um iFrame específico, mas o domínio do iFrame esteja 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

Usando, o WalkMe só será injetado no https://visual.force.com/iFrame 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
  • Às vezes pode ser "na", "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, Oriente Médio e África. 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á sendo injetada em muitos iFrames usando a Ferramenta de Diagnóstico Master de Extensão.
Observação

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

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 Classic e 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 Salesforce Console.

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 diferenciadas

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 faz referência ao aparecimento 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 pela palavra "console" e, dados os 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=02u50000000e56v, mas irá corresponder https://cs2.salesforce.com/home/home.jsp?tsid=02u0000000000hV.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
×