title: firebase error when deleting user account "This operation is sensitive and requires recent authentication. Log in again before retrying this request."
body: <p>When I want to delete a firebase user account in my application, the operation passes normally if the user has recently logged but after a period of time if I try to delete the user I get this error 
  "This operation is sensitive and requires recent authentication. Log in again before retrying this request."
  Normally the firebase refresh the user session automatically but I didn't find why he want the user to log again and even the value of <strong>Auth.auth().currentUser is not nil</strong>. Thank you for your help !
  this is my code to delete the user account : </p>
  
  <pre><code>@objc func deleteAccountAction(){
  self.showProgressView()
  let user = Auth.auth().currentUser
  let id=Auth.auth().currentUser?.uid
  self.refProducts.child(id!).removeValue { error, _ in
      if(error != nil){
          print("firebase remove error")
          print(error?.localizedDescription.description ?? nil)
          self.dismissHUD(isAnimated: true)
      }
      else{
          self.refUsers.child(id!).removeValue { error, _ in
              if(error != nil){
                  print("firebase remove error")
                  print("error while deleting user from firebase: "+error!.localizedDescription)
                  self.dismissHUD(isAnimated: true)    
              }
              else {
  
                  user?.delete { error in
                      if  error != nil {
                          print("error while deleting user:" + error!.localizedDescription)
                          self.dismissHUD(isAnimated: true)
                      } else {
  
                         UserDefaults.standard.removeObject(forKey: "USER_UID")
                                                                                 UserDefaults.standard.synchronize
                                      self.dismissHUD(isAnimated: true)
                                      let nextVC = self.storyboard?.instantiateViewController(withIdentifier: "StartingViewController") as! StartingViewController
                                      nextVC.isAccoundDeleted=true
                                      GlobalVar.user=nil
                                      self.navigationController?.pushViewController(nextVC, animated: true)
                          }
                      }
                  }
              }
          }
      }
  }
  </code></pre>