A sessão não está vinculada à autenticação, você está tentando resolvê-la da maneira errada.
Todos os tíquetes e cookies de autenticação de formulários são criptografados e assinados usando a camada de proteção de dados. O problema que você está encontrando é porque as chaves de criptografia não são salvas e os aplicativos estão isolados uns dos outros.
Para resolvê-lo, você deve compartilhar as duas chaves de criptografia e definir um nome de aplicativo em seu código. Com toda a honestidade, eu recomendo que você não faça isso. A pré-produção não é um serviço ao vivo e você não deve conseguir autenticar em ambos ao mesmo tempo.
Se você achar que deve fazer isso, precisará compartilhar o chaveiro de criptografia e definir um nome de aplicativo fixo. Você pode compartilhar chaves por meio de uma pasta compartilhada ou armazenando-as em um local compartilhado, como SQL ou armazenamento do Azure. Para fazer isso, você teria que escrever seu próprio provedor de chaveiro, implementando um IXmlRepository. Depois de ter suas chaves compartilhadas, você pode definir um identificador de aplicativo fixo usando SetApplicationName durante a configuração da proteção de dados.