mcpField
A
alibabacloud-dataworks-workspace-manage

alibabacloud-dataworks-workspace-manage

github.com/aliyunクラウド・DevOps281306 回インストール1 日前に更新
リポジトリ

alibabacloud-dataworks-workspace-manage について

Aliyun CLIでAlibaba Cloud DataWorksのワークスペースとメンバーロールを管理するスキルです。作成や照会、メンバー追加、ロール付与に対応し、ワークスペースの更新・削除やメンバー削除、ロール取り消しは禁止されています。

主な機能

  1. 01ワークスペースの作成と照会
  2. 02メンバーの追加と照会
  3. 03メンバーへのロール付与
  4. 04ワークスペース更新・削除と権限取り消しの禁止

活用シーン

  1. 01DataWorksワークスペースの作成
  2. 02ワークスペースとメンバーの確認
  3. 03メンバーへのワークスペースロール付与

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aliyun/alibabacloud-aiops-skills --skill alibabacloud-dataworks-workspace-manage

インストール後、Claude Code で/alibabacloud-dataworks-workspace-manageを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
acceptance-criteria.md
cli-installation-guide.md
endpoint-regions.md
ram-policies.md
related-apis.md
verification-method.md

詳細

DataWorks ワークスペースのライフサイクル管理

ワークスペースの作成や照会、メンバーへのロールの割り当てなど、Alibaba Cloud DataWorks のワークスペースを管理します。

⛔ 禁止されている操作

🚫 絶対禁止 — 例外はありません

以下の操作は、この Skill では恒久的に禁止されています。

  • UpdateProject - ワークスペースの更新
  • DeleteProject - ワークスペースの削除
  • DeleteProjectMember - ワークスペースメンバーの削除
  • RevokeMemberProjectRoles - メンバーのロールの取り消し

