このトピックでは、Python 用 CloudSSO SDK を使用して GetServiceStatus 操作を呼び出す方法について説明します。この操作は、CloudSSO がアクティブ化されているかどうかを確認するために使用されます。
手順 1: API ドキュメントを表示する
GetServiceStatus 操作のリンクをクリックして、「関数別の操作一覧」トピックで API リファレンスを表示します。リクエストパラメータや権限などの情報を API リファレンスで取得できます。
手順 2: RAM ユーザーを作成し、RAM ユーザーに権限を付与する
ID
Alibaba Cloud アカウント、Resource Access Management (RAM) ユーザー、または RAM ロールの引き受けによって、GetServiceStatus 操作を呼び出すことができます。ID の違いの詳細については、「ID」をご参照ください。
この例では、RAM ユーザーを使用してこの操作を呼び出します。
RAM コンソールにログオンし、RAM ユーザーを作成します。詳細については、「RAM ユーザーを作成する」をご参照ください。
認証情報
[ユーザー]ページで、作成した RAM ユーザーを見つけ、その名前をクリックします。[認証] タブの [ユーザー Accesskey] セクションで、[accesskey の作成] をクリックして AccessKey ペアを作成します。詳細については、「AccessKey ペアを作成する」をご参照ください。
RAM ユーザーの AccessKey シークレットは、RAM ユーザーの作成時にのみ表示されます。RAM ユーザーの作成後、AccessKey シークレットを表示することはできません。 AccessKey シークレットを記録し、機密性を保持してください。
権限付与
RAM コンソールの ユーザー ページに移動します。作成した RAM ユーザーを見つけ、[アクション] 列の [権限の追加] をクリックします。
[権限の付与]パネルで、[ポリシー]セクションの検索ボックスにキーワード
cloudsso
を入力し、最小権限の原則 (PoLP) に基づいて必要なシステムポリシーを選択します。AliyunCloudSSOFullAccess: CloudSSO の管理権限。
AliyunCloudSSOReadOnlyAccess: CloudSSO の読み取り専用権限。
説明システムポリシーがビジネス要件を満たしていない場合は、カスタムポリシーを作成できます。詳細については、「カスタムポリシーを作成する」および「RAM 認証」をご参照ください。
このトピックでは、AliyunCloudSSOReadOnlyAccess が選択されています。
[権限の付与] をクリックして、権限付与を完了します。
手順 3: 操作を呼び出す
このトピックでは、Python 用 CloudSSO SDK を使用してこの操作を呼び出します。他のプログラミング言語用の SDK も同様の方法で使用できます。詳細については、SDK センターの CloudSSO SDK をご参照ください。ビジネス要件に基づいて、他の方法を使用して API 操作を呼び出すこともできます。詳細については、「呼び出し方法」をご参照ください。
Python をインストールする
Python 3 をダウンロードしてインストールします。
Python 3 をインストールした後、ターミナルで python --version
コマンドを実行して、Python のバージョンを確認します。
環境変数を設定する
この例では、AccessKey ペアを管理するために環境変数が設定されています。これにより、AccessKey ペアをビジネスコードにハードコーディングすることによって発生するセキュリティリスクを防ぎます。詳細については、「Linux、macOS、および Windows で環境変数を設定する」をご参照ください。
依存関係をインストールする
pip install alibabacloud_credentials
pip install alibabacloud_cloudsso20210515==1.0.2
pip install alibabacloud_tea_console
サンプルコードをダウンロードする
OpenAPI ポータルの GetServiceStatus デバッグページに移動します。
リクエストパラメータを指定し、[呼び出しを開始] をクリックして、呼び出しが成功したかどうかを確認します。
この例では、操作固有のリクエストパラメータは必要ありません。
[SDK サンプルコード] タブで、言語として [python] を選択します。 [プロジェクトのダウンロード] をクリックして、Python 用 Service Catalog SDK のサンプルコードパッケージをダウンロードします。
コンピュータ上のサンプルコードパッケージを解凍し、[alibabacloud_sample] ディレクトリに移動します。
サンプルコードを実行する
次のコマンドを実行します。
python sample.py
次のサンプル出力が返されます。
{
"headers": {
"date": "Thu, 13 Jul 2023 08:04:35 GMT",
"content-type": "application/json;charset=utf-8",
"content-length": "151",
"connection": "keep-alive",
"keep-alive": "timeout=25",
"access-control-allow-origin": "*",
"access-control-expose-headers": "*",
"x-acs-request-id": "0E144D0A-B869-5451-AD12-16B56576****",
"x-acs-trace-id": "202b7b433bc249690b8efc7b2070****",
"etag": "1m1nrhLTvQdwdhKVR9B2****"
},
"statusCode": 200,
"body": {
"RequestId": "0E144D0A-B869-5451-AD12-16B56576****",
"ServiceStatus": {
"AccountId": "151266687691****",
"RegionsInUse": ["cn-shanghai"],
"Status": "Enabled"
}
}
}