This is an auto-generated translation

SAML v2 の概要

SAML (Security Assertion Markup Language) は標準的な SSO フォーマットです。その XML ベースのフレームワークにより、電子署名された XML ドキュメントを介した情報交換によるシームレスな認証を可能にします。SAML v2 (別名 SAML 2.0) は、2005 年以来、Web ベースのクロスドメイン SSO を可能にする標準プロトコルとなっています。

SAML の詳細

認証フロー

alt

ベーシック SSO

選択した機能に関係なく、ベーシック SSO の設定要件は同じです。ロイヤルティまたはクレジット カードの実装を追加すると、追加情報が必要になります。

設定要件

テンプレートサイトへの SAML SSO アクセスを適切に設定するには以下が必要です。

  • 公開鍵証明書: SAMLファイルの認証には秘密鍵を使用し、Expediaは公開鍵で検証します。
  • 対象者: 対象者:SAMLアサーションが発行されるサービス・プロバイダ。AudienceRestriction パラメータ内で指定され、アサーションが指定された受信者のみに受け入れられるようにするため。
  • 発行者: SAMLアサーションを生成しデジタル署名するIDプロバイダ(IDP)エンティティ。
  • エンドポイントの詳細: 認証(Authn)エンドポイントは、認証要求が送信されるIDプロバイダのURLです。ユーザーが認証されると、Expedia SSOエンドポイントがSSOを開始するようにテンプレート サイトを構成する必要があります。
  • 許可リストに追加するIP: テンプレート サイトとエクスペディア間の移動を許可するIPのリスト。許可リストにないIPは(あなたの側でも私たちの側でも)、インバウンドとアウトバウンドの両方のSSOコールに接続性の問題を引き起こします。
  • ゲストフロー (isPassive) サポートの詳細: サイトがゲストを受け入れるか、ユーザが常にログインしてサイトのコンテンツにアクセスする必要があるか。

エクスペディアの標準的な SAML SSO 実装では、当社の公開鍵を使用して暗号化し、宛先エンドポイントを作成し、IP 許可リストを複製して妨害攻撃から保護します。

技術的要件 :

  • サイトで使用されている SAML 2.0
  • 秘密鍵は SAML レスポンス全体の署名に使用する必要があり、SAML ペイロードは Base64 でエンコードする必要がある
  • Expediaの公開鍵はアサーションの暗号化に使用され、その後Expediaの秘密鍵を使用して復号化されます。
  • SAML v2 標準に従って署名値を入力する
  • SAML レスポンスに宛先と受信者を含める
  • 適切な証明書を取得できるよう、SAML レスポンスに発行者を含める

ペイロードの詳細

顧客がIDプロバイダ(IdP)を介してログインすると、IDプロバイダは認証のためにペイロードと呼ばれる生成されたレスポンスをメインサイトに送信します。認証に成功すると顧客にアクセス権が付与されます。エクスペディアが提供するペイロードには以下のフィールドがあります。これらすべてのフィールドが必須というわけではありませんが、ユーザーエクスペリエンス (たとえば、ウェルカムメッセージに顧客の名前を表示するため) や検証の一環としてこれらのフィールドの一部を使用します。

フィールド説明必須/必須ではない
membershipId顧客アカウントの一意な識別子必須
relayState認証完了後に顧客がリダイレクトされる URL必須
languageIDサイトで表示可能な言語
channelTypeサイトが最適化されているプラットフォーム (値 : WEB、MOBILE、TABLET)
firstName顧客の名必須
middleName顧客のミドルネーム
lastName顧客の姓
email顧客のメールアドレス

ロイヤルティの追加

テンプレートサイトの一部として、お客様が旅行の購入時にロイヤルティポイント を獲得できる機能を含めることができます。また、貯まったロイヤルティポイントを旅行代金に充当することもできます。

標準実装と同じ設定要件が適用されます。

ペイロードの詳細

標準実装に記載されている属性に加えて、ロイヤルティの獲得と利用の機能には以下のアカウント (ProgramAccount) 属性が必要です。

