Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

シングルサインオンが有効な場合( Azure )は API を使用

共同作成者

ある場合 シングルサインオン( SSO )の設定と有効化 また、 Azure を SSO プロバイダとして使用している場合は、 2 つのサンプルスクリプトを使用して、グリッド管理 API またはテナント管理 API で有効な認証トークンを取得できます。

Azure シングルサインオンが有効な場合は、 API にサインインします

以下の手順は、 Azure を SSO アイデンティティプロバイダとして使用する場合に該当します

必要なもの
  • StorageGRID ユーザグループに属するフェデレーテッドユーザの SSO E メールアドレスとパスワードが必要です。

  • テナント管理 API にアクセスする場合は、テナントアカウント ID を確認しておきます。

このタスクについて

認証トークンを取得するには、次のサンプルスクリプトを使用します。

  • 「 storagegrid-ssoauth-caz.py 」 Python スクリプト

  • 「 storagegrid-ssoauth-azure.js 」スクリプト

どちらのスクリプトも、 StorageGRID インストールファイルディレクトリ (Red Hat Enterprise Linux または CentOS 用の場合は「 ./rpms 」、 Ubuntu または Debian 用の場合は「 ./debs 」、 VMware 用の「 ./vsphere 」 ) にあります。

独自の API 統合を Azure に記述するには、「 storagegrid-ssoauth-azure.py 」スクリプトを参照してください。Python スクリプトは、 StorageGRID に対して 2 つの要求を直接実行し(まず SAMLRequest を取得し、あとで認証トークンを取得するため)、さらに Node.js スクリプトを呼び出して、 SSO 処理を実行します。

SSO 処理は一連の API 要求を使用して実行できますが、実行するのは簡単ではありません。puppeteer Node.js モジュールは、 Azure SSO インターフェイスを破棄するために使用します。

URL エンコーディング問題 を使用している場合は、「 Unsupported SAML version 」というエラーが表示される可能性があります。

手順
  1. 必要な依存関係を次のようにインストールします。

    1. Node.js をインストールします(を参照) "https://nodejs.org/en/download/")。

    2. 必要な Node.js モジュール( puppeteer および jsdom )を取り付けます。

      'NPM install-g <module>`

  2. Python スクリプトを Python インタープリタに渡して、スクリプトを実行します。

    Python スクリプトは、対応する Node.js スクリプトを呼び出して、 Azure SSO のインタラクションを実行します。

  3. プロンプトが表示されたら、次の引数の値を入力します(または、パラメータを使用して渡します)。

    • Azure へのサインインに使用する SSO E メールアドレス

    • StorageGRID のアドレス

    • テナント管理 API にアクセスする場合は、テナントアカウント ID

  4. プロンプトが表示されたら、パスワードを入力し、要求された場合に Azure に対する MFA 認証を提供できるように準備します。

    パスワードと MFA の入力を求められます
    メモ このスクリプトでは、 MFA が Microsoft Authenticator を使用して実行されていることを前提として他の形式の MFA (テキストメッセージで受信したコードの入力など)をサポートするために、スクリプトの変更が必要になる場合があります。

    StorageGRID 認証トークンが出力に表示されます。SSO を使用していない場合の API の使用方法と同様に、トークンを他の要求に使用できるようになりました。