Liferay Security APIs
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

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が起動したら、

  1. SCIM リソース タイプとスキーマの基本をダウンロードして解凍します。

    curl https://resources.learn.liferay.com/examples/liferay-s7r9.zip -O
    
    unzip liferay-s7r9.zip
    
  2. 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"
    }
  ]
}
  1. または、Javaクライアントを使用してRESTサービスを呼び出します。 java

    javac -classpath .:* *.java
    
  2. 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

コード: