2017-07-26 5 views
0

組織内のO365のすべてのユーザーのタスクフォルダにアクセスする必要があります。そのために、私はExchanged Web Service(EWS)を使用しています。自分のタスクフォルダと私と共有していたフォルダにアクセスできましたが、すべてにアクセスする必要があります。Exchange Webサービス(EWS):組織内のすべてのユーザータスクフォルダにアクセスする方法

すべてのアカウントに自分のタスクフォルダを共有して、自分がしたいことを達成するようにする必要があります(組織内の全員に自分自身で行うよう求めることはできません。約400人のユーザー)。

共有フォルダのものや、このタスクを実行するスクリプトを避けるための管理者として自分自身に許可する権限がありますか?ここで

は、これまでの私のコードです:

from exchangelib import DELEGATE, IMPERSONATION, Account, Credentials, ServiceAccount, \ 
    EWSDateTime, EWSTimeZone, Configuration, NTLM, CalendarItem, Message, \ 
    Mailbox, Attendee, Q, ExtendedProperty, FileAttachment, ItemAttachment, \ 
    HTMLBody, Build, Version 
import json 

credentials = Credentials(username='[email protected]', password='password') 
config = Configuration(server='outlook.office365.com' , credentials=credentials) 
account = Account(primary_smtp_address='[email protected]', credentials=credentials, config=config, 
    autodiscover=False, access_type=DELEGATE) 


all_tasks = [] 
json_tasks = [] 
for t in account.tasks.all(): 
    all_tasks.append(t) 


for t in all_tasks: 
    data = {"Action" : t.subject, "actualWork": t.actual_work, "Project": t.billing_information, "Status": t.status, "Owner": t.owner, "isComplete": t.is_complete} 
    json_data = json.dumps(data) 
    print(json_data) 

print(account.tasks.total_count) 

答えて

1

あなたはすべての電子メール住所がを収集する必要があり、あなたがあなたと接続しているアカウントからこれらのアカウントに十分な権限を付与するようにExchange管理者を必要としています。権限を許可するには、通常、Exchangeサーバー上のadminコマンドを使用してPowerShellスクリプトを使用します。

関連する問題