次の方法で共有


チュートリアル: Microsoft Entra SSO と RStudio Connect SAML Authentication の統合

このチュートリアルでは、RStudio Connect SAML Authentication と Microsoft Entra ID を統合する方法について説明します。 RStudio Connect SAML Authentication と Microsoft Entra ID を統合すると、次のことが可能になります。

  • RStudio Connect SAML Authentication にアクセスできるユーザーを Microsoft Entra ID で管理できます。
  • ユーザーが自分の Microsoft Entra アカウントで RStudio Connect SAML Authentication に自動的にサインインするように設定できます。
  • 1 つの場所でアカウントを管理します。

前提条件

RStudio Connect SAML Authentication と Microsoft Entra の統合を構成するには、次のものが必要です。

シナリオの説明

このチュートリアルでは、テスト環境で Microsoft Entra シングル サインオンを構成してテストします。

  • RStudio Connect SAML Authentication では、SP Initiated SSO と IDP Initiated SSO がサポートされます。

  • RStudio Connect SAML Authentication では、Just-In-Time ユーザー プロビジョニングがサポートされます。

Microsoft Entra ID への RStudio Connect SAML Authentication の統合を構成するには、ギャラリーからマネージド SaaS アプリの一覧に RStudio Connect SAML Authentication を追加する必要があります。

  1. クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。
  2. [ID]>[アプリケーション]>[エンタープライズ アプリケーション]>[新しいアプリケーション] に移動します。
  3. [ギャラリーから追加する] セクションで、検索ボックスに、「RStudio Connect SAML Authentication」と入力します。
  4. 結果のパネルから [RStudio Connect SAML Authentication] を選択し、アプリを追加します。 お使いのテナントにアプリが追加されるのを数秒待機します。

または、Enterprise App Configuration ウィザードを使用することもできます。 このウィザードでは、SSO の構成に加えて、テナントへのアプリケーションの追加、アプリへのユーザーとグループの追加、ロールの割り当てを行うことができます。 Microsoft 365 ウィザードの詳細をご覧ください。

RStudio Connect SAML Authentication 用の Microsoft Entra SSO の構成とテスト

B.Simon というテスト ユーザーを使用して、RStudio Connect SAML Authentication に対する Microsoft Entra SSO を構成してテストします。 SSO を機能させるためには、Microsoft Entra ユーザーと RStudio Connect SAML Authentication の関連ユーザーとの間にリンク関係を確立する必要があります。

RStudio Connect SAML Authentication に対して Microsoft Entra SSO を構成してテストするには、次の手順を行います。

  1. Microsoft Entra SSO の構成 - ユーザーがこの機能を使用できるようにします。
    1. Microsoft Entra テスト ユーザーを作成する - Britta Simon を使用して Microsoft Entra シングル サインオンをテストします。
    2. Microsoft Entra テスト ユーザーを割り当てる - Britta Simon が Microsoft Entra シングル サインオンを使用できるようにします。
  2. RStudio Connect SAML Authentication の SSO の構成 - アプリケーション側でシングル サインオンを構成します。
    1. RStudio Connect SAML Authentication のテスト ユーザーの作成 - RStudio Connect SAML Authentication で Britta Simon に対応するユーザーを作成し、Microsoft Entra の Britta Simon にリンクさせます。
  3. SSO のテスト - 構成が機能するかどうかを確認します。

Microsoft Entra SSO の構成

次の手順に従って Microsoft Entra SSO を有効にします。

  1. クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。

  2. [ID]>[アプリケーション]>[エンタープライズ アプリケーション]>[RStudio Connect SAML Authentication]>[シングル サインオン] の順に移動します。

  3. [シングル サインオン方式の選択] ページで、 [SAML] を選択します。

  4. [SAML によるシングル サインオンのセットアップ] ページで、 [基本的な SAML 構成] の鉛筆アイコンをクリックして設定を編集します。

    Edit Basic SAML Configuration

  5. [基本的な SAML 構成] セクションで、アプリケーションを IDP initiated モードで構成する場合は、次の手順を実行します。<example.com> は、お使いの RStudio Connect SAML Authentication のサーバー アドレスおよびポートで置き換えてください。

    a. [識別子] ボックスに、https://<example.com>/__login__/saml の形式で URL を入力します。

    b. [応答 URL] ボックスに、https://<example.com>/__login__/saml/acs のパターンを使用して URL を入力します

  6. アプリケーションを SP 開始モードで構成する場合は、 [追加の URL を設定します] をクリックして次の手順を実行します。

    [サインオン URL] ボックスに、https://<example.com>/ という形式で URL を入力します。

    注意

    これらは実際の値ではありません。 実際の識別子、応答 URL、サインオン URL でこれらの値を更新します。 それらは、RStudio Connect SAML Authentication のサーバー アドレス (上記例の https://example.com) から判別されます。 問題が発生した場合は、RStudio Connect SAML Authentication のサポート チームに連絡してください。 [基本的な SAML 構成] セクションに示されているパターンを参照することもできます。

  7. RStudio Connect SAML Authentication アプリケーションは、特定の形式の SAML アサーションを使用するため、カスタム属性のマッピングをご自分の SAML トークンの属性の構成に追加する必要があります。 次のスクリーンショットは、既定の属性の一覧を示しています。ここで、nameidentifieruser.userprincipalname にマップされています。 RStudio Connect SAML Authentication アプリケーションでは、nameidentifieruser.mail にマップされると想定されているため、 [編集] アイコンをクリックして属性マッピングを編集し、属性マッピングを変更する必要があります。

    image

  8. Set up Single Sign-On with SAML\(SAML でのシングルサインオンの設定 ページの SAML 署名証明書 セクションで、コピー ボタンをクリックして App Federation Metadata Url\(アプリのフェデレーション メタデータ URL) をコピーして、コンピューターに保存します。

    The Certificate download link

Microsoft Entra テスト ユーザーを作成する

このセクションでは、B.Simon というテスト ユーザーを作成します。

  1. Microsoft Entra 管理センターユーザー管理者以上でサインインしてください。
  2. [ID]>[ユーザー]>[すべてのユーザー] の順に移動します。
  3. 画面の上部で [新しいユーザー]>[新しいユーザーの作成] を選択します。
  4. [ユーザー] プロパティで、以下の手順を実行します。
    1. "表示名" フィールドに「B.Simon」と入力します。
    2. [ユーザー プリンシパル名] フィールドに「username@companydomain.extension」と入力します。 たとえば、「 B.Simon@contoso.com 」のように入力します。
    3. [パスワードを表示] チェック ボックスをオンにし、 [パスワード] ボックスに表示された値を書き留めます。
    4. [Review + create](レビュー + 作成) を選択します。
  5. [作成] を選択します。

Microsoft Entra テスト ユーザーを割り当てる

このセクションでは、B.Simon に RStudio Connect SAML Authentication へのアクセスを許可することで、このユーザーがシングル サインオンを使用できるようにします。

  1. クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。
  2. [ID]>[アプリケーション]>[エンタープライズ アプリケーション]>[RStudio Connect SAML Authentication] の順に移動します。
  3. アプリの概要ページで、[ユーザーとグループ] を選択します。
  4. [ユーザーまたはグループの追加] を選択し、 [割り当ての追加] ダイアログで [ユーザーとグループ] を選択します。
    1. [ユーザーとグループ] ダイアログの [ユーザー] の一覧から [B.Simon] を選択し、画面の下部にある [選択] ボタンをクリックします。
    2. ユーザーにロールが割り当てられることが想定される場合は、 [ロールの選択] ドロップダウンからそれを選択できます。 このアプリに対してロールが設定されていない場合は、[既定のアクセス] ロールが選択されていることを確認します。
    3. [割り当ての追加] ダイアログで、 [割り当て] をクリックします。

RStudio Connect SAML Authentication の SSO の構成

RStudio Connect SAML Authentication でシングル サインオンを構成するには、上記で使用された [アプリのフェデレーション メタデータ URL][サーバー アドレス] を使用する必要があります。 これは、/etc/rstudio-connect.rstudio-connect.gcfg にある RStudio Connect SAML Authentication 構成ファイルで行います。

これは、構成ファイルの例です。

[Server]
SenderEmail =

; Important! The user-facing URL of your RStudio Connect SAML Authentication server.
Address = 

[Http]
Listen = :3939

[Authentication]
Provider = saml

[SAML]
Logging = true

; Important! The URL where your IdP hosts the SAML metadata or the path to a local copy of it placed in the RStudio Connect SAML Authentication server.
IdPMetaData = 

IdPAttributeProfile = azure
SSOInitiated = IdPAndSP

IdPAttributeProfile = azure の場合、このプロファイルによって NameIDFormat を永続にするなどの設定が行われ、構成ファイルに定義されているその他の指定の属性がオーバーライドされます。

これは、RStudio Connect API を使用して事前にユーザーを作成し、ユーザーが初めてログインする前にアクセス許可を適用する場合に問題になります。 NameIDFormat は emailAddress かその他の一意の識別子に設定します。永続に設定されると、値がハッシュされ、その値が何であるか、事前にわからなくなるためです。 そのため、この API の使用は機能しません。 SAML のユーザーを作成するための API: https://docs.rstudio.com/connect/api/#post-/v1/users

そのため、この状況では、構成ファイルにこれを含めることが推奨されます。

[SAML]
NameIDFormat = emailAddress
UniqueIdAttribute = NameID
UsernameAttribute = http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
FirstNameAttribute = http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
LastNameAttribute = http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
EmailAttribute = http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailAddress

サーバー アドレスServer.Address 値に格納し、アプリのフェデレーション メタデータ URLSAML.IdPMetaData 値に格納します。 このサンプル構成では、暗号化されていない HTTP 接続を使用しますが、Microsoft Entra ID では暗号化された HTTPS 接続を使用する必要があることに注意してください。 RStudio Connect SAML Authentication の前面にリバース プロキシを使用するか、HTTPS を直接使用するように RStudio Connect SAML Authentication を構成することができます。

構成に問題がある場合は、RStudio Connect SAML Authentication の管理ガイドをお読みいただくか、ヘルプについてのメールを RStudio のサポート チームまで送信してください。

RStudio Connect SAML Authentication のテスト ユーザーの作成

このセクションでは、Britta Simon というユーザーを RStudio Connect SAML Authentication に作成します。 RStudio Connect SAML Authentication では、Just-In-Time プロビジョニングがサポートされています。この設定は既定で有効になっています。 このセクションでは、ユーザー側で必要な操作はありません。 ユーザーがまだ RStudio Connect SAML Authentication に存在しない場合は、RStudio Connect SAML Authentication にアクセスしようとしたときに新しいユーザーが作成されます。

SSO のテスト

このセクションでは、次のオプションを使用して Microsoft Entra のシングル サインオン構成をテストします。

SP Initiated:

  • [このアプリケーションをテストします] をクリックすると、ログイン フローを開始できる RStudio Connect SAML Authentication のサインオン URL にリダイレクトされます。

  • RStudio Connect SAML Authentication のサインオン URL に直接移動し、そこからログイン フローを開始します。

IDP Initiated:

  • [このアプリケーションをテストします] をクリックすると、SSO を設定した RStudio Connect SAML Authentication に自動的にサインインされるはずです。

また、Microsoft マイ アプリを使用して、任意のモードでアプリケーションをテストすることもできます。 マイ アプリで [RStudio Connect SAML Authentication] タイルをクリックすると、SP モードで構成されている場合は、ログイン フローを開始するためのアプリケーション サインオン ページにリダイレクトされます。IDP モードで構成されている場合は、SSO を設定した RStudio Connect SAML Authentication に自動的にサインインされます。 詳細については、「Microsoft Entra のマイ アプリ」を参照してください。

次のステップ

RStudio Connect SAML Authentication を構成したら、組織の機密データを流出と侵入からリアルタイムで保護するセッション制御を適用することができます。 セッション制御は、条件付きアクセスを拡張したものです。 Microsoft Defender for Cloud Apps でセッション制御を強制する方法をご覧ください。