samlSettings エンティティ
この記事では、Tableau Server でsamlSettings
エンティティのキーと値を含む構成ファイルを使用してサーバー全体の SAML を構成するためのテンプレートとリファレンスを提供します。この情報はサーバー全体の SAML の構成 の SAML 構成の手順を補完します。
SAML 構成テンプレートを作成し、Tableau Server に適用するには、次の手順を完了します。
テンプレートと、それがどのように構築されているかについて説明する次の 2 つのセクションを確認します (テンプレートのカテゴリーと定義およびsamlSettings 構成テンプレート)。
テンプレートに示される JSON コードを新しいテキスト ファイルに貼り付けて、.json の拡張子を使って保存します。
SAML 構成エンティティ リファレンス を必要がある個所に値を提供するために役立てます。
環境に応じてオプションのキー/値のペアを追加します。たとえば、SAML 証明書キー ファイルにパスフレーズが必要な場合、tsm configuration set コマンドを使用して
wgserver.saml.key.passphrase
パラメーターでパスワードを指定する必要があります。
テンプレートのカテゴリーと定義
テンプレートは各キー値にプレースホルダーを使用します。プレースホルダーは次のようにカテゴリー分けされます。
Required (必須):
"required"
値の属性は、構成コマンドを実行する前に有効なデータで置き換える必要があります。有効な値については、構成ファイル リファレンスを参照します。Hard-coded (ハードコード): 下線 (_) が前置されている属性名。たとえば、
"_type"
はハードコード値を保持します。このような値は変更しないでください。既定値:
"required"
以外の値に設定されている属性は既定値です。これらは必須の属性で、環境に応じて変更することができます。Empty sets (空のセット): 空の (
""
) 値は、そのまま渡すことも、インストール時に値を指定することもできます。
重要: エンティティ オプションは、すべて大文字と小文字を区別します。
samlSettings 構成テンプレート
このコードをテキスト ファイルに貼り付けて、下記のリファレンスを使用してお使いの環境に合わせてカスタマイズします。
{ "configEntities": { "samlSettings": { "_type": "samlSettingsType", "enabled": true, "returnUrl": "required", "entityId": "required", "certFile": "required", "keyFile": "required", "idpMetadataFile": "required", "idpDomainAttribute": "", "idpUsernameAttribute": "required" } } }
SAML 構成エンティティ リファレンス
次のリストは、"samlSettings"
エンティティ セットに含むことができる、すべてのオプションをまとめたものです。
idpMetadataFile
必須。IdP で生成された XML ファイルのパスとファイル名。XML メタデータにはユーザー名属性 (アサーション) が含まれている必要があります。
サーバー全体の SAML の構成に説明されている手順を完了した場合は、ここに入力する値は次のようになります。
/var/opt/tableau/tableau_server/data/saml/<metadata-file.xml>
enabled
true | false
必須。SAML 認証が有効かどうかを示します。他の必要な SAML 構成オプションを設定するまで、このオプションを
true
に設定しないでください。
returnURL
通常は外部 URL であり、ユーザーが Tableau Server にアクセスするためにブラウザーに入力する、
https://tableau_server.example.com
など URL です。IdP を構成するときに、この値を使用して ACS URL 属性を作成します。
entityId
必須。サービス プロバイダーのエンティティ ID の値。ここでは Tableau Server がサービス プロバイダーです。
IdP に対する Tableau サーバの構成を識別します。
returnURL
オプションと同じ値を入力することを推奨します。
idpUsernameAttribute
必須。IdP メタデータで、ユーザー名値の指定に使用する属性を検索し、属性の名前を入力します。既定は
username
です。
certFile
必須。SAML 用の x509 証明書 (.crt) ファイルの場所およびファイル名を入力します。例:
/var/opt/tableau/tableau_server/data/saml/<file.crt>
詳細については、SAML 要件およびサーバー全体の SAML の構成を参照してください。
keyFile
必須。証明書ファイルに付属している、秘密鍵のファイル (.key ファイル) の場所を指定します。例:
/var/opt/tableau/tableau_server/data/saml/<file.key>
注: パスフレーズを必要とする RSA PKCS#8 キーを使用している場合は、configKey エンティティ (構成ファイルの例を参照) を使用してパスフレーズを設定するか、tsm configuration set を使用してパスフレーズを設定する必要があります。これらのメソッドを使用するパスフレーズのキーは
wgserver.saml.key.passphrase
です。値は null 以外の文字列である必要があります。
idpDomainAttribute
LDAP または Active Directory を使用する組織の場合、Tableau Server がドメイン名を決定するために参照する SAML 属性をこの値で指定します。たとえば、IdP が
domain
属性でドメイン名を指定する場合、この値にdomain
を指定します。注: 複数のドメインからユーザーがサインインしている組織の場合、この値は必須です。このキーの値を指定しない場合、使用される値は Tableau Server の ID ストアの設定によって変わります。
ローカル ID ストアの場合、
idpDomainAttribute
の値は無視されます。Active Directory または LDAP の ID ストアの場合、Tableau では構成設定
wgserver.domain.default
から FQDN を使用します。wgserver.domain.default
の値を取得するには、次のコマンドを実行できます。tsm configuration get --key wgserver.domain.default
desktopNoSAML
true | false
任意の項目です。Tableau Desktop からユーザーがサインインした場合に SAML 認証の使用を許可します。
既定ではこれが設定されていないため、false に設定すると効果的な動作になります。Tableau クライアント アプリケーションからのシングル サインオンが IdP と連携しない場合、これを true に設定して Tableau Desktop を通じた SAML 認証を無効にすることができます。
appNoSAML
true | false
オプション。Tableau Mobile アプリの古いバージョンからのサインインに SAML の使用を許可します。Tableau Mobile アプリのバージョン 19.225.1731 以上を実行しているデバイスでは、このオプションが無視されます。Tableau Mobile アプリのバージョン 19.225.1731 以上を実行しているデバイスを無効にするには、Tableau Server でクライアント ログイン オプションとしての SAML を無効にします。
logoutEnabled
true | false
任意の項目です。SAML でログオンしたユーザーに対して、シングル ログアウトを有効にします。既定では
true
です。IdP 構成メタデータに、POST バインディングを持つシングル ログアウトのエンドポイントが含まれている必要があります。
この設定は、サーバー全体の SAML に適用されます。
false
に設定すると、Tableau Server はシングル ログアウトを試行しません。
logoutUrl
オプション。ユーザーがサーバーからサインアウトした後のリダイレクト先 URL を入力します。このオプションを設定するには、
logoutEnabled
をtrue
に設定する必要があります。既定では Tableau Server のサインイン ページです。絶対 URL または相対 URL を指定できます。
maxAuthenticationAge
オプション。IdP でのユーザーの認証と AuthNResponse メッセージのプロセスとの間で許容される最大秒数を指定します。既定値は -1 です。これは、maxAuthenticationAge が設定されていないか、既定で 無視されることを意味します。2022 年 2 月以前の既定値は 7200 (2 時間) でした。
セッションの長さを最適化するには、IdP で設定されているのと同じタイムアウト値を使用します。
maxAssertionTime
オプション。作成から SAML アサーションが利用可能な最大秒数を指定します。既定値は 3000 (50 分) です。
sha256Enabled
true | false
任意の項目です。メッセージを IdP に送信するときに Tableau Server が使用する署名の種類。
true
に設定すると、Tableau Server は SHA 256 署名アルゴリズムでメッセージに署名します。false
に設定すると、Tableau Server は SHA 1 でメッセージに署名します。既定はtrue
です。このオプションは、次のメッセージに Tableau Server が署名する署名アルゴリズムを設定します。
- AuthnRequest メッセージ (
signRequests
が有効になっている場合) - LogoutRequest メッセージ (
logoutEnabled
が有効になっている場合)
- AuthnRequest メッセージ (
signRequests
true | false
任意の項目です。IdP に送信する AuthnRequests に Tableau サーバーが署名するかどうかを指定します。署名付き要求は、すべての IdP に必ずしも必要ではありません。SAML を構成する際に最も安全なオプションを確保するため、要求に署名することをお勧めします。IdP が署名付き要求を受け入れるかどうかを確認するには、IdP メタデータを調べます。
wantAuthnRequestsSigned
がtrue
に設定されている場合、IdP は署名付き要求を受け入れます。既定値は
true
です。署名付き要求を無効化するには、このオプションをfalse
に設定します。
acceptableAuthnContexts
オプション。SAML 属性
AuthNContextClassRef
を設定します。このオプション属性は、IdP が開始するフローで特定の認証の "コンテキスト" の検証を強制します。この属性の値をコンマ区切りのセットで設定します。この属性が設定されると、Tableau Server は、リストされている値の少なくとも 1 つが SAML 応答に含まれていることを検証します。SAML 応答に構成済みの値のいずれかが含まれていない場合、ユーザーが IdP によって正常に認証された場合でも、認証は拒否されます。このオプションを空白のままにすると、デフォルトの動作になります。正常に認証された SAML 応答を受け取ると、Tableau Server のセッションへの権限がユーザーに付与されます。
iFramedIdpEnabled
true | false
任意の項目です。規定値は
false
であり、埋め込みビュー上でユーザーがサインインボタンを選択したときに、IdP のサインイン フォームがポップアップ ウィンドウで開きます。true に設定し、既にサインインしているサーバー SAML ユーザーが埋め込みビューのあるウェブ ページに移動すると、ユーザーはビューを見るためにサインインする必要がありません。
IdP が iframe 内のサインインをサポートする場合にのみ、これを true に設定できます。この iframe オプションはポップアップを使用するよりも安全性が低くなるため、すべての IdP でサポートされているわけではありません。IdP のサインイン ページでクリックジャック攻撃防止機能を使用している場合 (ほとんどの場合で使用しています)、サインイン ページが iframe に表示されず、ユーザーはサインインできません。
お使いの IdP が iframe 経由でのサインインをサポートしていない場合、明示的に有効化する必要が生じることがあります。ただし、このオプションを使用できる場合でも、Tableau Server の SAML に対するクリックジャック攻撃防止機能が無効になるため、セキュリティ リスクが生じるおそれがあります。
Tableau Server に構成ファイルを渡す
構成テンプレートに含める各エンティティに適切な値を提供した後、次のコマンドを使って Tableau Server に .json ファイルを渡し、設定を適用します。
tsm settings import -f path-to-file.json
tsm pending-changes apply
関連項目
初回 SAML 構成を完了した後に、tsm authentication mutual-ssl <commands> を使用して追加の値を設定します。
SAML の構成のためのコマンド ライン リファレンスについては、tsm authentication saml <commands> を参照してください。