このページの一部は機械翻訳されている場合があります。

SAMLアサーションの問題を特定する

この記事の指示を使用して、SAMLアサーションの潜在的な問題を特定します。

ご利用可能なユーザー

プラン:

  • Enterprise

権限:

  • システム管理者

この機能が Smartsheet リージョンまたは Smartsheet Gov に含まれているかどうかを確認してください。

前提条件

まず、アサーションをキャプチャする必要があります。編集方法をご確認ください


ステップ1:XMLファイルをクリーンアップする(オプション)

XMLアサーションファイルは、テキストの壁のように表示されることがあり、探している要素を見つけるのが難しくなります。

  1. アサーションのテキストをコピーし、xmlprettyprint.comに移動します。コピーをテキストフィールドに貼り付け、Pretty Print XMLボタンを選択します。もしxmlprettyprint.comが空白の画面を返す場合は、jsonformatter.org/xml-pretty-printを試してください。 
  2. ファイルを保存します。 

ステップ2:アサーションが暗号化されていないことを確認する

Ctrl + F(MacではCmd + F )を使用して、ファイル内を検索します:

  • EncryptedAssertion
  • EncryptedData
  • CipherData

これらの値が存在する場合は、IdP管理者にアサーションの暗号化を無効にして、新しい非暗号化アサーションを生成させてください。Smartsheetサポートはファイルの復号を試みることができますが、社内リソースを使用する方が新しいアサーションを生成するのが早いです。 


ステップ3:アサーションを分析する

アサーションには、以下に詳述されているすべての項目が含まれています。各項目が期待通りに表示されることを確認してください。 

証明書

  • 証明書は、Smartsheetに渡される情報を認証します。証明書が古いか、合格しない場合、ログインプロセスは完了しません。
  • メタデータ内の証明書を確認してください。複数の証明書が存在する可能性があり、キーの有効期限が正確でない場合があります。

 

アサーション内の証明書を見つけてください。
  1. アサーションファイルを開いてください。 
  2. Ctrl + F (MacではCmd + F )を使用して509Certificateを検索します。
  3. > の後、閉じる の前にあるすべてのデータをコピーします。

 

証明書を確認してください。 
  1. https://redkestrel.co.uk/products/decoder/に移動します。
  2. 証明書データをテキストフィールドに貼り付け、Decodeボタンを選択します。
  3. すべてのフィールドが合格していることを確認してください。
  4. 証明書が組織のメタデータ内の証明書と一致していることを確認してください。IdP管理者に、アサーション情報を照合するためにIdPからメタデータをエクスポートするよう依頼してください。

    証明書が証明書チェックやデコーダーに合格しない場合は、証明書を更新するか、IdPから最新のメタデータをSmartsheetに追加してください。 

 

属性クレーム

アサーションには、長いクレームまたは属性のリストが含まれています。Smartsheetは認証に2つのクレームのみを必要とします:Persistent ID(Name IDとも呼ばれる)クレームとEmail Addressクレーム。 

Smartsheetは2つのことを確認します: 

  • クレームは正しく設定されていますか?
  • 正しい情報が渡されていますか?

すべてのクレームがこのヘルプセンターの記事に示されているように設定されていることを確認してください。 

 

Persistent IDを確認してください。

Ctrl + F (Macの場合はCmd + F)を使用して、「NameID」または「name=」を検索します。 

SAMLを初めて設定する際、ユーザーはPersistent IDクレームのためにNameID要素を設定できます。以下のフォーマットは受け入れられる例です。 

  • urn:oasis:names:tc:SAML:1.1:nameid-­format:emailAddress
  • urn:oasis:names:tc:SAML:2.0:nameid­-format:email
  • urn:oasis:names:tc:SAML:2.0:nameid-­format:persistent
  • urn:oasis:names:tc:SAML:2.0:nameid-­format:unspecified
  • urn:oasis:names:tc:SAML:1.1:nameid­-format:unspecified
  • urn:oid:1.3.6.1.4.1.5923.1.1.1.10

以下はNameID Persistent ID属性の例です: 