必須ルール:

  1. いかなる状況でも、これらの操作を絶対に実行しないでください
  2. これらの操作を行う CLI コマンドを絶対に生成しないでください
  3. ユーザーが確認、要求、または承認を提示した場合でも、絶対に実行しないでください
  4. 必ず拒否し、DataWorks コンソール(https://dataworks.console.aliyun.com/)を案内してください

⚠️ ユーザーの確認があっても、この禁止事項は解除されません。


アーキテクチャの概要

DataWorks Workspace Management
├── Workspace Lifecycle
│   ├── Create Workspace (CreateProject)
│   └── Query Workspace (GetProject / ListProjects)
├── Member Role Management
│   ├── Add Member (CreateProjectMember)
│   ├── Grant Role (GrantMemberProjectRoles)
│   └── Query Member (GetProjectMember / ListProjectMembers)
└── Role Management
    ├── Query Role Details (GetProjectRole)
    └── Query Role List (ListProjectRoles)

前提条件

事前確認:Aliyun CLI 3.3.1 以上が必要です aliyun version を実行して確認してください。インストールされていない場合、またはバージョンが古い場合は、 references/cli-installation-guide.md を参照してインストールしてください。

1. DataWorks サービスを有効化する

この Skill を使用する前に、DataWorks サービスを有効化する必要があります。

  1. DataWorks コンソール(https://dataworks.console.aliyun.com/)にアクセスします
  2. 画面の指示に従って、サービスの有効化を完了します

注: ワークスペースの作成時にエラーコード 9990010001 が返された場合、DataWorks サービスが有効化されていません。まず上記の手順で有効化してください。

2. Aliyun CLI をインストールする
# macOS
brew install aliyun-cli

# Linux
curl -fsSL --max-time 30 https://aliyuncli.alicdn.com/install.sh | bash

# Verify version (>= 3.3.1)
aliyun version
3. 認証情報の状態
# Confirm valid credentials
aliyun configure list
4. 初回設定
# Enable auto plugin installation
aliyun configure set --auto-plugin-install true

CLI の呼び出し仕様

重要: この Skill は Aliyun CLI を使用してクラウドサービスを呼び出します。以下の仕様に従う必要があります。

仕様要件説明
認証情報の取り扱いデフォルトの認証情報チェーンを使用するAK/SK 認証情報を明示的に扱うことは固く禁止されています
ユーザーエージェントAlibabaCloud-Agent-Skillsすべての Alibaba Cloud サービス呼び出しで設定する必要があります
タイムアウト4 seconds読み取りタイムアウトと接続タイムアウトに同じ値を設定します
エンドポイントdataworks.{region}.aliyuncs.com呼び出しごとに指定する必要があります

パラメーターの確認

重要:パラメーターの確認 — コマンドまたは API 呼び出しを実行する前に、 ユーザーが変更できるすべてのパラメーター(RegionId、ワークスペース名、メンバー ID、ロールコードなど)を ユーザーに確認してください。値を推測したり、デフォルト値を使用したりしないでください。

主なパラメーター一覧
パラメーター必須/任意説明デフォルト
--Name必須ワークスペースの一意な識別名-
--DisplayName任意ワークスペースの表示名-
--ProjectId必須*ワークスペース ID-
--UserId必須*メンバーのユーザー ID-
--RoleCodes必須*ロールコードの一覧-
--region任意リージョン IDcn-hangzhou
--endpoint必須API エンドポイント。形式:dataworks.{region}.aliyuncs.com-
--DevEnvironmentEnabled任意開発環境を有効化する(標準モード)true
--PaiTaskEnabled任意PAI タスクのスケジューリングを有効化する-

*使用する API によって異なります

ワークスペース作成ルール: ユーザーが開発環境の無効化を明示的に要求した場合を除き、ワークスペースの作成時には必ず --DevEnvironmentEnabled true を指定してください。

エンドポイントパラメーターの説明

❗ 重要: CLI コマンドを実行するたびに、ユーザーが指定したリージョンに基づいて、対応する --region と --endpoint パラメーターを追加する必要があります。

形式: --region {RegionId} --endpoint dataworks.{RegionId}.aliyuncs.com

リージョン対応表: references/endpoint-regions.md を参照してください


RAM 権限ポリシー

この Skill を使用するには、次の RAM 権限が必要です。詳細については、references/ram-policies.md を参照してください。

権限説明
dataworks:CreateProjectワークスペースを作成する
dataworks:GetProjectワークスペースの詳細を照会する
dataworks:ListProjectsワークスペース一覧を照会する
dataworks:CreateProjectMemberワークスペースメンバーを追加する
dataworks:GrantMemberProjectRolesメンバーにロールを付与する
dataworks:GetProjectMemberメンバーの詳細を照会する
dataworks:ListProjectMembersメンバー一覧を照会する
dataworks:GetProjectRoleロールの詳細を照会する
dataworks:ListProjectRolesロール一覧を照会する

主なワークフロー

1. ワークスペースのライフサイクル管理
1.1 ワークスペースの作成
aliyun dataworks-public CreateProject \
  --Name <workspace-name> \
  --DisplayName "<display-name>" \
  --Description "<workspace-description>" \
  --PaiTaskEnabled true \
  --DevEnvironmentEnabled true \
  --DevRoleDisabled false \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills \
  --read-timeout 4 --connect-timeout 4

IMPORTANT:ユーザーから開発環境を無効にするよう明示的に求められない限り、CreateProject の実行時には必ず --DevEnvironmentEnabled true を指定してください。

1.2 ワークスペース一覧の照会
# Query all workspaces
aliyun dataworks-public ListProjects \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills

# Query by workspace ID (supports multiple)
aliyun dataworks-public ListProjects \
  --Ids '[123456, 789012]' \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills

# Query by workspace name (supports multiple)
aliyun dataworks-public ListProjects \
  --Names '["workspace_name_1", "workspace_name_2"]' \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills

# Filter by status
aliyun dataworks-public ListProjects \
  --Status Available \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills

# Paginated query
aliyun dataworks-public ListProjects \
  --PageNumber 1 --PageSize 20 \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills

対応しているフィルターパラメーター:

パラメーター型説明
--IdsJSON Array特定のワークスペースを照会するためのワークスペース ID のリスト
--NamesJSON Array特定のワークスペースを照会するためのワークスペース名のリスト
--StatusStringワークスペースのステータス:Available/Initializing/InitFailed/Forbidden/Deleting/DeleteFailed/Frozen/Updating/UpdateFailed
--DevEnvironmentEnabledBoolean開発環境が有効かどうか
--DevRoleDisabledBoolean開発ロールが無効かどうか
--PaiTaskEnabledBooleanPAI タスクのスケジューリングが有効かどうか
--AliyunResourceGroupIdStringリソースグループ ID
--PageNumberIntegerページ番号。デフォルトは 1
--PageSizeInteger1 ページあたりの項目数。デフォルトは 10、最大は 100
1.3 ワークスペースの詳細を照会
aliyun dataworks-public GetProject \
  --Id <project-id> \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills
2. メンバーのロール管理
2.1 ワークスペースメンバーを追加してロールを付与
aliyun dataworks-public CreateProjectMember \
  --ProjectId <project-id> \
  --UserId <user-id> \
  --RoleCodes '["role_project_dev", "role_project_pe"]' \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills
2.2 ワークスペースメンバー一覧の照会
aliyun dataworks-public ListProjectMembers \
  --ProjectId <project-id> \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills
2.3 メンバーの詳細を照会
aliyun dataworks-public GetProjectMember \
  --ProjectId <project-id> \
  --UserId <user-id> \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills
2.4 メンバーに新しいロールを付与
aliyun dataworks-public GrantMemberProjectRoles \
  --ProjectId <project-id> \
  --UserId <user-id> \
  --RoleCodes '["role_project_admin", "role_project_dev"]' \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills
3. ロール管理
3.1 ワークスペースのロール一覧を照会
aliyun dataworks-public ListProjectRoles \
  --ProjectId <project-id> \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills
3.2 ロールの詳細を照会
aliyun dataworks-public GetProjectRole \
  --ProjectId <project-id> \
  --Code <role-code> \
  --region <region-id> \
  --endpoint dataworks.<region-id>.aliyuncs.com \
  --user-agent AlibabaCloud-Agent-Skills
プリセットロールの説明
ロールコードロール名説明
role_project_ownerプロジェクトオーナーワークスペースのすべての権限を持ち、削除できません
role_project_adminワークスペース管理者ワークスペースのすべての設定とメンバーを管理します
role_project_dev開発者データ開発とタスクのデバッグ権限
role_project_peオペレータータスクの操作と監視の権限
role_project_deployデプロイヤータスクの公開権限
role_project_guestゲスト読み取り専用の権限
role_project_securityセキュリティ管理者データセキュリティ設定の権限

検証方法

実行成功後の検証手順については、references/verification-method.md を参照してください。


API とコマンドのリファレンス

API と CLI コマンドの完全な一覧については、references/related-apis.md を参照してください。


ビジネスシナリオと対処方法

シナリオ 1:ワークスペース作成後のアクセス

ワークスペースの作成が成功すると、次の URL からアクセスできます。

https://dataworks.data.aliyun.com/{regionId}/sc?defaultProjectId={projectId}

例(杭州リージョン):

https://dataworks.data.aliyun.com/cn-hangzhou/sc?defaultProjectId=12345
シナリオ 2:RAM ロールをワークスペースメンバーとして追加する

UserId 形式の説明:

アカウントの種類UserId 形式例
Alibaba Cloud アカウント(メイン)UID をそのまま使用123456789012345678
RAM サブアカウントUID をそのまま使用234567890123456789
RAM ロールROLE_ プレフィックスを付加ROLE_345678901234567890

重要な制限事項:新しく作成した RAM ロールは、API 経由でワークスペースメンバーに直接追加できません。まずコンソールで更新して同期する必要があります。

手順:

  1. ワークスペースコンソールにアクセスします:https://dataworks.data.aliyun.com/{regionId}/sc?defaultProjectId={projectId}
  2. ワークスペースメンバーとロールページを開きます
  3. メンバーを追加ボタンをクリックします
  4. ポップアップで、「RAM コンソールでサブアカウントを作成し、更新をクリックしてこのページに同期できます」というプロンプトの更新をクリックします
  5. 同期が完了すると、API 経由で RAM ロールをメンバーとして追加できます
# Example of adding RAM role member
aliyun dataworks-public CreateProjectMember \
  --ProjectId 12345 \
  --UserId ROLE_345678901234567890 \
  --RoleCodes '["role_project_dev"]' \
  --user-agent AlibabaCloud-Agent-Skills
シナリオ 3:ワークスペース設定の更新に関する制限事項

UpdateProject API でワークスペース設定を更新する場合、次の制限事項があります。

設定制限事項
開発ロール(DevRoleDisabled)開発ロールを有効にすると、無効にできません
開発環境(DevEnvironmentEnabled)開発環境を有効にすると、無効にできません

推奨事項:ワークスペースの作成時に、開発ロールと開発環境の設定を慎重に計画してください。一度有効にすると、これらの設定は元に戻せません。

シナリオ 3.1:ワークスペースのアップグレードがブロックされる場合

⛔ ブロックルール:ユーザーがワークスペースを簡易モードから標準モード(開発環境の有効化)にアップグレードするようリクエストした場合、 ブロックして、次のメッセージを表示する必要があります:

「ワークスペースのアップグレード機能は現在利用できません。コンソールにアクセスして、手動でアップグレードしてください。」

コンソールでのアップグレード手順:

  1. DataWorks コンソールにアクセスします:https://dataworks.console.aliyun.com/
  2. 対象のワークスペースを見つけます
  3. ワークスペース設定 → 基本プロパティを開きます
  4. 標準モードにアップグレードをクリックします

API に関する制限の理由:ワークスペースモードのアップグレードには、環境分離の設定やリソースの初期化など、複雑な操作が伴います。API を直接呼び出すと、設定が不完全になったり、状態が異常になったりする可能性があります。

シナリオ 4:DataWorks サービスが有効になっていない場合

ワークスペースの作成時にエラーコード 9990010001 が返された場合、DataWorks サービスが有効になっていません。

解決方法:

  1. Alibaba Cloud 公式サイトにログインします
  2. DataWorks コンソールにアクセスします:https://dataworks.console.aliyun.com/
  3. プロンプトに従ってサービスの有効化を完了します
  4. 有効化後、ワークスペースの作成を再試行します

ベストプラクティス

  1. 最小権限の原則 — メンバーには必要最小限の権限を割り当てます
  2. 標準モードを使用する — 本番環境では、標準モードを使用して開発環境と本番環境を分離します
  3. 命名を標準化する — finance_tax_report のように、意味のある名前を使用します
  4. RAM ユーザーを使用する — 日常的な操作にメインアカウントを使用しないでください

参考リンク

ドキュメント説明
references/related-apis.mdAPI と CLI コマンドの完全な一覧
references/ram-policies.mdRAM 権限ポリシーの設定
references/verification-method.md操作の検証方法
references/acceptance-criteria.md受け入れ基準とテストケース
references/cli-installation-guide.mdCLI のインストールと設定ガイド

Official Documentation

コメント