SAMLを用いた認証とアクセス制御
  • 23 Sep 2022
  • 1 読む分
  • 寄稿者

SAMLを用いた認証とアクセス制御


目的

アクセスポリシーを定義し、組織でSAMLを管理するための手順と方法論

SAMLは、組織が既存のIDプロバイダー(IdP)を使用して、Tulipユーザーの認証とアクセス権を管理することを可能にします。このガイドでは、エンタープライズレベルのSAML導入の発見と実装のプロセスを詳しく説明します。単一サイトの場合は、こちらのサポート記事を参照してください。

ハイレベルなプロセス

事前作業

Tulipのユーザー・ロールを理解する

従業員をロールベースグループにバケットする

組織内で誰がIdPとTulipを設定するかを確認します。

既存のユーザーを移行する必要があるかどうかを判断する

新しいサイトごとに

Tulipは、あなたのサイトでSAMLを有効にします。

組織でSAMLを設定し(IdPとTulipの両方で)、ユーザーにアクセスを許可する。

新規サイト作成プロセス

Tulip Customer Success Managerに、SAMLを使用した新しいサイトを作成したい旨のリクエストを送信してください。以下を提供する必要があります。

  • サイト名とURL
  • ログインして SAML を構成する組織内の担当者の名前と電子メール

Tulip はサイトを作成し、SAML を有効にします。

設定担当者は、サイトにログインするための電子メールを受信し、ここで説明されているようにSAMLを設定する。彼らは、以下に定義する2つのアクセス戦略に基づいて、サイトを構成する。

ユーザによるテスト・アクセス

:::(情報) (注意:)
完了したら、アカウント所有者は SAML を設定した人のユーザアカウントを削除する必要があります。その人のアカウントは Tulip のユーザ名とパスワードを使用しているからです。その人が将来的にSAMLのメンテナンスを行うのであれば、アカウントオーナーとしてのアクセス権を与え、将来的な設定のためにSAMLでサインインする必要がある。

Tulipが作成したSAML証明書の有効期限は1年です。Tulipは、証明書をローテーションするために、2週間前にあなたのチームに通知するように連絡を取ります。
:::

アクティブサイトSAML変換プロセス

上記と同じですが、SAMLを有効にする前に、既存のすべてのユーザーをTulipアカウントからSAMLアカウントに変換する必要があります。このために、すべてのユーザの電子メールとIdP が提供するNameId のリストが必要である。私たちは、最小限のダウンタイムでその変換を行うために、設定の責任者と協力します。既存のユーザーが不要な場合は、単純にすべてのユーザーを削除することができます。ただし、これらのユーザーにリンクされている完了などの既存のデータは、新しいユーザーには移行されないことに留意してください。こちらのドキュメントをご覧ください。

参考資料

Tulip for Azure Active Directoryの設定方法については、こちらをご覧ください。

Accessの設定

LTS 6

LTS 6のWorkspacesのリリースに伴い、SAML認証戦略が変更され、組織がITに不要な負担をかけることなくユーザーを管理できるようになりました。

SAML の変更点

認証に 2 つのオプションが追加されました。

SAML カスタムロールマッピング

最初のログイン時に、ユーザーはロール属性で示されるグループに基づいてロールを割り当てられます。それ以降、Tulipはそのユーザーのrole属性を読み込まず、ロールの変更はアカウント所有者がプラットフォームで行う必要があります。

{height="" width=""}.

この方法を選択した場合、Tulipへのアクセスが必要なすべてのユーザーに適切なロールを追加するよう、IdPチームに依頼する必要があります。

デフォルトのロールマッピング

初回ログイン時には、すべてのユーザーにデフォルトのアクセスレベル(Viewer with Player access)が与えられます。アカウント所有者は、その後、ロールを適切なレベルに調整する必要があります。

{height="" width=""}.

アクセスコントロール

Tulipにアクセスするために、ユーザーが特定の値を持っている必要があるアクセス制御属性を追加することを選択できます。これは特にデフォルトマッピングのシナリオに関連しており、ロールやワークスペースに関係なく、誰がTulipにアクセスできるかを決めたい場合に有効です。

例えば

  • ユーザーはTulipAccessControl属性がTrueに設定されていなければなりません。
  • ユーザーはTulipUsersグループに属し、TulipAccessControl属性を通して公開されなければならない(以下の例を参照してください)。

{height="" width=""}.

Access Controlを使用する場合、IdPチームがTulipにアクセスするすべてのユーザーに、定義された属性と値を追加するよう依頼する必要があります。

ワークスペース

ワークスペースの詳細については、こちらをご覧ください。

ロール属性と同様に、ユーザーをワークスペースにマッピングするオプションが提供されます。

SAMLカスタムワークスペースマッピング

初回ログイン時、ユーザはワークスペース属性で指定されたグループに基づいてワークスペースへのアクセスを割り当てられます。その後、Tulipはそのユーザーのワークスペース属性を読み込まなくなり、ワークスペースの変更はアカウント所有者がプラットフォームで行う必要があります。

{height="" width=""} です。

この方法を選択した場合、Tulipへのアクセスを必要とするすべてのユーザーに適切なワークスペースを追加するよう、IdPチームに依頼する必要があります。

デフォルトのワークスペース・マッピング

初回ログイン時には、すべてのユーザーにデフォルトのワークスペースへのアクセスが許可されます。アカウント所有者は、ワークスペースのアクセス権を調整することができます。

{height="" width=""}.


アクセス グループの作成

カスタムロールマッピングオプションの場合(LTS 6以前のデフォルト)。

Tulipの標準的なアクセスグループを作成します。

すべてのユーザーは、IdPのユーザー名とパスワードで認証された後、Tulipが権限を決定するために使用する、IdPで指定されたロール属性が必要です。また、このロールフィールドを使用して、標準的な命名規則を使用して、どのサイトにアクセスできるかを決定することができます。ロールフィールドは単なるセット変数ですが、ユーザーをTulipの特定のグループに割り当て、それらを属性にマッピングすることをお勧めします。

役割

チューリップのアクセスロールをここで確認します。すべてのユーザーは少なくとも1つのロールを必要とします。もしユーザーが複数のロールを持つ場合、Tulipは最も高いアクセス権を持つロールを選択します。

ロールの例は、アカウント所有者です。

:::(情報) (注意)
サイトごとに最低1人のアカウント所有者が必要です。
:::

サイト

例えば、あなたの組織には2つのサイトがあり、それぞれにチューリップインスタンスがあるとします。

それぞれのサイトを所在地で表します(それぞれテキサスとロンドン)。

2つのサイトを組み合わせる

この2つのサイトを組み合わせて、ユーザーを割り当てるためのグループマトリックスを作成できます。組織では、値をTulipと付けたり、前に付けたりして、フィルタリングしやすくすることをお勧めします。

規約:tulip-siteRole

| --- | --- | --- |
| | acme-texas.tulip.co | acme-london.tulip.co
| アカウントオーナー|tulip-texasAccountOwner|tulip-londonAccountOwner|。
| アプリケーション管理者|tulip-texasApplicationSupervisor|tulip-londonApplicationSupervisor
| ビューワー|チューリップテキサス・ビューワー|チューリップロンドン・ビューワー|Tulip-texasViewer
| オペレータ|tulip-texasOperator|tulip-londonOperator|。
| ...

Jane SmithがTexasサイトのサイトリーダーである場合、彼女をtulip-texasAccountOwnerという グループに所属させます。Jane SmithがLondonサイトの閲覧権限も必要な場合、彼女をtulip-londonViewerという グループに追加することができます。

これらのグループをTulipの属性として公開する

IDPでは、ジェーンはtulip-roleという属性を持ち、彼女が所属するグループのうち、接頭辞「tulip-」を含むものがマッピングされるはずです。Tulipにサインインすると、tulip-role属性はtulip-texasAccountOwnerとtulip-londonViewerという2つの値を持つことになります。

グローバルロール

また、例えばビューワーとして、グローバルなアクセスロールを作成したい場合もあるでしょう。その場合のフォーマットは次のようになります。

tulip-globalViewer

:::(情報) (注意:)
グローバルビューワグループのメンバーであるユーザーが、より多くのアクセス権を持つロールを持つサイトにログインした場合、Tulipはそのユーザーに利用可能な最高のアクセス権を提供します。
:::


この記事は役に立ちましたか?