オンプレミスプロビジョニングのSCIMコネクターをテストする

Oktaでは、Okta Provisioning Connector SDKで構築されたSCIMコネクター、または任意のカスタムSCIMコネクターやSCIMサーバーをテストするためのユーティリティを提供しています。コネクターをテストするためにOktaOkta Provisioning Agentに接続する必要はありません。

テストユーティリティはOkta Provisioning Connector SDKパッケージの一部で、Oktaダウンロードページで入手できます。Okta Provisioning Connector SDKパッケージを入手するには、Okta Admin Consoleにサインインし、[Settings(設定)]>[Download(ダウンロード)]を選択します。次に、Okta Provisioning Connector SDKの[Download(ダウンロード)]をクリックします。

テストユーティリティは、Okta Provisioning Connector SDKの「tester(テスター)」フォルダ内のscim-sdk-test.jarに含まれています。テストユーティリティの完全なドキュメントはtester/README.TXTファイルにあります。テストの主な目的は、SCIMコネクターまたはSCIMサーバーからの応答を検証することです。

テストデータ

テストデータは、tester/dataディレクトリの .jsonファイルにあります。これらのファイルを使用または変更して、コネクターをテストすることができます。テストはすべて、入力データが有効であることを前提としています。サンプルデータファイルの編集や作成は慎重に行ってください。

テストの実行

scim-sdk-tests.jarファイルを使用して、テストを実行します。すべての使用可能な引数を確認するには、引数なしでjarを実行します。

java -jar scim-sdk-tests.jar

呼び出し、応答、すべてのオプション、サンプル結果を含む完全なテスト情報は、tester/README.TXTファイルに表示されます。以下のコードは、非常に典型的なテスト呼び出しを示しています。最小限の数のパラメーターが渡されます。

  • url:SCIMサーバーのベースURL
  • メソッド:テストするOKTAプロビジョニングメソッド
  • ファイル:入力データファイル

サンプルテスト呼び出し

以下は、テスト呼び出しのサンプルです。

java -jar scim-sdk-tests.jar -url http://localhost:8080 -method createNewUser -file data/createNewUser.json

テスターの使用

すべての使用可能な引数を確認するには、引数なしでjarを実行します。

java -jar scim-sdk-tests.jar

usage: scim-sdk-tests

渡すことのできる引数の詳細を以下の表に示します。

引数 説明
-arg <propertyName=propertyValue> メソッドが使用する任意のプロパティ名と値のペアを渡します。
-expectResults <true|false> 現在のメソッドでコネクターから結果が戻ってくるかどうか、テストの期待値を設定します。これは、checkUserExists、downloadUsers、downloadGroups、importUserProfileの各メソッドで使用できます。
-file <fileName> 現在のメソッドの入力に使用するデータファイルです。サンプルファイルは、テストユーティリティパッケージのdataディレクトリから提供されています。
-header <headerName=headerValue> SCIMサーバーに送信したい追加のHTTPヘッダーです。例えば、「X-Internal-AuthHeader=secret」などのように指定します。
-method <methodName>

createNewUser

送信されたHTTPリクエスト:

GET /Users?filter=userName=myemail@domain.com&startIndex=1&count=100

POST /Users

OktaコネクターSDKを使用して構築されたコネクターをテストする場合、テスターはUserオブジェクトを渡し、コネクターを使用して新しいユーザーを作成します。コネクターメソッドSCIMService.createUserをテストします。

createPendingUser

送信されたHttpリクエスト:

POST /Users

OktaコネクターSDKを使用して構築されたコネクターをテストする場合、テスターはUserオブジェクトを渡し、コネクターを使用して保留中のユーザーを作成します。コネクターメソッドSCIMService.createUserをテストします。

downloadUsers

送信されたHTTPリクエスト:

GET /Users?startIndex=1&count=100

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターはユーザーの全リストを返すようにコネクターに対してクエリを実行します。コネクターメソッドSCIMService.getUsers(フィルターなし)をテストします。

