Azure
Microsoft が管理する世界のデータ センター ネットワークを介してアプリケーションとサービスを構築、配置、および管理するインフラストラクチャおよびクラウド コンピューティング プラットフォーム。
576 件の質問
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
いろいろ調べたのですが原因が全くわかりませんでしたので、すみませんが教えてください。
Pythonのバッチ処理でMS365のOutlookメール送信を実現したいため、以下ロジックを組みました。
from O365 import Account, FileSystemTokenBackend
import os
credentials = ('xxxxx', 'yyyyy')
tenant_id = 'zzzzz'
token_backend = FileSystemTokenBackend(token_path=os.getcwd()+'/token_folder/', token_filename='my_token.txt')
account = Account(credentials, auth_flow_type='credentials', tenant_id=tenant_id, token_backend=token_backend)
if account.authenticate():
print('Authenticated!')
mailbox = account.mailbox('******@bbb.ccc')
m = mailbox.new_message()
m.to.add('******@bbb.ccc')
m.subject = 'テストメールです'
m.body = "メール送信テストです"
m.save_message()
m.send()
*キー値などは適当な文字列に置き換えています
上記ロジックを実行したところ
「requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://graph.microsoft.com/v1.0/users/******@bbb.ccc/mailFolders/Drafts/messages | Error Message: The requested user '******@bbb.ccc' is invalid.」
のエラーとなり、メール送信ができませんでした。
「'Authenticated'」のデバッグは表示されており、かつ、取得できたトークンの有効期限も確認したのですが、1時間後で有効期限切れはありませんでした。
「******@bbb.ccc」のメールアドレスも有効なもの(普段メール送受信ができているもの)なので、無効なはずはない認識です。
Azure portalの「アプリの登録」画面で「Mail.Send」と「Mail.ReadWrite」に「委任されたアクセス許可」でアクセス権を与えているため、必要な事前設定はすべて実施した認識です。
何が悪いかわかりますでしょうか?
お忙しいところ恐縮ですが、よろしくお願いいたします