SCIM リソースタイプ、サービスプロバイダー、スキーマの基本
Liferay DXP 2025年第2四半期以降
Liferay は、利用可能な SCIM リソース タイプ、サービス プロバイダー、およびスキーマを照会するためのヘッドレス API を提供します。 利用可能な API を調べるには、 API エクスプローラー の /scim エンドポイントを使用します。
リソースタイプの取得
新しいLiferay DXPインスタンスを起動し、以下を実行します。
docker run -it -m 8g -p 8080:8080 liferay/dxp:2025.q1.6-lts
メールアドレス test@liferay.com とパスワード testを使用して、 http://localhost:8080 で Liferay にサインインします。 プロンプトが表示されたら、パスワードを learnに変更します。
Liferayが起動したら、
-
SCIM リソース タイプとスキーマの基本をダウンロードして解凍します。
curl https://resources.learn.liferay.com/examples/liferay-s7r9.zip -Ounzip liferay-s7r9.zip -
cURL スクリプトを使用して、Liferay 内のリソース タイプを照会します。 コマンドラインで、
curlフォルダに移動します。ResourceTypes_GET.shスクリプトを実行します。
./ResourceTypes_GET.sh
JSON 応答には、利用可能なリソース タイプが表示されます。
{
"startIndex": 1,
"totalResults": 2,
"itemsPerPage": 2,
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:ListResponse"
],
"Resources": [
{
"schema": "urn:ietf:params:scim:schemas:core:2.0:Group",
"endpoint": "/Groups",
"meta": {
"location": "http://localhost:8080/o/scim/v1.0/v2/ResourceTypes/Group",
"resourceType": "ResourceType"
},
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:ResourceType"
],
"name": "Group",
"description": "https://datatracker.ietf.org/doc/html/rfc7643#section-8.7.1",
"id": "Group"
},
{
"schema": "urn:ietf:params:scim:schemas:core:2.0:User",
"endpoint": "/Users",
"meta": {
"location": "http://localhost:8080/o/scim/v1.0/v2/ResourceTypes/User",
"resourceType": "ResourceType"
},
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:ResourceType"
],
"name": "User",
"description": "https://datatracker.ietf.org/doc/html/rfc7643#section-8.7.1",
"schemaExtensions": [
{
"schema": "urn:ietf:params:scim:schemas:extension:liferay:2.0:User",
"required": false
}
],
"id": "User"
}
]
}
-
または、Javaクライアントを使用してRESTサービスを呼び出します。
javajavac -classpath .:* *.java -
ResourceTypes_GETクラスを実行します。java -classpath .:* ResourcTypes_GET
cURLコマンドの検証
ResourceTypes_GET.sh スクリプトは、cURL コマンドを使用して REST サービスを呼び出します。
curl \
'http://localhost:8080/o/scim/v1.0/v2/ResourceTypes' \
--user "test@liferay.com:learn"
ここでは、コマンドの引数を紹介します。
引数 説明
"http://localhost:8080/o/scim/v1.0/v2/ResourceTypes"RESTサービスのエンドポイント
--user "test@liferay.com:learn"基本的な認証情報
Javaクラスを調べる
ResourceType_GET.java クラスは、 ResourceTypesResource サービスを呼び出して、サポートされているリソース タイプをサーバーに照会します。
このクラスは、わずか3行のコードでRESTサービスを呼び出します。
行(省略形) 説明
ResourceTypesResource.Builder builder = ...Builder を取得して、 ResourceTypesResource サービス インスタンスを生成します。
ResourceTypesResource resourceTypesResource = builder.authentication(...).build();基本認証を使用して、 ResourceTypesResource サービス インスタンスを生成します。
resourceTypesResource.getV2ResourceTypes()resourceTypesResource.getV2ResourceTypes() メソッドを呼び出します。
プロジェクトには、依存関係としてcom.liferay.scim.rest.client.jarファイルが含まれていることに注意してください。 すべての REST アプリケーションのクライアント JAR 依存関係情報は、インストールの API エクスプローラーの /o/api (例: http://localhost:8080/o/api) で確認できます。
注
メイン メソッドのコメントは、クラスの実行を示しています。
重要
サービスの詳細については、 ResourceTypesResource を参照してください。
スキーマ_GET.sh
このサービスは、サーバーから利用可能な SCIM スキーマを取得します。
コマンド:
./Schemas_GET.sh
コード:
curl \
"http://localhost:8080/o/scim/v1.0/v2/Schemas" \
--user "test@liferay.com:learn"
スキーマ_GET.java
コマンド:
java -classpath .:* Schemas_GET
コード:
SchemaResource.Builder builder = SchemaResource.builder();
SchemaResource schemaResource = builder.authentication(
"test@liferay.com", "learn"
).build();
System.out.println(schemaResource.getV2Schemas());
}
Liferayインスタンスの スキーマ オブジェクトはJSON形式で表示されます。
サービスプロバイダーConfig_GET.sh
このサービスは、Liferay の SCIM 実装に関する情報を取得します。
コマンド:
./ServiceProviderConfig_GET.sh
コード:
curl \
"http://localhost:8080/o/scim/v1.0/v2/ServiceProviderConfig" \
--user "test@liferay.com:learn"
サービスプロバイダーConfig_GET.java
コマンド:
java -classpath .:* ServiceProviderConfig_GET
コード:
関連トピック