jumpserver/apps/accounts/demos/python/README.ja.md

2.8 KiB

JumpServer PAM クライアント

このパッケージは、JumpServer PAM API と対話し、さまざまなアセットのシークレットを取得するための Python クライアントを提供します。リクエストを送信し、レスポンスを処理するプロセスを簡素化します。

特徴

  • リクエストを送信する前にパラメータを検証します。
  • アセットおよびアカウントベースのシークレット取得をサポートします。
  • HTTP 署名を使用して JumpServer PAM API と簡単に統合できます。

インストール

以下のコマンドを使用して、パッケージを pip でインストールできます:

pip install jms_pam-0.0.1-py3-none-any.whl

要件

  • Python 3.6+
  • requests
  • httpsig

使用方法

初期化

JumpServer PAM クライアントを使用するには、必要な endpointkey_id、および key_secret を提供してインスタンスを作成します。

from jms_pam import JumpServerPAM, SecretRequest

client = JumpServerPAM(
    endpoint='http://127.0.0.1',
    key_id='your-key-id',
    key_secret='your-key-secret'
)

シークレットリクエストの作成

アセットまたはアカウント情報を指定して、シークレットのリクエストを作成できます。

request = SecretRequest(asset='Linux', account='root')

リクエストの送信

クライアントの send メソッドを使用してリクエストを送信します。

secret_obj = client.send(request)

レスポンスの処理

シークレットが正常に取得されたかどうかを確認し、レスポンスを適切に処理します。

if secret_obj.valid:
    print('秘密: %s' % secret_obj.secret)
else:
    print('シークレットの取得に失敗しました: %s' % secret_obj.desc)

完全な例

以下は、クライアントの使用方法の完全な例です:

from jumpserver_pam_client import JumpServerPAM, SecretRequest

client = JumpServerPAM(
    endpoint='http://127.0.0.1',
    key_id='your-key-id',
    key_secret='your-key-secret'
)

request = SecretRequest(asset='Linux', account='root')
secret_obj = client.send(request)

if secret_obj.valid:
    print('秘密: %s' % secret_obj.secret)
else:
    print('シークレットの取得に失敗しました: %s' % secret_obj.desc)

エラーハンドリング

ライブラリは、提供されたパラメータが検証要件を満たしていない場合に RequestParamsError を発生させます。これには、有効な UUID の確認やパラメータ間の相互依存性のチェックが含まれます。

貢献

貢献を歓迎します!改善やバグ修正のために、問題を開くかプルリクエストを送信してください。