macOS DSN の構成
このセクションでは、macOS でODBC 接続をセットアップしDSN を設定する方法を示します:
macOS の最小バージョン
CData ODBC Driver for Microsoft OneNote 本製品 にはmacOS Sierra (10.12) 以上が必要です。
ドライバーのライセンス
端末で次のコマンドを実行して、本製品 のライセンスを取得します。評価版をアクティベートするには、<key> の入力を省略してください。
cd "/Applications/CData ODBC Driver for Microsoft OneNote/bin"
sudo ./install-license.sh <key>
名前とパスワードを入力するよう求められます。これらは、あなたの名前とマシンのパスワードを指します。
Connecting to Microsoft OneNote
There are two authentication methods available for connecting to Microsoft OneNote data sources:- OAuth 2.0-based methods: Microsoft OneNote provides OAuth 2.0-based authentication via both Azure AD and
Azure Service Principal.
- For Azure AD authentication, set AuthScheme to AzureAD.
- For Azure Service Principal authentication, set AuthScheme to AzureServicePrincipal.
- Managed Service Identity (MSI) authentication. To use this method, set AuthScheme to AzureMSI.
The following subsections describe each authentication method in detail.
Azure AD
Azure AD は、Microsoft のマルチテナント、クラウドベースのディレクトリおよびID 管理サービスです。これはユーザーベースの認証で、AuthScheme をAzureAD に設定する必要があります。Web アプリケーションを介したAzure AD への認証には、必ずカスタムOAuth アプリケーションの作成が必要です。詳細はカスタム認証アプリの作成 を参照してください。
デスクトップアプリケーション
CData は、デスクトップアプリケーションからAzure AD への接続を簡略化する埋め込みOAuth アプリケーションを提供します。カスタムOAuth アプリケーションを使用して、デスクトップアプリケーションで認証することもできます。(詳しくは、カスタム認証アプリの作成 を参照してください。) Azure AD 経由で認証するには、以下のパラメータを設定します。
- AuthScheme:AzureAD。
-
カスタムアプリケーションのみ:
- OAuthClientId:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントId。
- OAuthClientSecret:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントシークレット。
- CallbackURL:カスタムOAuth アプリケーションの登録時に定義したリダイレクトURI。
接続すると、本製品 はデフォルトブラウザでMicrosoft OneNote のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。
本製品 はOAuth プロセスを完了し、Microsoft OneNote からアクセストークンを取得してそれを使ってデータをリクエストします。 OAuth 値はOAuthSettingsLocation で指定されたパスに保存されます。これらの値は接続間で永続化されます。
アクセストークンの期限が切れたときは、本製品 は自動でアクセストークンをリフレッシュします。
ヘッドレスマシン
ヘッドレスマシンのユーザーアカウントでドライバーを設定するには、インターネットブラウザに対応した別の端末で認証する必要があります。
以下のいずれかの方法で行います。
- 後述のオプション1:Verifier code を取得および交換に従い、OAuthVerifier 値を取得します。
- 後述のオプション2:OAuth 設定を転送で説明するように、本製品 を別のマシンにインストールします。通常のブラウザベースのフローで認証した後、OAuth 認証値を転送します。
オプション1:Verifier code を取得および交換
-
認可エンドポイントを見つけます。
カスタムアプリケーションのみ: 次のプロパティを設定して、Authorization URL を作成します。
- OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
- OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。
カスタムアプリケーションおよび埋め込みアプリケーション:GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。
- ストアドプロシージャによって返されたURL をブラウザで開きます。
- ログインして、本製品 にアクセス許可を与えます。verifier code を含むコールバックURL にリダイレクトされます。
- verifier code の値を保存します。この値は後でOAuthVerifier 接続プロパティを設定する際に使用します。
-
OAuth verifier code をOAuth リフレッシュトークンおよびアクセストークンと交換します。
ヘッドレスマシンでは、次のプロパティを設定します。
- AuthScheme:AzureAD。
- OAuthVerifier:verifier code。
- OAuthSettingsLocation:接続間で維持されるOAuth トークンの値を保存するファイルの場所。
-
カスタムアプリケーションのみ:
- OAuthClientId:カスタムOAuth アプリケーション設定のクライアントId。
- OAuthClientSecret:カスタムOAuth アプリケーション設定のクライアントシークレット。
-
OAuth 設定ファイルが生成されたら、以下のように接続プロパティをリセットします。
- OAuthSettingsLocation:暗号化されたOAuth 認証値が保存される場所。アクセストークンの自動リフレッシュを有効にするために、この場所が本製品 に読み書きのアクセス許可を与えることを確認してください。
-
カスタムアプリケーションのみ:
- OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
- OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。
オプション2:OAuth 設定を転送
ヘッドレスマシン経由の接続に先立ち、インターネットブラウザに対応したデバイスでドライバーとの接続を作成し、インストールする必要があります。上述の「デスクトップアプリケーション」の説明に従って、接続プロパティを設定します。
「デスクトップアプリケーション」の手順を完了すると、生成された認証値は、OAuthSettingsLocation で指定された場所に暗号化されて書き込まれます。デフォルトのファイル名はOAuthSettings.txt です。
接続が正常にテストされたら、OAuth 設定ファイルをヘッドレスマシンにコピーします。
ヘッドレスマシンでは、次のプロパティを設定します。
- AuthScheme:AzureAD。
- OAuthSettingsLocation:OAuth 設定ファイルの場所。アクセストークンの自動リフレッシュを有効にするために、この場所が本製品 に読み書きのアクセス許可を与えることを確認してください。
-
カスタムアプリケーションのみ:
- OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
- OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。
Azure サービスプリンシパル
Azure サービスプリンシパルは、ロールに基づいたアプリケーションベースの認証です。これは、認証がユーザーごとではなく、アプリケーションごとに行われることを意味します。 アプリケーションで実行されるすべてのタスクは、デフォルトユーザーコンテキストなしで、割り当てられたロールに基づいて実行されます。 リソースへのアプリケーションのアクセスは、割り当てられたロールの権限によって制御されます。
Azure サービスプリンシパル認証の設定方法については、サービスプリンシパルによるAzure AD アプリケーションの作成 を参照してください。
Managed Service Identity (MSI)
Azure VM 上でMicrosoft OneNote を実行しており、MSI を利用して接続したい場合は、AuthScheme をAzureMSI に設定します。
User-Managed Identities
マネージドID のトークンを取得するには、OAuthClientId プロパティを使用してマネージドID の"client_id" を指定します。VM に複数のユーザーが割り当てられたマネージドID がある場合は、OAuthClientId も指定する必要があります。
ドライバーのアンインストール
ドライバーをアンインストールする最も簡単な方法は、ターミナルを開いて、インストールディレクトリにあるuninstall.sh スクリプトを実行します。次に例を示します。
cd "/Applications/CData ODBC Driver for Microsoft OneNote" sudo ./uninstall.sh
Note:このスクリプトはインストールディレクトリから実行される必要があります。