I have attempted this and succeeded. However, it is quite a headache to set up. Basically, you need to use Dialogflow fulfillment to call a firebase function. There, you need to use Firebase Auth's ability to sign in with a custom token. (You might want to consider some form of encryption at this point). Then you send the token back to dialogflow. Now you have to store that token in one of many ways. Once again, you will definitely want to encrypt the token. Each time you send a message then, you send along the token to your function, which will (using Promises) either accept it if the token is correct or reject it if it is not.
See this code which shows how to use custom token auth with dialogflow. Hope this helps.