user@domaindotcom

太字は確認すべきクレームの部分を強調しています。NameIDを使用する場合は、上記の例のいずれかと一致する必要があります。 

イタリック体は、IdPがユーザーを認証するためにSmartsheetに渡す情報を強調しています。Persistent/name IDの場合、これは希望するSmartsheetアカウントのメールアドレスである必要はありませんが、しばしばそうです。 

もう一つの一般的な選択肢は、その人のIdPユーザーIDです。上記のイタリック体のセクションにユーザーのメールが含まれていない場合、これは潜在的な問題として記録してください。  

SAMLを初めて設定する際、ユーザーはNameID要素を使用しないことを選択し、代わりに単純なPersistent ID属性を渡すこともできます。

受け入れられるPersistent ID属性は、上記の例のように(これらの6つの受け入れられるクレームのいずれかを含む)または以下の例のように(5つの受け入れられるクレームのいずれかを含む)見えることがあります: 

  • name="eduPersonPrincipalName" nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:basic"
  • name="http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname""
  • name="persistent" nameFormat="urn:oasis:names:tc:SAML:2.0:nameid-­format:persistent"
  • name="urn:oid:1.3.6.1.4.1.5923.1.1.1.6" nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:uri"
  • name="eduPersonPrincipalName" nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:uri"

以下はPersistent ID属性の例です:
 

user@domaindotcom

クレームは太字でフォーマットされています。この属性は、このクレームが受け入れられる例と一致する場合、使用可能です。イタリック体のテキストを確認して、希望するSmartsheetアカウントのメールアドレスが渡されていることを確認してください。上記のイタリック体のセクションがメールでない場合、これは潜在的な問題として記録してください。

 

メールアドレス属性

Ctrl + F (Macの場合はCmd + F)を使用して、"emailaddress"または"nameFormat"を検索します。 

メールアドレス属性は、Smartsheetアカウントの確認済みメールアドレスを通過する必要があり、上記のPersistent属性のようなNameID要素は受け付けません。また、以下のいずれかのクレームと一致し、正しいメールを通過する必要があります。 

  • name="email" name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress""
  • name="emailAddress",nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:basic"
  • name="emailaddress",nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:basic"
  • name="email",nameFormat="urn:oasis:names:tc:SAML:2.0:attrname­-format:basic"
  • name="saml_username",nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:basic"
  • name="emailAddress",nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:unspecified"
  • name="emailaddress",nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:unspecified"
  • name="emailaddress",nameFormat="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress""
  • name="urn:oid:0.9.2342.19200300.100.1.3",nameFormat="urn:oasis:names:tc:SAML:2.0:attrname-­format:uri"
  • name="mail",nameFormat="urn:oasis:names:tc:SAML:2.0:attrname­-format:basic" 

これがアサーションにどのように表示されるかの例です: 

name="emailaddress"nameFormat="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress">http://www.w3.org/2001/XMLSchema"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">;user@domaindotcom

クレームは緑と青で強調表示されています。このクレームが受け入れられた例と一致する限り、この属性は問題ありません。紫のテキストを確認して、希望するSmartsheetアカウントのメールアドレスが通過していることを確認してください。 

イタリック体のセクションのメールが正しくない場合は、IdPでユーザーの属性を更新するか、Smartsheetで他のメールを確認済みの代替メールアドレスとして追加してください。最良の進め方を決定するために、IdP管理者に確認してください。

 

調査結果を確認してください

アサーションは以下の要件を満たす必要があります: 

  1. 証明書は通過し、組織のメタデータ内の証明書と一致します。
  2. Persistent ID/NameID属性は、例のいずれかと一致し、希望するSmartsheetアカウントからのメールアドレスを通過します。

    時々、このクレームは別の値を通過することがありますが、それは問題ありません。通過している値が意図されたものであることを確認してください。他に問題がなければ、そのクレームのために確認済みのメール(Smartsheetアカウント上)を通過させてみてください。 

  3. メールアドレス属性はクレームの例と一致し、希望するSmartsheetアカウントからのメールアドレスを通過します。