カスタムOAuth アプリケーションの作成
カスタムOAuth アプリケーションの作成
CData はOAuth アプリケーション認証情報を製品に組み込んでおり、Azure でデスクトップアプリケーションまたはヘッドレスマシンから接続する際に使用できます。しかし、すべての場合において、Web アプリケーション経由でAzure に接続するには、カスタムOAuth アプリケーションを作成する必要があります。 また、次の目的でカスタムOAuth アプリケーションを作成する場合もあります:- 認証ダイアログのブランディングをコントロールしたいとき
- ユーザー認証後にアプリケーションがユーザーをリダイレクトするためのリダイレクトURI をコントロールしたいとき
- ユーザーからのリクエストに対する許可をカスタマイズしたいとき
以下のセクションでは、Azure portal またはSharepoint アプリのいずれかを使用してカスタムOAuth アプリケーションを作成する方法について説明します。
Azure portal
アプリのOAuth 値であるOAuthClientId、およびOAuthClientSecret を取得してカスタムOAuth アプリケーションを登録するには:
- Azure Portal にログインします。
- 左側のナビゲーションペインでAzure Active Directory ->アプリの登録に移動します。
- 追加をクリックします。
- アプリケーション名を入力します。
- 任意のAzure AD ディレクトリ - マルチテナントを選択します。
- リダイレクトURL をhttp://localhost:33333(本製品 のデフォルト)、または任意の別のポートに設定します。
- CallbackURL を、定義した正確なリプライURL に設定します。
ポータルが新しいアプリケーションを作成します。 - [証明書とシークレット]セクションに移動します。
- アプリケーションのクライアントシークレットを作成し、存続期間を選択します。
- キーを保存すると、キーの値が一度だけ表示されます。すみやかに、OAuthClientSecret を表示された値に設定します。OAuthClientId をアプリケーションId に設定します。
- API のアクセス許可を選択します。
- アクセス許可の追加をクリックします。アプリケーションがユーザーコンテキスト内でのみ接続する場合は、[委任されたアクセス許可]を指定してください。
- [API のアクセス許可]セクションで、アクセス許可の追加をクリックしてSharePoint を選択します。アプリに追加したいアクセス許可を選択してください。リストを閲覧および編集するには、(少なくとも)AllSites.Manage 権限を選択する必要があります。
- 変更を保存します。
Note: 管理者の同意が必要なアクセス許可を使用することを選択した場合は、API のアクセス許可ページで現在のテナントから付与することができます。それ以外の場合は、以下の「OAuth:管理者の同意」を参照してください。
OAuth:管理者の同意
管理者の同意とは、Azure Active Directory テナントの管理者が、組織内の管理者の同意が必要なアプリケーションに権限を付与することを指します。 CData JDBC Driver for Microsoft SharePoint 内の埋め込みアプリケーションには、管理者の同意を必要とするアクセス許可はありません。したがって、この情報はカスタムアプリケーションにのみ適用されます。Azure ポータルで新しいOAuth アプリケーションを作成する場合には、アプリに必要なアクセス許可を指定する必要があります。一部のアクセス許可には、「管理者の同意が必要」と記載されている場合があります。 例えば、すべてのグループのアクセス許可には管理者の同意が必要です。アプリケーションが管理者の同意を必要とする場合、方法は2つあります。
管理者の同意を付与する最も簡単な方法は、管理者がAzure Portal にログインして、[アプリの登録]で作成したアプリケーションに移動します。API のアクセス許可で、同意の付与をクリックして、アプリが作成されたテナントでアクセス権限を付与します。
組織に複数のテナントがある場合、または組織外の他のテナントにアプリのアクセス許可を与える必要がある場合、GetAdminConsentURL ストアドプロシージャを使用してAdmin Authorization URL を生成します。OAuth アプリケーションが正常に認可されると、アクセス権限が付与されたことを示すBoolean 値が返されます。
管理者がOAuth アプリケーションを承認後、認証を続行できます。
SharePoint アプリ
カスタムOAuth アプリケーションを作成し、Sharepoint アプリを使用したOAuth 認証の接続プロパティを取得するには、まずアドインを登録してそのアドインに権限を付与する必要があります。
Add-In を登録
- URL にhttps://{sitename}.SharePoint.com/_layouts/15/appregnew.aspx と入力してRegister Add-In ページに移動します。
- 「アプリ情報」セクションで、クライアントID およびクライアントシークレットのテキストボックスの横にある生成をクリックし、それぞれの値を生成します。
- タイトル、アプリドメイン、リダイレクト先のURI をそれぞれのテキストボックスに入力して設定します。
- 作成をクリックします。
アドインが登録され、Sharepoint アプリに作成された情報が表示されます。
アドインへの権限付与
- SharePoint サイトに移動します。
- ブラウザにURL: https://{sitename}-admin.sharepoint.com/_layouts/15/appinv.aspx を入力します。「アクセス許可」ページにリダイレクトされます。
- アプリID で、先ほど生成したクライアントID を入力し、参照をクリックします。 これにより、他のテキストボックス(タイトル、アプリドメイン、リダイレクトURL)に値が読み込まれます。
- 以下のアクセス許可要求をXML 形式で入力します。
<AppPermissionRequests AllowAppOnlyPolicy="true"> <AppPermissionRequest Scope="http://sharepoint/content/tenant" Right="FullControl"/> </AppPermissionRequests>
- 作成をクリックします。Sharepoint アプリは許可同意ダイアログを表示します。アクセス許可を付与するには、信頼するをクリックします。