Office365-rest-python-client: 「認証Cookieの取得中にエラーが発生しました」request_form_digest()

作成日 2018年07月24日  ·  8コメント  ·  ソース: vgrem/Office365-REST-Python-Client

Office 365のSharePointにファイルをアップロードするための実用的なコードがいくつかありましたが、失敗することがあります。 簡略化されたコードは次のとおりです。

office365.runtime.auth.authentication_contextからimportAuthenticationContext
office365.sharepoint.client_contextからimportClientContext
Office365.runtime.utilities.request_optionsからRequestOptionsをインポートします
os.pathからインポートベース名

ctx_auth = AuthenticationContext(url = base_url)

ctx_auth.acquire_token_for_user(username = user_name、password = pwd)でない場合:
print(ctx_auth.get_last_error())
出口()

file_name = basename(file_path)
files_url = "{0} / _api / web / GetFolderByServerRelativeUrl( '{1}')/ Files / add(url = '{2}'、overwrite = true)"
full_url = files_url.format(base_url、folder_url、file_name)

options = RequestOptions(base_url)
コンテキスト= ClientContext(base_url、ctx_auth)
context.request_form_digest()

これが私が得るエラーです:

トークンの取得中にエラーが発生しました:AADSTS70002:資格情報の検証中にエラーが発生しました。 AADSTS50053:誤ったユーザーIDまたはパスワードで何度もサインインしようとしました。
認証Cookieの取得中にエラーが発生しました
トレースバック(最後の最後の呼び出し):
ファイル "testsimplified.py"、24行目、
context.request_form_digest()
ファイル「C:todoitems \ pysharepointerrers \ office365 \ sharepoint \ client_context.py」、33行目、request_form_digest
self.authenticate_request(request)
ファイル「C:todoitems \ pysharepointerrers \ office365 \ runtime \ client_runtime_context.py」、16行目、authenticate_request
self .__ auth_context.authenticate_request(request)
ファイル「C:todoitems \ pysharepointerrers \ office365 \ runtime \ auth \ authentication_context.py」、27行目、authenticate_request
request_options.set_header( 'Cookie'、self.provider.get_authentication_cookie())
ファイル「C:todoitems \ pysharepointerrers \ office365 \ runtime \ auth \ saml_token_provider.py」、69行目、get_authentication_cookie
'FedAuth =' + self.FedAuth + 'を返します。 rtFa = '+ self.rtFa
TypeError:NoneTypeではなくstrである必要があります

なぜこれが機能する場合と機能しない場合があるのか​​、何か考えはありますか? 正しいユーザー名とパスワードを使用しています。

question

最も参考になるコメント

最終的に、MicroSoftGraphに基づいてファイルをSharePointにアップロードするスクリプトを作成しました。 https://github.com/bobbydurrett/copyfiletosharepoint

全てのコメント8件

これは月曜日に私に起こり始めたばかりです。 私はまだ解決策も探しています。

はい、月曜日に開始した同じエラーも発生しました。 これがすぐに修正されることを願っています。 コードはで失敗しています
ctx.excecute_query()

ctx_auth = AuthenticationContext(url)

if ctx_auth.acquire_token_for_user(username, password):

    ctx = ClientContext(url, ctx_auth)
    web = ctx.web
    ctx.load(web)
    ctx.execute_query()
    print "SharePoint Site: {0}".format(web.properties['Title'])

else:
    print ctx_auth.get_last_error()

次のエラーが発生します。

return 'FedAuth=' + self.FedAuth + '; rtFa=' + self.rtFa
TypeError: cannot concatenate 'str' and 'NoneType' objects

同様のエラーが発生します。 エラーは次のいずれかです。 いくつかの解決策を探していますが、まだ何も機能していませんので、修正に感謝します。

トークンの取得中にエラーが発生しました:AADSTS70002:資格情報の検証中にエラーが発生しました。 AADSTS50053:誤ったユーザーIDまたはパスワードで何度もサインインしようとしました。

トークンの取得中にエラーが発生しました:AADSTS70002:資格情報の検証中にエラーが発生しました。 AADSTS50126:無効なユーザー名またはパスワード

ブラウザからサイトにアクセスする場合も、同じユーザー名とパスワードが機能することに注意してください。

ありがとう。

最終的に、MicroSoftGraphに基づいてファイルをSharePointにアップロードするスクリプトを作成しました。 https://github.com/bobbydurrett/copyfiletosharepoint

ありがとう@bobbydurrettこれは本当に便利です!

内部アカウント(AD Azure for O365)でも同じエラーが発生しますが、外部アカウントでは認証プロセスは正常に機能します。 @majduddin @zachnamyat @EGCPHD解決策を見つけましたか?

私はこの方法で同様の問題を解決しました: https

同様の問題2.1.10バージョンで解決されたことが確認されており、これまで誰もこの問題に遭遇していないため、これを閉じることを提案します。

このページは役に立ちましたか?
0 / 5 - 0 評価