2016-06-27 8 views
0

私の組織は現在Office365を使用しており、組織内の複数のアカウントのカレンダーにアクセスする必要があるUniversal Windows Platformアプリケーションを作成しています。私は現在、Office365 Rest APIを使用しており、特定のユーザーのOAuth2.0アクセストークンを取得した後、1つのアカウントのカレンダーデータを正常にクエリできます。OAuth2.0を使用して、組織内の複数のOffice 365 OutlookカレンダーにUWPでアクセスできますか?

複数のリソースと既存のStackOverflowの質問を検索した後、私はそれぞれにサインインすることなく、複数のユーザーアカウントのカレンダーを取得するには運で次のことを試してみましたが、個別アカウント:付きGETリクエストを実行

  • Microsoft Graph APIのグラフAPI
  • this methodなどのバリエーションを使用してユーザーのカレンダーへのナビゲーションパスを使用してGETリクエストを実行します。 (戻り値403アクセス拒否エラー)

また、EWS Managed APIを使用して解決策を見つけましたが、UWPと現在のOffice 365セットアップとの互換性が不明でした。

最後に、私はbuilding daemon or service appsを調べましたが、この方法は本当に不要で、現在のAzureの設定では不可能に思えました。非対称キー暗号が必要です。システム内で設定し、Azure内でアプリ全体を再設定することができます。

何か助けていただければ幸いです。

[EDIT]:すべてのカレンダーは公開されており、OutlookのWebクライアントで表示できます。

答えて

0

今日のバージョンのUWPとOffice365 REST Apiの唯一の解決策だとわかりました。

最初にEWS Managed APIと互換性のある別のアプリケーションを起動し、自分の組織で使用しているMicrosoft Exchangeサーバーにクエリを送信しました。実際の要求と応答を表示するために、httpデバッガであるFiddlerを使用してこのリクエストを追跡しました。この方法で、私は私の交換サーバーの正確なエンドポイントを見つけることができました。

次に、ブラウザのExchangeサービスのURLに移動し、サービスのWSDLファイルを保存し、service referenceとしてUWPソリューションにインポートしました。

最後に、私はHttpclientをセットアップし、Fiddlerで追跡したEWS Managed API呼び出しの成功から作られたリクエストのすべてのプロパティに一致するリクエストを生成しました。

関連する問題