Linux DSN の構成
このセクションでは、以下のいくつかのLinux ディストリビューションでODBC 接続をセットアップしDSN を設定する方法を説明します:Ubuntu のようなDebian ベースのシステム、Red Hat Enterprise Linux (RHEL)、CentOS、およびFedora のようなRed Hat Linux プラットフォーム。
Linux の最小バージョン
Red Hat ベースおよびDebian ベースシステムでサポートされる最小バージョンは以下のとおりです。
| OS | Min. Version |
| Ubuntu | 11.04 |
| Debian | 7 |
| RHEL | 6.9 |
| CentOS | 6.9 |
| Fedora | 13 |
| SUSE | 12.1 |
ドライバー依存関係のインストール
必要な依存関係をインストールするには、次のコマンドをルートとしてまたはsudo で実行します。
- Debian/Ubuntu:
apt-get install libc6 libstdc++6 zlib1g libgcc1
- RHEL/CentOS/Fedora:
yum install glibc libstdc++ zlib libgcc
本製品 が必要とする対応ライブラリは以下のとおりです。
| Debian/Ubuntu Package | RHEL/CentOS/Fedora Package | File |
| libc6 | glibc | linux-vdso.1 |
| libc6 | glibc | libm.so.6 |
| libc6 | glibc | librt.so.1 |
| libc6 | glibc | libdl.so.2 |
| libc6 | glibc | libpthread.so.0 |
| libc6 | glibc | libc.so.6 |
| libc6 | glibc | ld-linux-x86-64.so.2 |
| libstdc++6 | libstdc++ | libstdc++.so.6 |
| zlib1g | zlib | libz.so.1 |
| libgcc1 | libgcc | libgcc_s.so.1 |
ドライバーのインストール
標準のパッケージ管理システムを使用してドライバーをインストールできます。
Ubuntu のようなDebian ベースのシステムでは、次のコマンドをroot またはsudo で実行します。
dpkg -i /path/to/driver/setup/SharePointODBCDriverforUnix.deb
RPM パッケージ形式をサポートするシステムでは、次のコマンドをroot またはsudo で実行します。
rpm -ivh /path/to/driver/SharePointODBCDriverforUnix.rpm
ドライバーのライセンス
次のコマンドを実行して本製品 のライセンスを取得します。評価版をアクティベートするには、<key> の入力を省略してください。
cd /opt/cdata/cdata-odbc-driver-for-sharepoint/bin/
sudo ./install-license.sh <key>
ドライバーマネージャー経由の接続
ドライバーマネージャーはドライバーをロードし、アプリケーションからドライバーに関数呼び出しを渡します。本製品 をドライバーマネージャーに登録して、ドライバーマネージャーのコンフィギュレーションファイルにDSN を定義する必要があります。
本製品 のインストールでは、本製品 をunixODBC ドライバーマネージャーに登録し、システムDSN を作成します。UnixODBC ドライバーマネージャーは、Python やその他多くのアプリケーションから使用できます。アプリケーションに別のドライバーマネージャーが組み込まれている可能性があります。
DSN の作成
unixODBC をインストールしてDSN を設定するには、unixODBC の使用 を参照してください。OBIEE、Informatica、およびSAS に接続するDSN を作成するには、DataDirect ドライバーマネージャーの使用 を参照してください。
Microsoft SharePoint への接続
Microsoft SharePoint は、グローバルなMicrosoft SharePoint サイト内のすべてのリストとドキュメント、および個々のサイトで機能します。URL 接続プロパティをサイトコレクションURL に設定すると、すべてのリストおよびドキュメントで動作し、特定のサイトURL に設定すると、そのサイト内のリストおよびドキュメントでのみ動作します。| URL | サンプルURL |
| サイトコレクション | https://teams.contoso.com |
| サイト | https://teams.contoso.com/teamA or https://teamA.contoso.com |
URL の入力に加え、次の接続プロパティセットのいずれかを使ってSharePoint に認証します。次のように、デフォルト値を使用するとほとんどの環境で簡単に接続できます。 SharePoint は、オンライン(クラウドベース)およびオンプレミスアーキテクチャをサポートします。各アーキテクチャは、それぞれ異なる認証スキームをサポートします。
オンライン認証およびオンプレミス認証について、以下で順に説明します。
SharePoint Online への認証
SharePointEdition を"SharePoint Online" に設定し、User およびPassword をSharePoint へのログオンに使用するクレデンシャルに設定します。例えば、Microsoft Online Services アカウントへのクレデンシャルです。
以下の認証スキームがサポートされています。
- AzureAD
- シングルサインオン(SSO)スキーム
- MSI
- OAuthJWT
- ADFS
- OneLogin
- Okta
- PingFederate
もしユーザーアカウントのドメインがID プロバイダーに設定されたドメインと異なる場合には、SSODomain を後者に設定します。このプロパティは、すべてのSSO で必要になる可能性があります。
AzureAD
Azure Active Directory(AzureAD)は、OAuth を使用して認証する接続タイプです。OAuth では認証するユーザーにインターネットブラウザでMicrosoft SharePoint との通信を要求します。下記で説明するとおり、本ドライバーはさまざまな方法でこれをサポートします。AuthScheme をAzureAD に設定します。以下で説明するAzure AD フローは、すでに設定済みであることを前提として書かれています。Azure テナントの新しいAzureAD アプリケーションを承認する際、組織による管理者の同意が必要になる場合があります。すべてのAzureAD フローにおいて、AzureAD アプリケーションの初期インストールと使用の際は、管理者がそのAzure テナントのアプリケーションを承認する必要があります。
デスクトップアプリケーション
CData は、OAuth デスクトップ認証を簡略化する埋め込みOAuth アプリケーションを提供します。代わりに、カスタムAzureAD アプリケーションを作成することも可能です。カスタムアプリケーションの作成およびその理由については、カスタムAzureAD アプリの作成 を参照してください。
認証に関する2つの方法の違いは、カスタムAzureAD アプリケーションを使用する場合に、2つの接続プロパティを追加で設定する必要があることだけです。
次の接続プロパティを設定して、接続してください。
- OAuthClientId:(カスタムアプリケーションのみ)アプリケーション設定のクライアントId に設定。
- OAuthClientSecret:(カスタムアプリケーションのみ)アプリケーション設定のクライアントシークレットに設定。
- CallbackURL:アプリケーション設定のリダイレクトURL に設定。
接続すると、本製品 はデフォルトブラウザでOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。
ヘッドレスマシン
ヘッドレスマシンのユーザーアカウントでOAuth を使用するようにドライバーを設定するには、インターネットブラウザに対応した別の端末で認証する必要があります。
- 以下の2つのオプションから選択します。
- オプション1:後述の「Verifier code を取得および交換」に従い、OAuthVerifier 値を取得します。
- オプション2:別のマシンに本製品 をインストールし、後述の「OAuth 設定を転送」の説明に従い、通常のブラウザベースのフローで認証後にOAuth 認証値を転送します。
- その後、ヘッドレスマシンからアクセストークンを自動的にリフレッシュするように本製品 を設定します。
オプション1:Verifier code を取得および交換
Verifier code を取得するには、OAuth Authorization URL で認証する必要があります。
インターネットブラウザに対応したマシンから認証してOAuthVerifier 接続プロパティを取得する方法は次のとおりです。
- 以下のオプションから選択します。
- 埋め込みOAuth アプリケーションを使用する場合は、Microsoft SharePoint OAuth endpoint をクリックし、ブラウザでエンドポイントを開きます。
- カスタムOAuth アプリケーションを使用するには、以下のプロパティを設定し、認証URL を作成します。
- InitiateOAuth:OFF に設定。
- OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId に設定。
- OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレットに設定。
- ログインして、本製品 にアクセス許可を与えます。すると、verifier code を含むコールバックURL にリダイレクトされます。
- verifier code の値を保存します。後ほどこれをOAuthVerifier 接続プロパティに設定します。
ヘッドレスマシンでは、次の接続プロパティを設定してOAuth 認証値を取得します。
- InitiateOAuth:REFRESH に設定。
- OAuthVerifier:verifier code に設定。
- OAuthClientId:(カスタムアプリのみ)カスタムOAuth アプリケーション設定のクライアントId に設定。
- OAuthClientSecret:(カスタムアプリのみ)カスタムOAuth アプリケーション設定のクライアントシークレットに設定。
- OAuthSettingsLocation:ドライバーがOAuth トークン値を保存するファイルのパスを設定。これは接続間で維持されます。
OAuth 設定ファイルが生成されたら、以下のように接続プロパティをリセットする必要があります。
- InitiateOAuth:REFRESH に設定。
- OAuthClientId:(カスタムアプリのみ)アプリケーションの登録時に割り当てられたクライアントId に設定。
- OAuthClientSecret:(カスタムアプリのみ)アプリケーションの登録時に割り当てられたクライアントシークレットに設定。
- OAuthSettingsLocation:暗号化されたOAuth 認証値を含むファイルに設定。アクセストークンの自動リフレッシュを有効にするために、このファイルが本製品 に読み書きのアクセス許可を付与することを確認してください。
オプション2:OAuth 設定を転送
ヘッドレスマシンでの接続に先立ち、インターネットブラウザに対応したデバイスでドライバとの接続を作成し、インストールする必要があります。上述の「デスクトップアプリケーション」の説明に従って、接続プロパティを設定します。
「デスクトップアプリケーション」の手順が完了すると、生成された認証値は、OAuthSettingsLocation で指定されたパスに暗号化されて書き込まれます。デフォルトのファイル名はOAuthSettings.txt です。
接続が正常にテストされたら、OAuth 設定ファイルをヘッドレスマシンにコピーします。
ヘッドレスマシンで、次の接続プロパティを設定し、データに接続します。
- InitiateOAuth:REFRESH に設定。
- OAuthClientId:(カスタムアプリのみ)アプリケーションの登録時に割り当てられたクライアントId に設定。
- OAuthClientSecret:(カスタムアプリのみ)アプリケーションの登録時に割り当てられたクライアントシークレットに設定。
- OAuthSettingsLocation:OAuth 設定ファイルのパスに設定。アクセストークンの自動リフレッシュを有効にするために、このファイルが本製品 に読み書きのアクセス許可を与えることを確認してください。
Azure パスワード
Azure 資格情報を使用して直接接続するには、次の接続プロパティを指定します。
- AuthScheme:AzurePassword に設定。
- User:Azure への接続に使用するユーザーアカウントに設定。
- Password:Azure への接続に使用するパスワードに設定。
- AzureTenant:Azure 上のMicrosoft SharePoint への認証に使用するOAuth アプリの概要ページにある、Directory (tenant) ID に設定。
OAuth:管理者の同意
管理者の同意とは、Azure Active Directory テナントの管理者が、組織内の管理者の同意が必要なアプリケーションに権限を付与することを指します。 CData ODBC Driver for Microsoft SharePoint 内の埋め込みアプリケーションには、管理者の同意を必要とするアクセス許可はありません。したがって、この情報はカスタムアプリケーションにのみ適用されます。管理者の同意の付与
Azure ポータルで新しいOAuth アプリケーションを作成する場合には、アプリに必要なアクセス許可を指定する必要があります。一部のアクセス許可には、「管理者の同意が必要」と記載されている場合があります。 例えば、すべてのグループのアクセス許可には管理者の同意が必要です。アプリケーションが管理者の同意を必要とする場合、方法は2つあります。
管理者の同意を付与する最も簡単な方法は、管理者がAzure Portal にログインして、[アプリの登録]で作成したアプリケーションに移動します。API のアクセス許可で、同意の付与をクリックして、アプリが作成されたテナントでアクセス権限を付与します。
組織に複数のテナントがある場合、または組織外の他のテナントにアプリのアクセス許可を与える必要がある場合、GetAdminConsentURL ストアドプロシージャを使用してAdmin Authorization URL を生成します。OAuth アプリケーションが正常に認可されると、アクセス権限が付与されたことを示すBoolean 値が返されます。
管理者がOAuth アプリケーションを承認後、認証を続行できます。
カスタムアプリを使用した資格情報
次の手順に従って、カスタムOAuth アプリを作成し、SharePoint アプリを使用してOAuth 認証用の接続プロパティを取得します。
Add-In を登録
- URL にhttps://{sitename}.SharePoint.com/_layouts/15/appregnew.aspx と入力してRegister Add-In ページに移動します。
- 「アプリ情報」セクションで、クライアントID およびクライアントシークレットのテキストボックスの横にある生成をクリックし、それぞれの値を生成します。
- タイトル、アプリドメイン、リダイレクト先のURI をそれぞれのテキストボックスに入力し、設定します。
- 作成をクリックするとアドインが登録され、作成された情報を含む成功メッセージを返します。
- SharePoint サイトに移動します。
- ブラウザにURL:https://{sitename}.sharepoint.com/_layouts/15/appinv.aspx を入力します。「アクセス許可」ページにリダイレクトされます。
- 先ほど生成したクライアントID をアプリID に入力し、[参照]ボタンをクリックします。これにより、タイトル、アプリドメイン、リダイレクト先のURI 以外のテキストボックスに値が読み込まれます。
- ここで、以下のアクセス許可要求をXML 形式で入力します。
<AppPermissionRequests AllowAppOnlyPolicy="true"> <AppPermissionRequest Scope="http://sharepoint/content/tenant" Right="FullControl"/> </AppPermissionRequests> - [作成]をクリックすると、アクセス許可同意のダイアログが表示されます。[信頼する]をクリックして、アクセス許可を付与します。
ADFS
AuthScheme をADFS に設定します。次の接続プロパティを設定する必要があります。
- User:ADFS ユーザーに設定。
- Password:ユーザーのADFS パスワードに設定。
- SSODomain(オプション):ADFS のID プロバイダーで設定されたドメイン。
AuthScheme=ADFS;User=ADFSUserName;Password=ADFSPassword;URL='http://sharepointserver/mysite';
Okta
AuthScheme をOkta に設定します。Okta への接続には、次の接続プロパティを使用します。
- User:Okta ユーザーに設定。
- Password:ユーザーのOkta パスワードに設定。
- SSODomain(オプション):Okta のID プロバイダーで設定されたドメイン。
次は接続文字列の例です。
AuthScheme=Okta;User=oktaUserName;Password=oktaPassword;URL='http://sharepointserver/mysite';
OneLogin
AuthScheme をOneLogin に設定します。OneLogin への接続には、次の接続プロパティを使用します。
- User:OneLogin ユーザーに設定。
- Password:ユーザーのOneLogin パスワードに設定。
- SSODomain(オプション):OneLogin のID プロバイダーで設定されたドメイン。
次は接続文字列の例です。
AuthScheme=OneLogin;User=OneLoginUserName;Password=OneLoginPassword;URL='http://sharepointserver/mysite';
PingFederate
AuthScheme をPingFederate に設定します。PingFederate への接続には、次の接続プロパティを使用します。
- User:PingFederate ユーザーに設定。
- Password:ユーザーのPingFederate パスワードに設定。
- SSODomain(オプション):PingFederate のID プロバイダーで設定されたドメイン。
次は接続文字列の例です。
AuthScheme=PingFederate;User=PingFederateUserName;Password=PingFederatePassword;URL='http://sharepointserver/mysite';
SharePointOAuth
AuthScheme をSharePointOAuth に設定します。SharePointOAuth への接続には、次の接続プロパティを使用します。
- InitiateOAuth:GETANDREFRESH に設定。
- User:SharePointOAuth ユーザーに設定。
- Password:ユーザーのSharePointOAuth パスワードに設定。
次は接続文字列の例です。
Schema=REST;InitiateOAuth=GETANDREFRESH;AuthScheme=SharepointOAuth;URL=https://rssbuscrm.sharepoint.com;User=SharePointUserName;Password=SharePointPassword;SharePointEdition='SharepointOnline';
OAuthJWT 証明書
AuthScheme をOAuthJWT に設定します。Microsoft SharePoint への接続には、次の接続プロパティを使用します。
- OAuthGrantType:CLIENT に設定。
- AzureTenant:接続するテナントに設定。
- OAuthJWTCert:JWT 証明書ストアに設定。
- OAuthJWTIssuer:OAuth クライアントId に設定。
MSI
Azure VM 上でMicrosoft SharePoint を実行している場合は、Managed Service Identity(MSI)の資格情報を利用して接続が可能です。
- AuthScheme:AzureMSI に設定。
MSI 資格情報が認証用に自動的に取得されます。
SharePoint On-Premises への認証
次の認証タイプを使用するには、SharePointEdition を"SharePoint On-Premises" に設定します。
Windows(NTLM)
これは最も一般的な認証タイプです。そのため、本製品 はNTLM をデフォルトとして使用するように事前設定されています。Windows のUser およびPassword を設定して接続します。
Kerberos
AuthScheme をNEGOTIATE に設定します。Kerberos での接続には、次の接続プロパティを使用します。
- KerberosKDC:Kerberos KDC マシンのホスト名またはIP アドレスに設定。
- KerberosSPN:Microsoft SharePoint のKerberos プリンシパルのサービスとホストに設定。これは、principal value(例:MyService/[email protected])の'@' 記号の前の値(例:MyService/MyHost)です。
Kerberos で認証する方法についての詳細は、Kerberos の使用 を参照してください。
ADFS
AuthScheme をADFS に設定します。次の接続プロパティを設定します。
- User:ADFS ユーザーに設定。
- Password:ユーザーのADFS パスワードに設定。
- SSOLoginURL:ADFS サーバーのWS-Trust エンドポイントに設定。
AuthScheme=ADFS;User=ADFSUserName;Password=ADFSPassword;SSOLoginURL='https://<authority>/adfs/services/trust/2005/usernamemixed';SSO Properties ='RelyingParty=urn:sharepoint:sp2016;';
匿名アクセス
AuthScheme をURL と一緒にNONE に設定します。
MSI
Azure VM 上でMicrosoft SharePoint を実行している場合は、Managed Service Identity(MSI)の資格情報を利用して接続が可能です。
- AuthScheme:AzureMSI に設定。
MSI 資格情報が認証用に自動的に取得されます。
OAuth 値のリフレッシュ
本製品 は、ブラウザベースのOAuth 認証交換中に取得されたテンポラリーOAuth アクセストークンをリフレッシュできます。デフォルトでは、本製品 は暗号化されたトークンを、DSN に対応するodbc.ini ファイルに保存します。System DSN の場合、このodbc.ini ファイルへのアクセスを制限できます。
トークンの自動交換を有効にするには、本製品 にシステムodbc.ini への書き込みアクセス権を与えます。
OAuth 認証の依存関係のインストール
OAuth 認証標準は、認証するユーザーにWeb ブラウザを使用したMicrosoft SharePoint との通信を要求します。最初のOAuth インタラクションがドライバーがインストールされている同じマシン上で行われる場合(例えばデスクトップアプリケーションの場合)、本製品 はデフォルトブラウザを立ち上げるxdg-open プログラムにアクセスする必要があります。
この依存関係を満たすには、パッケージマネージャーに対応するパッケージをインストールします。
| Debian/Ubuntu Package | RHEL/CentOS/Fedora Package | File |
| xdg-utils | xdg-utils | xdg-open |
ドライバーエンコーディングの設定
ODBC ドライバーは、ODBC ドライバーマネージャーで使用するエンコーディングを指定する必要があります。デフォルトでは、Unix 用のCData ODBC ドライバーはunixODBC と互換性のあるUTF-16 を使用するように設定されていますが、他のドライバーマネージャーでは代替エンコーディングが必要な場合があります。
また、ANSI ODBC API を使用するアプリケーションからODBC ドライバーを使用している場合は、ANSI コードページを設定する必要があります。例えば、ANSI アプリケーションに日本語の文字をインポートするには、設定ファイル'/opt/cdata/cdata-odbc-driver-for-sharepoint/lib/cdata.odbc.sharepoint.ini' でコードページを指定できます。
[Driver]
AnsiCodePage = 932