フィールド説明必須/必須ではない
programIdロイヤルティプログラムのステータス識別子必須
programAccountNumber顧客が参加しているプログラムのアカウント番号 (別名 loyaltyAccountNumber)
lastFourDigitsOfCreditCard顧客が予約に使用したクレジットカードの下 4 桁
accountNameプログラムアカウント名
loyaltyConversionRatio支払いにおける獲得ポイント率 (例 : $1 = 1 ポイント)
loyaltyAccountBalance顧客が獲得したロイヤルティポイントの現在の残高必須

支払いカードの制限

ご予約の際には、貴団体のクレジットカードをご利用いただきます。すべてのテンプレートソリューションですべての主要なクレジットカードまたはデビットカード、および (米国では) PayPal を受け付けることができるため、これは必須ではありません。

クレジットカードの安全性と保管

組織のカスタムクレジット カードを使用して購入することを義務付けた場合でも、心配は無用です。クレジットカードは次のように扱われます。

  • 顧客のエクスペディアプロフィールにリンクされた、トークン化された形式でカード情報が保存されます。暗号化されていない状態で保存されることは決してありません。
  • 人間は暗号化されていないカードデータにアクセスできず、安全な IAM ログイン情報を使用しないと復号化できなくなっています。
  • カードがチェックアウトページにプリロードされると、カード番号ではなくカードの説明のみが表示されます。
  • 保存されたカードで予約を完了する場合、顧客はカードのセキュリティコードを入力する必要があります。

設定要件

標準実装の設定要件に加え、クレジットカードが追加されるとエクスペディアでセキュリティをさらに強化する必要があります。そのためには以下が必要です。

  • AuthnRequest パラメーターに使用するエンドポイント
  • 署名検証用の公開鍵

エクスペディアでは自社の秘密鍵を使用して AuthnRequest ペイロードに署名し、公開鍵を共有して貴社側で署名検証を実行してもらいます。

ペイロードの詳細

顧客がサイトにログインすると、標準実装で説明されている属性とともに、署名され暗号化されたアサーションを含むエンコードされた SAML レスポンスペイロードが、セキュアなエクスペディア SSO エンドポイントに送信されます。

Information

注意

ロイヤルティポイントを獲得するようにテンプレートサイトが設定されている場合は、ProgramAccount 情報も含まれます。

ペイロードには次のクレジット カードの詳細も含まれます。

フィールド説明必須/必須ではない
cardNumber請求対象のクレジットカードの番号必須
cardType使用されるカードの種類 (例 : Visa、MasterCard、American Express)必須
expirationDate使用されるクレジットカードの有効期限必須
addressCategoryCode使用されたカードに関連付けられているクレジットカード登録住所の種類 (例:自宅または会社)必須
firstAddressLineクレジットカード登録住所の 1 行目必須
secondAddressLineクレジットカード登録住所の 2 行目
thirdAddressLineクレジットカード登録住所の 3 行目
cityNameクレジットカード登録住所の市町村必須
provinceNameクレジットカード登録住所の都道府県必須
postalCodeクレジットカード登録住所の郵便番号必須
countryCodeクレジットカード登録住所の国コード必須

AuthnRequest

認証されていないユーザーがテンプレートサイトにアクセスすると、エクスペディアは AuthnRequestRelayState の両方のパラメーターをエンドポイントに送信します。これによりユーザーにログインを要求し、SSO プロセスを開始します。その後、顧客をエクスペディアのSSOエンドポイントにリダイレクトし、テンプレートサイトへのSSOを開始します。

AuthnRequest 要素には以下が含まれています。

フィールド説明必須/必須ではない
AssertionConsumerServiceURLユーザーがログインした後のエクスペディアテンプレートサイトへの URL必須
DestinationAuthnRequest をポストするエンドポイントの URL必須
Issuerデータの出所 (値 : Expedia-Test または Expedia-Prod)必須
Signatureメインサイトで検証される SSO 署名必須

詳細についてはペイロードサンプルをご参照ください。

エクスペディアのエンドポイント

ユーザーが認証されたら、{WLTP domain}/sso/saml にリダイレクトする必要があります。

このページは役に立ちましたか ?
このコンテンツに改善が必要な点があれば、
サービス向上にご協力いただきありがとうございます。