I have a public email I use for git commits and I am trying to figure out if it's possible to add a hidden backup email to my account without having it be exposed.
See the Setting a backup email address section of the Github docs.
Use a backup email address as an additional destination for security-relevant account notifications and to securely reset your password if you can no longer access your primary email address.
This should, of course, be different from the emails you use for commits. From your profile, go to the Emails section, add a new email address and select it from the dropdown of the Backup email address section.
In addition, you may want to also check the Keep my email addresses private option to hide your email "when performing web-based Git operations (e.g. edits and merges) and sending email on your behalf."
Related
I am new to firebase and I am trying to handle firebase user authentication in React.js. I did manage to create users with email and passwords. But, now I would like to send the user an Email link to reset their password.
My code currently look like this.
// This line of code belongs to the top
import { auth } from '../firebaseConfig'
//This part goes under the React component
<p onClick={async () => {
try{
await sendPasswordResetEmail(auth, // My Email Id)
alert('Password reset link has been sent to your email')
}
catch(err){
alert(err)
}
}}
>Forgot your Password ?</p>
However, I do not get any error messages and I do get the alert message that says "Password reset link has been sent to your email." Unfortunately, I didn't receive any email. Note that I have given my own email id as the parameter for testing purposes.
firebaser here
Did you check your spam folder? We recently see a lot of the emails from Firebase Authentication ending up in the user's spam folder or being marked as spam in a system along the way. This is being tracked in this status message on the Firebase dashboard and in public issue #253291461.
To reduce the chances of the messages getting marked as spam, consider taking more control of the email delivery yourself.
As a first step, consider using a custom domain with your project. Email that comes from a custom domain has less chance of being marked as span.
As a second step, consider setting up your own SMTP server.) for delivering the email, so that the emails are not being delivered from Firebase's shared infrastructure anymore.
While these steps are more involved, they typically will drastically reduce the cases where the messages from Firebase Authentication are marked as spam.
Full Guide Based on Frank's Answer
Firstly create a new email account you can use to relay the Firebase emails through the SMTP server with. I personally chose Gmail, but I tested with Outlook and it also works.
You can now find an SMTP server host that will work for your scenario. If you're sending less than 1000 emails per month you can find free and reliable hosts. I chose SMTP2GO's free option.
Now you've found the SMTP host, add the email address you've chosen as a single sender email (note that if you do own a domain, you can alternatively use that to send emails).
Note that you will have to verify the email, usually by your host sending a link to the email's inbox. Make sure to check spam.
Once verified, navigate to where you host allows you to add SMTP Users and add a new user. This will allocate an SMTP username and password.
Navigate to the Firebase console, and choose the Authentication option from the sidebar (within the Build product category).
Go to Templates → SMTP Settings and enter the details of your SMTP server. The username and password fields are to be filled with the SMTP user login you created in the step above.
It is better to use TLS, but I believe SSL should work too but it is untested.
Click save, and you're all set up - but there may still be steps to perform depending on your email provider.
Provider Specific Steps
If the emails are being sent to an account managed by Google you will have no issues with your emails being quarantined by anti-spam policies and it will work immediately.
If you are using Outlook, you will have a different problem on your hands. Outlook's built in defender will most likely have auto-quarantined your email under multiple policies - that bit is important.
These policies are likely to be both spam and phish policies. If you unblock one of them, the other will catch it and re-quarantine.
Unblock both policies for the email address, and test. You can see the status of quarantined messages in Microsoft 365 Defender app under Review → Quarantine. Please note that you will need to be an administrator to add global allow policies to your email accounts.
If this still doesn't work it is likely that your company has an additional external filter (as mine did), and you will have to add the IP's manually to the Tenant Allow/Block Lists spoofed senders tab.
If a GitHub repo has a GitHub action added, and that action fails, GitHub sends an automated email indicating that failure. How can I change the recipient of that email?
Background
My GitHub profile has my personal email address set as the primary email address, and my work email address added as a secondary. In my work's GitHub account I've created a new GitHub repo--one with a GitHub action that executes whenever a push occurs to the GitHub repo. GitHub settings are such that, when a push occurs and the action fails, GitHub sends an automated email indicating the failure. The problem is, when I push from my Git user (using my work email address) and the GitHub action fails, that email is sent to my personal email address, rather than my work email address. Both my work and I would like to keep all work-related email out of my personal email, if possible.
I'm not sure if the email is being sent to me because I created the repo, because I created the action, or because I initiated the push.
I realize I can additional recipients to this notification email, but that's not what I want right now.
Possible Solutions
Ideally, I'd like to change the recipient of these emails to any recipient(s) I want. Is that possible? If so, how would I approach that?
As a fallback, is there a way to simply change the recipient of these emails to my work email address, rather than my personal email address?
What I've Tried So Far
I've asked GitHub support about this, but haven't received a reply.
Check Settings: In my work repo, I don't seem to have permissions to check the settings of this repo. But I created a similar repo in my personal GitHub account, and was able to check its settings. There is a ‘Notifications’ section and an ‘Actions’ section. But nothing in either allows me to do what I want.
Thanks.
This worked for me
In your Github profile notification settings: https://github.com/settings/notifications
You can set the default notification email to one of those which are configured on your account.
Here is an example
There is also an interesting section in your case: Choosing where your organization’s email notifications are sent, in the Github Documentation that give more details about this.
If I change my username on GitHub, will my contributions still show commits from merged pull requests that are listed as using the email 123456+username#users.noreply.github.com? On the GitHub website it says
Git commits that were associated with your GitHub-provided noreply email address won't be attributed to your new username and won't appear in your contributions graph. If your Git commits are associated with another email address you've added to your GitHub account, including the ID-based GitHub-provided noreply email address, they'll continue to be attributed to you and appear in your contributions graph after you've changed your username.
I'm not really sure what that means, it seems contradictory to me. The commits I am concerned with were made from pull requests via GitHub's "Squash and merge" on the website (my requests merged by somebody else as well as somebody else's requests merged by me) and show up as 123456+username#users.noreply.github.com because I have email privacy enabled in account settings. I thought maybe it meant that you have to manually add the noreply email to your email addresses on the Email settings on GitHub, but doing this gives the message Error adding 123456+username#users.noreply.github.com: email is already in use.
I found the answer at https://help.github.com/en/github/setting-up-and-managing-your-github-user-account/setting-your-commit-email-address
Note: If you created your GitHub account after July 18, 2017, your GitHub-provided no-reply email address is a seven-digit ID number and your username in the form of ID+username#users.noreply.github.com. If you created your GitHub account prior to July 18, 2017, your GitHub-provided no-reply email address is your username in the form of username#users.noreply.github.com. You can get an ID-based GitHub-provided no-reply email address by selecting (or deselecting and reselecting) Keep my email address private in your email settings.
I think this is what I wanted - if you have the ID number at the start of the email then it is migrated with your account. This is confirmed further down the page:
If you use your GitHub-provided noreply email address to make commits and then change your username, those commits will not be associated with your GitHub account. This does not apply if you're using the ID-based GitHub-provided noreply address.
So the commits will remain as normal as long as your email has the ID at the start.
GitLab sends notification emails to the email address I used during registration. Can I change the target email address GitLab uses to send email notifications to?
I've already tried setting/changing my email address on my "Profile settings" but it's used only for display; it doesn't change where GitLab sends notification emails to.
OK it seems I figured out the causing issue.
As it turns out the "Email" property on my "Profile settings" does specify where GitLab sends notification emails. The problem was a bit more elaborate.
There were two GitLab accounts that had the same username! Both belonged to me; one was a regular user and the other was an admin. The two users had different email addresses; just their usernames were the same.
This caused some kind of an anomaly; even though an action was triggered for the admin user the notification email went to the email address of my other user; strange indeed.
I changed the username of one of my users to make them unique. After that, everything worked well.
Hope this will help someone in the future.
I have created a GitHub account and, I do not like sharing my email address publicly (I'm sick of Spam), so I followed GitHub's Keeping Your Email Address Private tutorial and everything worked fine up until the point where you have to verify the fake email you created.
So how do I verify this fake email that I created on GitHub?
I did check my real email account that is associated with my GitHub account incase they sent an email there but no, I have not received anything there. Since it is a fake email address, I thought, maybe I can just click verify, but no, that doesn't work either.
You don't verify the fake e-mail address. This is how it is suppose to work. Just go ahead and use the fake e-mail address with commits.
Update -
GitHub recently update the Keeping Your Email Address Private tutorial. The "Hiding your email for commits on the website" section has everything you need to know, and will credit your commits to you. This way you won't have unverified e-mail addresses anymore.
You don't have to verify your fake e-mail address to use it in commits and have those commits linked to your GitHub account.
You also don't have to create your own fake e-mail address. GitHub creates one for you when you turn on the "Keep my email address private" option on your email settings. Next to your primary e-mail address, you should see a message like this:
Because you have email privacy enabled, joe#example.com will be used for account-related notifications and joe#users.noreply.github.com will be used for web-based GitHub operations (e.g. edits and merges).
You can use that no-reply e-mail address as your fake e-mail address. See the e-mail addresses help page for more details, including information on the new style of fake e-mail addresses that include an id number. Those addresses will continue to work if you change your GitHub account name.