1

このリンクhttps://msdn.microsoft.com/en-us/office/office365/howto/building-service-apps-in-office-365に従って、デーモンまたはサーバー アプリケーションから Web API 認証方法をセットアップしました。 Office365 でアクセス トークンを取得します。

サンプル アクセス トークン リクエストを以下に示します。

POST https://login.microsoftonline.com/{tenant-id}/oauth2/token
grant_type : client_credentials
client_id : {clientId}
client_secret : {clientSecret}
resource : https://{tenant}.sharepoint.com

例えば:

https://login.microsoftonline.com/cae788bd-7a55-4fb5-9d1f-3aa5365e14a/oauth2/token
grant_type : client_credentials
client_id : 1dd0a211-06f1-4f6a-a232-b3a8dcab829b
client_secret : ZWtkWm9M5Ucx5j29UoXPy7GKG+Hu0eNdVFYO+lH761w=
resource : https://{tenant}.sharepoint.com

上記の API リクエストからアクセス トークンを取得しています。フォルダを作成しようとしたり、上記のアクセス トークンから他の API にアクセスしようとすると、「サポートされていないアプリのみのトークン」というエラーが表示されます。このエラーを取得するために、この Web サービスを呼び出そうとしました。

PUT https://{tenant}.sharepoint.com/_api/v1.0/Files/{parent-id}/children/{folder-name}
Authorization : BearerBearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik1uQ19WWmNBVGZNNXBPWWlKSE
Content-Type : application/json
Accept : application/json

しかし、以前は Office365 で同じデーモンまたはサーバー アプリケーションから Web API 認証方法を使用してアクセス トークンを取得しており、正常に機能していました。

Accesstoken を使用して Office 365 API にアクセスしましたが、「サポートされていないアプリのみのトークン」というエラーが表示されます。

4

1 に答える 1

2

マノジ

メール API の WPF アプリケーションでアプリのみが動作するようになりました。証明書をセットアップしましたか? 教えていただいたブログによると

この種のアプリは幅広いアクセスを享受しているため、アプリがアクセス トークンを正常に取得するには追加の要件があります。クライアント ID とクライアント シークレットを使用する代わりに、アプリは公開キーと秘密キーのペアを含む X.509 証明書を使用する必要があります。

設定方法については、次のリンクを参照してください: Azure AD を介して SharePoint Online でアプリのみの操作を実行する

于 2015-08-15T21:15:59.853 に答える