SSO-MIB-GCH-SMTP-O365(1)
πΈ HI BESTIE, WELCOME TO sso-mib-gch-smtp-o365 πΈ
okay so this is the manual page for sso-mib-gch-smtp-o365, and it lives in the User Commands section of the manual, which is exactly where you'd expect a little command-line icon to be. buckle up because this one is genuinely useful and also kind of niche and I'm obsessed π
β¨ NAME β¨
sso-mib-gch-smtp-o365 β a git credential helper for Office 365 SMTP, powered by the Microsoft Identity Broker. no cap, that's the whole vibe.
π SYNOPSIS π
sso-mib-gch-smtp-o365 [client_id] [authority] command
π¦ DESCRIPTION π¦
so sso-mib-gch-smtp-o365 is a git credential helper whose entire main character job is authenticating git-send-email(1) on Office 365 using OAuth2 tokens that it gets from the Microsoft Identity Broker by way of the sso-mib library. like, it goes and gets the token for you, it's so thoughtful π«Ά
it acquires an access token for the https://outlook.office365.com/SMTP.Send scope and then prints out credentials in the format that git-credential(1) expects. chef's kiss, it just works.
heads up bestie: this helper only responds to thegetcommand, and only for thesmtpprotocol. theapprove,reject, andcapabilitycommands are silently ignored β like, no drama, no output, they're just not the moment π
π ARGUMENTS π
client_idβ the Azure client application ID. you can also set it through the environment variableMIB_GCH_SMTP_CLIENT_ID. if both exist, the command-line argument wins (it takes precedence, obviously, she's the main character).authorityβ the Entra ID (Azure AD) authority URL, e.g.https://login.microsoftonline.com/<tenant_id>. can also be set via the environment variableMIB_GCH_SMTP_AUTHORITY. and yep, the command-line argument takes precedence here too.commandβ the git credential helper command. it's one ofget,approve,reject, orcapability. and onlygetproduces output, so don't expect the others to say anything back π
π ENVIRONMENT π
MIB_GCH_SMTP_CLIENT_IDβ Azure client application ID. gets used when noclient_idargument was handed over on the command line.MIB_GCH_SMTP_AUTHORITYβ Entra ID authority URL. gets used when noauthorityargument was handed over on the command line.G_MESSAGES_DEBUG=ssomibβ turns on debug logging of DBus call parameters through GLib's message logging system. perfect for when you're being a little detective π
π§ GIT CONFIGURATION π§
drop this into your .gitconfig so the helper handles your SMTP credentials:
[credential "smtp://"]
helper = !sso-mib-gch-smtp-o365 <client_id> <authority>
or, if you'd rather go the environment-variable route (lowkey cleaner, ngl):
[credential "smtp://"]
helper = !sso-mib-gch-smtp-o365
β OUTPUT β
on a successful get command for the smtp protocol, the helper prints exactly this:
username=<user@example.com>
password=<access_token>
password_expiry_utc=<epoch_seconds>
authtype=bearer
that authtype=bearer at the end? yeah, that's the moment. β¨
π EXIT STATUS π
0β success, or a command/protocol came through that just doesn't apply here.1β an error happened, e.g. a missing authority or client ID, or the broker communication failed π
π₯ EXAMPLES π₯
using it with git send-email
$ git config --global credential.smtp://.helper \
'!sso-mib-gch-smtp-o365 <client_id> https://login.microsoftonline.com/<tenant_id>'
$ git send-email --smtp-auth=xoauth2 *.patch
testing the helper by hand
$ echo "protocol=smtp" | sso-mib-gch-smtp-o365 <client_id> <authority> get
π SEE ALSO π
sso-mib-tool(1), git-credential(1), git-send-email(1)
go read those too, they're the supporting cast and they ate π«Ά
π AUTHORS π
- Felix Moessbauer
<felix.moessbauer@siemens.com> - Andreas Ziegler
<ziegler.andreas@siemens.com>
π COPYRIGHT π
Copyright (C) 2025 Siemens AG. Licensed under MIT. very generous of them, we love a permissive license β
and that's the whole page bestie π
this was sso-mib 0.10.1, dated 2025, and it belongs to the SSO-MIB-GCH-SMTP-O365(1) manual page β go forth and send those patches, you got this πΈπ¦β¨
π¦ where this page comes from
- ubuntu stonking: sso-mib-gch-smtp-o365 0.10.1-1 Β· LGPL-2.1-only
- π the page's license: MIT
- (C) 2025 Siemens AG
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms