diff --git a/CHANGELOG b/CHANGELOG
index 744e6b70ba1b2f53abb3194f9a70d6f0d85fe938..a4f495907601f807c30436419d2d4bcac2a119f8 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -20,6 +20,7 @@ v 8.7.0 (unreleased)
 v 8.6.3 (unreleased)
   - Destroy related todos when an Issue/MR is deleted. !3376
   - Fix error 500 when target is nil on todo list. !3376
+  - Allow temporary email as notification email. !TBD
 
 v 8.6.3
   - Fix copying uploads when moving issue to another project
diff --git a/app/models/user.rb b/app/models/user.rb
index 128ddc2a694ebbe80b033bdeadf9a0ac0199cca2..2b0bee2099f2f5110bb1b08be29fca08e298e4da 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -408,6 +408,8 @@ class User < ActiveRecord::Base
   end
 
   def owns_notification_email
+    return if self.temp_oauth_email?
+
     self.errors.add(:notification_email, "is not an email you own") unless self.all_emails.include?(self.notification_email)
   end
 
diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb
index 0ab7fd88ce66b70eb66e8a6a38fd14afe76b01e6..8b2fb77e28eb1fb55ba3c916b94b16680fe56d92 100644
--- a/spec/models/user_spec.rb
+++ b/spec/models/user_spec.rb
@@ -173,6 +173,13 @@ describe User, models: true do
           expect(user).to be_invalid
         end
       end
+
+      context 'owns_notification_email' do
+        it 'accepts temp_oauth_email emails' do
+          user = build(:user, email: "temp-email-for-oauth@example.com")
+          expect(user).to be_valid
+        end
+      end
     end
   end