このトピックでは、複数の RAM ユーザーに関する情報をクエリする方法について説明します。
背景情報
Logic Composer がアクティブ化され、Alibaba Cloud アカウントを使用して RAM ユーザー が作成されます。
手順
Alibaba Cloud コンソールにログインし、Logic Composer コンソール を開きます。
左側のナビゲーションウィンドウで、[ワークフロー] をクリックします。[ワークフロー] ページで、
ワークフローの作成をクリックします。必須パラメーターである [ワークフロー名] と [リソースグループ] を設定します。次に、
OKをクリックします。表示される [ワークフローの作成] ダイアログボックスで、デフォルトオプションの [空白] を選択し、
OKをクリックしてワークフロー編集ページに移動します。[グラフィックビュー] タブの [トリガーの選択] ウィンドウで、
すべてタブをクリックし、[リクエスト] をクリックします。表示される [リクエスト] ダイアログボックスで、[トリガー] タブの [HTTP リクエストを受信した場合] をクリックします。表示されるダイアログボックスで、[メソッド] に [GET] を選択します。
+ ステップを追加をクリックします。表示される [アクションの選択] ダイアログボックスで、すべてタブをクリックし、[変数] をクリックします。表示される [変数] ダイアログボックスで、[アクション] タブの [変数の初期化] をクリックします。表示される [変数の初期化] ダイアログボックスで、
newVar[名前] パラメーターに変数名newVarを入力し、[タイプ] パラメーターに配列を選択し、[値] パラメーターに [] を入力します。ワークフローの下部にある
+ ステップを追加をクリックします。[アクションの選択] ダイアログボックスが表示されます。Alibaba Cloudタブを クリック し、コネクタリストでResource Access Management を検索し、[resource Access Management] をクリックします。表示されるリソースアクセス管理ダイアログボックスで、操作リストから listusers を検索し、[listusers] をクリックします。
承認をクリックします。表示される [ロールの付与] パネルで、次のパラメーターを設定し、OKをクリックして承認構成を完了します。ロールをすでに指定している場合は、このステップをスキップします。ロールタイプ: このパラメーターに
新規ロールを選択します。ロール名: このパラメーターを
logic-composer-accessing-RAM-roleに設定します。ロールの説明: このフィールドに
logic-composer-Access-RAM-role を実行するために必要な権限と入力します。新しい承認ポリシー: このパラメーターに
AliyunRAMReadOnlyAccessを選択します。
ワークフローの下部にある
+ ステップを追加をクリックします。表示される [アクションの選択] ダイアログボックスで、[コントロール] をクリックします。表示される [コントロール] ダイアログボックスで、[アクション] タブの [それぞれに対して] をクリックします。[値] パラメーターの入力ボックスをクリックします。右側に表示されるフローティングウィンドウで、[resource Access Management Listusers] の下の [ユーザー] をクリックします。
[+ ステップの追加]をクリックし、[foreach] ダイアログボックスに進みます。表示される [アクションの選択] ダイアログボックスで、コネクタリストから Resource Access Management を検索し、[resource Access Management] をクリックします。表示される Resource Access Management ダイアログボックスで、アクションリストから policies を検索し、[listpoliciesforuser] をクリックします。タブの [ユーザー名] の入力ボックスをクリックします。右側のフローティングウィンドウで、[式] タブの入力ボックスに
items ('ForEach')['UserName']と入力し、入力ボックスの横にある [OK] をクリックします。ウィンドウが狭くて [OK] ボタンが表示されない場合は、ブラウザウィンドウを右にスクロールします。[+ Add Step]をクリックし、[foreach] タブを選択します。表示される [select Action] ダイアログボックスで、コネクタリストから Resource Access Management を検索し、[resource Access Management] をクリックします。表示される Resource Access Management ダイアログボックスで、操作リストから accesskeys を検索し、[listaccesskeys] をクリックします。タブの [ユーザー名] の入力ボックスをクリックします。右側のフローティングウィンドウで、[式] タブの入力ボックスに
items ('ForEach')['UserName']と入力し、入力ボックスの横にある [OK] をクリックします。ウィンドウが狭くて [OK] ボタンが表示されない場合は、ブラウザウィンドウを右にスクロールします。[foreach] ノードで
+ ステップを追加をクリックします。表示される [アクションの選択] ダイアログボックスで、[変数] をクリックしてアクションリストを表示します。[配列変数に追加] をクリックします。[名前] ドロップダウンリストで、
newVarを選択します。[値] フィールドの入力ボックスに、次のサンプルコードを入力します。{ "userName": "@{items('ForEach')['UserName']}", "accessKeys": "@{body('Resource_Access_Management_ListAccessKeys')['AccessKeys']['AccessKey']}", "policies": "@{body('Resource_Access_Management_ListPoliciesForUser')['Policies']['Policy']}" }
実行結果
ワークフローの下部にある
+ ステップを追加をクリックします。[アクションの選択] ダイアログボックスが表示されます。コネクタリストで [リクエスト] を見つけてクリックします。次に、アクションリストで [レスポンス] を見つけてクリックします。表示される [レスポンス] ダイアログボックスで、[ヘッダー] に
Content-Typeとapplication/jsonを入力し、[本文] の入力ボックスをクリックします。右側に表示されるダイアログボックスで、[変数の初期化] の下の出力変数 [newvar] をクリックし、[保存] をクリックしてワークフローを保存します。[実行] をクリックしてワークフローを実行します。[結果] ページが表示されます。すべてのノードが実行されたら、[レスポンス] ノードをクリックして、[本文] セクションの出力を表示します。
ブラウザでレスポンスを確認する
ワークフローの [グラフィックビュー] タブで、トリガー [HTTP リクエストを受信した場合] をクリックし、[HTTP エンドポイント] の URL をコピーします。
ブラウザで新しいページを開き、コピーした URL をアドレスバーに貼り付けて、Enter キーを押します。
レスポンスが正しいかどうかを確認します。
アカウントに多数の RAM ユーザーと権限がある場合、レスポンスがタイムアウトになる可能性があります。これはワークフローの実行を中断しません。ワークフローの実行ログは、[実行ログ] ページで表示できます。詳細については、「制限」の HTTP セクションをご参照ください。