SharePoint Server 2016 で OneDrive API を使用するようアプリを登録する
SharePoint Server 2016 で OneDrive API を使用するには、まずアプリを登録して、クライアント ID を受け取ります。API 呼び出しでは、この ID によってアプリ表します。
登録には、Office 365 サブスクリプションと Azure サブスクリプションを開始していることが必要になります。 まず、Azure Active Directory にアプリを登録してから、SharePoint のアクセス許可を要求します。
1. Office 365 サブスクリプションを入手する
Office 365 開発者向けサイトを作成する必要があります (まだ所有していない場合)。 このサイトは、自分の {tenant}
を表します。 次のいずれかの方法で作成します。
- MSDN サブスクリプション - これは、Visual Studio UltimateとVisual Studio Premiumを持つ MSDN サブスクライバーが使用できます。
- 既存のOffice 365 サブスクリプション - 既存のOffice 365 サブスクリプションを使用できます。これは、Office 365 Midsize Business、Office 365 Enterprise、Office 365 Education、Office 365 Government。
- 無料試用版 - 30 日間の無料試用版から開始するか、Office 365開発者サブスクリプションを購入できます。
- サブスクリプションを購入する - 年間 99.00 ドルの年間開発者サブスクリプションを購入できます。
サインアップ後、結果の ユーザー ID ( userid@yourdomain.onmicrosoft.com形式) を使用して、アカウントを管理するポータル サイトにサインインします。 Office 365開発者サイトは、新しいドメインでプロビジョニングされます。
http://{tenant}.sharepoint.com
.
詳細については、「Office 365 開発者向けサイトの取得」を参照してください。
2. Azure Active Directory テナントをセットアップする
Azure Active Directory (Azure AD) テナントをセットアップして、そのテナントを Office 365 開発者向けサイトに関連付ける必要があります。 Azure AD テナントによって、Microsoft Azure の管理ポータルにアクセスします。このポータルでは、ユーザー、ロール、およびアプリを追加できます。
Office 365 サブスクリプションの作成時に作成した Azure AD テナントを使用すると、アプリを登録して認証できます。 この基本のテナントに Office 365 管理センターからアクセスするには、次に示す手順を使用してサブスクリプションを作成して、Azure テナントを管理します。
- Office 365 テナントにサインインして、Office 365 管理センターに移動します。
- 同じブラウザーで新しいタブを開き、Azure Active Directory に移動して Microsoft Azure にサインインします。 組織のアカウントでサインインするように求めるダイアログが表示されたら、そのようにしてから自分の Office 365 の資格情報を使用してサインインします。
- 新しい Azure サブスクリプションを作成します。
- サブスクリプションを作成したら、[ポータル] を選択します。
これで、Azure テナント内のすべての項目が表示されます。 Office 365 テナントの名前を持つ 1 つのディレクトリが一覧表示されます。
既存の Azure AD テナントがある場合は、次に示す手順を実行すると、Office 365 サブスクリプションにテナントを関連付けできます。
- 既存の Azure 資格情報 (たとえば、user@live.comなどの Microsoft ID) を使用して Microsoft Azure 管理ポータルにサインインし、Active Directory ノードに移動します。
- [Active Directory] ノードを選択し、[ディレクトリ] タブを選択し、画面の下部にある [新規] を選択します。 次のダイアログ ボックスで、[既存のディレクトリを使用する] を選択し、[チェック] ボックスを選択し、右下隅にあるチェックマークを選択します。 これにより、 Azure 管理ポータルに戻ります。
- Office 365 サブスクリプション情報でサインインします。 ディレクトリを Azure で使用するかどうかを指定するように求めるダイアログが表示されます。
- [続行] を選択すると、操作を確認するための画面が表示されます。 ここで、[今すぐサインアウト] を選択します。
- ブラウザーを閉じて、 ポータル をもう一度開きます。 それ以外の場合は、アクセス拒否エラーを受け取ります。
- Azure サブスクリプションにもう一度サインインします (たとえば、Microsoft ID を使用します)。 [Active Directory] ノードに移動すると、[ディレクトリ] の下に Office 365 サブスクリプションが表示されるようになります。
Azure AD テナントのセットアップに関する詳細については、「開発者向けサイトに Azure Active Directory へのアクセスを設定する」を参照してください。
3. Azure Active Directory にアプリを登録する
アプリを認証するには、アプリを Azure AD に登録して、いくつかのアプリ関する詳細を提出する必要があります。 アプリは、Azure 管理ポータルを使用して手動で登録することも、Visual Studio を使用して登録することもできます。
手動でアプリを登録する場合は、「Office 365 API にアクセスできるようにアプリを手動で Azure AD に登録する」を参照してください。
Visual Studio を使用してアプリを登録する場合は、「Visual Studio を使用したアプリの登録と Office 365 API の追加」を参照してください。
アプリの登録を完了すると、Azure AD によってアプリのクライアント ID とクライアント シークレット (Web アプリのみ) が生成されます。 このクライアント ID は、アクセス トークンの取得のために使用する必要があります。
重要: クライアント シークレットの値は、ユーザーのパスワードと同じように取り扱ってください。 シークレットはアプリケーションのキーに相当するものであり、シークレットが利用できるようになっていると、アプリケーションの偽装に使用される可能性があります。
Azure 管理ポータルでアプリを登録する場合は、次の手順を使用して、アプリケーションに関する詳細を構成する必要があります。
- アプリケーションが、モバイル、デスクトップ、または Web アプリケーションかどうかを指定します。
- アプリ エンドポイントを指定します。 Azure は、このエンドポイントを認証時のリダイレクションに使用します (つまり、ログイン プロセス中にアプリが使用するリダイレクト URL になります)。 セキュリティ上の理由から、すべてのリダイレクト URL は同一のルート ドメインに存在している必要があります。ただし、アプリが Web アプリの場合を除きます。 Web アプリの場合は、サインイン URL とアプリ URI を指定します。
- Web アプリの場合は、そのアプリを登録した Azure テナントでのみ使用可能にするか、複数のテナント間で使用可能にするかを指定します。
- Web アプリの場合は、アプリのシークレットとその有効期間を生成します。
- アプリのアクセス許可を使用して、Azure の Office 365 API アプリケーションからアプリが必要とするアクセス許可のレベルを指定します。 OneDrive API またはファイル ピッカーの使用には、少なくとも [ユーザー ファイルの読み取り] が必要になります。 ファイルのアップロード、編集、または共有には、[ユーザー ファイルの読み取りと書き込み] アクセス許可が必要になります。
Azure AD のアプリケーションを追加、削除、または更新するには、「アプリケーションの追加、アプリケーションの更新、アプリケーションの削除」を参照してください。
この時点で、アプリを OneDrive for Business に接続するためのセットアップはすべて完了です。 認証方法の詳細については、「OneDrive for Business の認証とサインイン」を参照してください。