checkUserExists

送信されたHTTPリクエスト:

/Users?filter=userName=myemai@domain.com&startIndex=1&count=100

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターは、特定のユーザーがすでに存在するかどうか、コネクターに対してクエリを実行します。これには次の追加プロパティ(userIdFieldNameとuserIdFieldValue)が必要です。コネクターメソッドSCIMService.getUsers(フィルター使用)をテストします。

importUserProfile

送信されたHTTPリクエスト:

GET /Users/<Id>

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターは、ユーザーのIDを渡して1人のユーザーを返すようにコネクターに対してクエリを実行します。idという追加のプロパティが必要です。コネクターメソッドSCIMService.getUserをテストします。

activateUser

送信されたHTTPリクエスト:

PUT /Users/<id>

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターは既存のユーザーをアクティベートするためにコネクターに対してクエリを実行します。コネクターメソッドSCIMService.updateUserをテストします。

deactivateUser

送信されたHTTPリクエスト

PUT /Users/<id>

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターは既存のユーザーをディアクティベートするためにコネクターに対してクエリを実行します。コネクターメソッドSCIMService.updateUserをテストします。

reactivateUser

送信されたHTTPリクエスト:

PUT /Users/<id>

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターは既存のユーザーをリアクティベートするためにコネクターに対してクエリを実行します。コネクターメソッドSCIMService.updateUserをテストします。

pushPasswordUpdate

送信されたHTTPリクエスト:

PUT /Users/<id>

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターは既存のユーザーのパスワードを更新するためにコネクターに対してクエリを実行します。コネクターメソッドSCIMService.updateUser pushProfileUpdateをテストします。Oktaは既存のユーザーのプロパティを更新するようにコネクターに要求します。コネクターメソッドSCIMService.updateUserをテストします。

deleteGroup

送信されたHTTPリクエスト:

DELETE /Groups/<id>

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターはグループを削除するために、コネクターに対してクエリを実行します。コネクターメソッドSCIMService.deleteGroupをテストします。

updateGroup

送信されたHTTPリクエスト:

PUT /Groups/<id>

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターはグループを更新するために、コネクターに対してクエリを実行します。コネクターメソッドSCIMService.updateGroupをテストします。

createGroup

送信されたHTTPリクエスト:

POST /Groups

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターはグループを作成するために、コネクターに対してクエリを実行します。コネクターメソッドSCIMService.createGroupをテストします。

getGroupById

送信されたHTTPリクエスト:

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターはIDに基づいてグループを返すために、コネクターに対してクエリを実行します。コネクターメソッドSCIMService.getGroupをテストします。

downloadGroups

送信されたHTTPリクエスト:

GET /Groups?startIndex=1&count=100

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターはグループの全リストを返すようにコネクターに要求します。コネクターメソッドSCIMService.getGroupsをテストします。

getImplementedUserManagementCapabilities

送信されたHTTPリクエスト:

GET /ServiceProviderConfigs

OktaコネクターSDKで構築されたコネクターをテストしている場合、テスターは、コネクターが実装しているUserManagementCapabilitiesのリストを返すようにコネクターに要求します。コネクターメソッドSCIMService.getImplementedUserManagementCapabilitiesをテストします。

-url <url> 使用するSCIMサーバーのURLです。Example:http://acme.com:8080

Oktaが提供するデフォルトの実装では、appnameがonprem_appであり、以下の例とdataフォルダ内の入力データファイルがApp Userカスタムスキーマのカスタムスキーマ名(urn:okta:onprem_app:1.0:user)を使用していることを想定しています。コネクターを実装する際には、正しいappnameを使用する必要があります。

次の手順

SCIMコネクターに接続する

関連項目

SDKを使ってオンプレミスプロビジョニングのSCIMコネクターを作成する

オンプレミスプロビジョニングのSCIMコネクターを作成する

オンプレミスプロビジョニング用のSCIMメッセージ