接続の確立
JDBC データソースの作成
Java アプリケーションから接続するJDBC データソースを作成できます。CData JDBC Driver for DocuSign に基づくJDBC データソースの作成は、3つの基本ステップで構成されます。
- ドライバーのJAR ファイルをクラスパスに追加します。JAR ファイルはインストールディレクトリの[lib]サブフォルダ内にあります。.lic ファイルはJAR ファイルと同じフォルダ内に配置される必要があることに注意してください。
- ドライバークラスを入力します。次に例を示します。
cdata.jdbc.docusign.DocuSignDriver
- JDBC URL を入力します。次に例を示します。
jdbc:docusign:InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333 or jdbc:cdata:docusign:InitiateOAuth=GETANDREFRESH;OAuthClientId=MyClientId;OAuthClientSecret=MyClientSecret;CallbackURL=http://localhost:33333
上記の2つ目の形式は、同じURL 形式を使用しているドライバー間でアプリケーションに競合がある場合は、CData ドライバーを使用していることを確認するために常に使用できます。URL は "jdbc:docusign:" または"jdbc:cdata:docusign:" のいずれかから始まり、任意の接続プロパティの名前と値のペアをセミコロン区切りで入力します。
DocuSign への接続
UseSandboxUseSandbox は現在のユーザーアカウントがサンドボックスかそうでないかを示します。デフォルトはfalse です。サンドボックスアカウントを使用する場合はtrue に設定します。以下のOAuth フローはすべて、UseSandbox が事前に設定済みであることを前提として書かれています。
AccountId
AccountId はオプションの接続プロパティです。認証が成功すると自動的に設定されます。
または、複数のAccount Id にアクセスできる場合は、接続文字列で手動で設定できます。アカウントId を取得するには、UserInfo ビューをクエリします。
DocuSign への認証
DocuSign はOAuth 認証標準を利用しています。OAuth を使って認証するには、カスタムアプリを作成してOAuthClientId、OAuthClientSecret、およびCallbackURL 接続プロパティを取得する必要があります。本製品 は、OAuth JWT 認証もサポートしています。カスタムアプリケーションの作成について詳しくは、カスタムOAuth アプリの作成 を参照してください。
OAuth
AuthScheme は、すべてのユーザーアカウントフローでOAuth に設定する必要があります。
デスクトップアプリケーション
下記の手順に従って、カスタムOAuth アプリの資格情報を使用して認証します。カスタムOAuth アプリの作成 を参照してください。OAuth アクセストークンの取得およびリフレッシュ
次を設定して、接続してください。
- OAuthClientId:アプリの登録時に割り当てられたIntegrator Key に設定。
- OAuthClientSecret:アプリの登録時に割り当てられたSecret Key に設定。
- CallbackURL:アプリの登録時に定義されたリダイレクトURI に設定。
- InitiateOAuth:GETANDREFRESH に設定。InitiateOAuth を使うと、OAuth 交換の繰り返しや、手動でのOAuthAccessToken 設定を避けられます。
- コールバックURL からアクセストークンを取得し、リクエストを認証します。
- アクセストークンの期限が切れたときにはリフレッシュしてください。
- OAuthSettingsLocation にOAuth 値を保存し、接続間で永続化されるようにします。
Web アプリケーション
Web アプリケーション経由で接続する場合は、DocuSign にカスタムOAuth アプリを登録する必要があります。カスタムOAuth アプリの作成 を参照してください。それから本製品 を使用してOAuth トークンの値を取得および管理します。 OAuth アクセストークンの取得
次の接続プロパティを設定し、OAuthAccessToken を取得します。
- OAuthClientId:アプリの登録時に割り当てられたIntegrator Key に設定。
- OAuthClientSecret:アプリの登録時に割り当てられたSecret Key に設定。
続いてストアドプロシージャを呼び出し、OAuth 交換を完了します。
-
GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。AuthMode インプットをWEB に、CallbackURL インプットをアプリケーション設定で指定したリダイレクトURI に設定します。
ストアドプロシージャがOAuth エンドポイントのURL を返します。
- URL を開き、ログインして、アプリケーションを認可します。コールバックURL にリダイレクトされます。
- GetOAuthAccessToken ストアドプロシージャを呼び出します。AuthMode インプットをWEB に設定します。Verifier インプットを、コールバックURL のクエリ文字列の"code" パラメータに設定します。
OAuth アクセストークンのリフレッシュ
InitiateOAuth をREFRESH に設定してOAuth アクセストークンの期限が切れたときに自動的にリフレッシュするか、RefreshOAuthAccessToken ストアドプロシージャを呼び出してトークンを手動でリフレッシュできます。
自動リフレッシュ
InitiateOAuth でトークンをリフレッシュするには、最初のデータ接続で次のように設定します。
- OAuthAccessToken:GetOAuthAccessToken によって返されたアクセストークンに設定。
- InitiateOAuth:REFRESH に設定。InitiateOAuth を使うと、OAuth 交換の繰り返しや、手動でのOAuthAccessToken 設定を避けられます。
- OAuthSettingsLocation:本製品 がOAuth 値を保存する場所に設定。これらの値は接続間で永続化されます。
- OAuthClientId:アプリの登録時に割り当てられたIntegrator Key に設定。
- OAuthClientSecret:アプリの登録時に割り当てられたSecret Key に設定。
- OAuthRefreshToken:これをGetOAuthAccessToken によって返されたリフレッシュトークンに設定します。
その後のデータ接続では、次を設定します。
- InitiateOAuth
- OAuthSettingsLocation
手動でリフレッシュ
RefreshOAuthAccessToken ストアドプロシージャを使用してOAuthAccessToken を手動でリフレッシュできます。GetOAuthAccessToken によって返されたExpiresIn パラメータ値が経過した後にストアドプロシージャを呼び出します。次の接続プロパティを設定する必要があります。
- OAuthClientId:アプリ設定のクライアントId に設定。
- OAuthClientSecret:アプリ設定のクライアントシークレットに設定。
次に、OAuthRefreshToken にGetOAuthAccessToken によって返されたOAuthRefreshToken を指定してRefreshOAuthAccessToken を呼び出します。
ヘッドレスマシン
ヘッドレスマシンのユーザーアカウントでOAuth を使用するようにドライバーを設定するには、インターネットブラウザに対応した別の端末で認証する必要があります。
- 以下の2つのオプションから選択します。
- オプション1:後述の「Verifier code を取得および交換」に従い、OAuthVerifier 値を取得します。
- オプション2:別のマシンに本製品 をインストールし、後述の「OAuth 設定を転送」の説明に従い、通常のブラウザベースのフローで認証後にOAuth 認証値を転送します。
- その後、ヘッドレスマシンからアクセストークンを自動的にリフレッシュするように本製品 を設定します。
オプション1:Verifier code を取得および交換
Verifier code を取得するには、OAuth Authorization URL で認証する必要があります。
インターネットブラウザに対応したマシンから認証してOAuthVerifier 接続プロパティを取得する方法は次のとおりです。
- 以下のオプションから選択します。
- 埋め込みOAuth アプリケーションを使用する場合は、DocuSign 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 設定ファイルの場所に設定。アクセストークンの自動リフレッシュを有効にするために、この場所が本製品 に読み書きのアクセス許可を与えることを確認してください。
OAuth JWT
AuthScheme をOAuthJWT に設定します。
Obtaining a User ID
Retrieve your User ID by navigating, in the DocuSign UI, to Settings > Apps and Keys > My Account Information > User ID.
Obtaining an Integration Key
Follow the procedure below to obtain an integration key:
- Log in to a DocuSign developer account.
- Navigate to My Apps and Keys.
- You will see a dialog box to enter your application's name. Give your application a short, but descriptive name.
- Click ADD to add your application. Your application is automatically assigned an integration key (GUID) value that cannot be changed. Save this value.
Application Consent
In order to connect, you must give consent to the application. DocuSign offers three different software patterns for granting consent to an integration key. Grant consent to your application using one of the following methods.
Method 1: Administrative Consent
This is the best option for customer-oriented developers, because it requires nothing from your users.
Note: This pattern can't be used by ISVs.
This method of obtaining consent has the following prerequisites:
- Your account must include the Access Management with SSO feature, though it is not required that you install SSO.
- If your developer demo account (demo.docusign.net) does not include this feature, send an email to [email protected] and request that the feature be added to your account. Remember to include your developer demo account ID.
- You must claim your email DNS domain via the DocuSign administration tool. A domain can be claimed both by the DocuSign developer demo system (for testing and development), and by your production DocuSign account.
- Your users’ email domains must match the claimed email domain.
- Your integration key’s management account must be one of the accounts in the DocuSign organization.
If you meet these requirements, grant consent as follows:
- In DocuSign Admin, open your organization home page.
- In the navigation pane on the left side of the page, select Connected Apps.
- Click Authorize Application and choose an application from the drop-down menu.
- In the Add New Application dialog, specify the permissions you want to grant to your application.
- Click ADD.
Method 2: Individual Consent
This option has no prerequisites and can be used by customer-oriented developers and the customers of ISVs. Each user must perform the following steps.
To obtain individual consent:
- Run the GetConsentURL stored procedure. The procedure returns a URL.
- Open the returned URL in your browser. A permissions page will display.
- Click Accept to grant consent.
Method 3: Administrative Consent for Third-party (ISV) Applications
You can grant administrative consent to third party (ISV) applications.
This method of obtaining consent has the following prerequisites:
- All prerequisites for standard Administrative Consent apply (see section above).
- ISVs should also support individual consent as a backup, since SSO not all customers will be able to use administative consent.
- If you are an ISV using the JWT grant flow, then the management account tied to your application’s integration key should be a DocuSign account that your company controls.
If you meet these requirements, obtain consent as follows. Each user must perform the following steps.
- Run the GetConsentURL stored procedure. The procedure returns a URL.
- Open the returned URL in your browser. A permissions page will display.
- Click Accept to grant consent.
Configuring OAuth JWT Credentials
Using the information you gathered in the above sections, set the following connection properties in the 本製品:- OAuthJWTCert: The location of your private key. This should end with ".key".
- OAuthJWTCertType: PEMKEY_FILE
- OAuthJWTSubject: Your user ID.
- OAuthJWTIssuer: Your integration key.