9.5. ユーザーデータの削除
9.5.1. GDPR に準拠したユーザーデータの削除
一般データ保護規則 (GDPR: General Data Protection Regulation) では、個人データの消去を求める個人の権利が施行されています。
以下の手順では、クラスターおよび RH-SSO データベースからユーザーのデータを削除する方法を説明します。
以下のコマンドは、-n
オプションのユーザー例として、デフォルトの OpenShift プロジェクト openshift-workspaces
を使用します。
前提条件
ユーザーまたは管理者の認証トークン。ユーザーアカウントにバインドされているデータ以外のデータを削除する場合は、
admin
権限が必要になります。admin
は、CHE_SYSTEM_ADMIN__NAME
およびCHE_SYSTEM_SUPER__PRIVILEGED__MODE = true
カスタムリソース定義を使用して事前に作成され、有効にされる特別な CodeReady Workspaces 管理者アカウントです。spec: server: customCheProperties: CHE_SYSTEM_SUPER__PRIVILEGED__MODE: 'true' CHE_SYSTEM_ADMIN__NAME: '<admin-name>'
必要に応じて、以下のコマンドを使用して
admin
ユーザーを作成します。$ oc patch checluster/codeready-workspaces \ --type merge \ -p '{ "spec": { "server": {"customCheProperties": {"CHE_SYSTEM_SUPER__PRIVILEGED__MODE": "true"} } }}' \ -n openshift-workspaces
$ oc patch checluster/codeready-workspaces \ --type merge \ -p '{ "spec": { "server": {"customCheProperties": {"CHE_SYSTEM_ADMIN__NAME": "<admin-name>"} } }}' \ -n openshift-workspaces
注記すべてのシステムパーミッションは、
CHE_SYSTEM_ADMIN__NAME
プロパティーで設定した管理ユーザーに付与されます (デフォルトはadmin
です)。システムのパーミッションは CodeReady Workspaces サーバーの起動時に付与されます。ユーザーが CodeReady Workspaces ユーザーデータベースにない場合は、最初のユーザーのログイン後に表示されます。認証トークンの権限:
-
admin
: すべてのユーザーのすべての個人データを削除できます。 -
user
: ユーザーに関連するデータのみを削除できます。
-
- ユーザーまたは管理者が、CodeReady Workspaces がデプロイされた状態で OpenShift クラスターにログインしている。
ユーザー ID が取得されます。以下のコマンドを使用してユーザー ID を取得します。
現行ユーザーの場合:
$ curl -X GET \ --header 'Authorization: Bearer <user-token>' \ 'https://<codeready-<openshift_deployment_name>.<domain_name>>/api/user'
名前でユーザーを検索するには、以下を実行します。
$ curl -X GET \ --header 'Authorization: Bearer <user-token>' \ 'https://<codeready-<openshift_deployment_name>.<domain_name>>/api/user/find?name=<username>'
メールでユーザーを検索するには、以下を実行します。
$ curl -X GET \ --header 'Authorization: Bearer <user-token>' \ 'https://<codeready-<openshift_deployment_name>.<domain_name>>/api/user/find?email=<email>'
ユーザー ID を取得する例
この例では、ローカルユーザーの名前として
vparfono
を使用します。$ curl -X GET \ --header 'Authorization: Bearer <user-token>' \ 'https://che-vp-che.apps.che-dev.x6e0.p1.openshiftapps.com/api/user/find?name=vparfono'
ユーザー ID は、curl コマンド出力の下部にあります。
{ "name": "vparfono", "links": [ { . . . } ], "email": "vparfono@redhat.com", "id": "921b6f33-2657-407e-93a6-fb14cf2329ce" }
手順
codeready-workspaces
CheCluster Custom
リソース (CR) 定義を更新して、RH-SSO データベースからユーザーのデータの削除を許可します。$ oc patch checluster/codeready-workspaces \ --patch "{\"spec\":{\"server\":{\"customCheProperties\": {\"CHE_KEYCLOAK_CASCADE__USER__REMOVAL__ENABLED\": \"true\"}}}}" \ --type=merge -n openshift-workspaces
API を使用してデータを削除します。
$ curl -i -X DELETE \ --header 'Authorization: Bearer <user-token>' \ https://<codeready-<openshift_deployment_name>.<domain_name>>/api/user/<user-id>
検証
以下のコマンドを実行すると、コード 204
が API 応答として返されます。
$ curl -i -X DELETE \ --header 'Authorization: Bearer <user-token>' \ https://<codeready-<openshift_deployment_name>.<domain_name>>/api/user/<user-id>
関連資料
すべてのユーザーのデータを削除するには、CodeReady Workspaces のアンインストール 手順に従います。