認証と承認

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Experience Manager(XM)を使用して、ポータルをホストしたり、WebサイトやWebショップを保護したりできます。このシステムには、ユーザー名/パスワード認証を備えた柔軟で統合された認証システムに加えて、フェデレーション認証などのカスタムまたはより高度な認証システムへの統合があります。また、きめ細かな認証が可能なため、Webサイトのセクション、ページ、さらには特定のコンテンツを保護できます。

認証および認可システム

Sitecoreは、Webサイト、Webショップ、またはポータル上のユーザーを認証し、データを保護するためと同じセキュリティ メカニズムを使用します。これは、管理インターフェイスのユーザーを認証および承認する場合と同じです。

つまり、管理者、コンテンツ作成者、マーケティング担当者、またはその他のユーザーがコンテンツ管理ロールを通じて提供されるSitecore管理ツールにアクセスしようとすると、デフォルトでログイン プロンプトが表示されます。

既定のセキュリティ認証および承認システムは、ユーザー資格情報を検証および保存するための標準的な方法であるMicrosoft ASP.NETメンバーシップに基づいています。ASP.NETメンバーシップは、さまざまなシステムで資格情報とユーザー プロファイルを格納およびアクセスするために、さまざまなプロバイダーを実装できます。デフォルトでは、SitecoreはSQLベースのASP.NETメンバーシップ プロバイダーを使用し、ユーザーはCoreデータベースに保存されます。

By default, Sitecore uses the Core database for storing ASP.NET membership data for both Sitecore users and website visitors.

したがって、ユーザーがログインすると、SitecoreはCoreデータベースに保存されているデータに対してユーザー名とパスワードを認証し、認証が成功すると、管理ツールへのアクセスを許可します。Sitecoreは、成功したかどうかに関係なく、すべての認証試行、およびユーザーとロールの作成、変更、削除をSitecore監査ログに書き込み、トレーサビリティを確保します。

管理者は、コンテンツ管理ロールを通じて提供されるユーザーマネージャーでユーザーを検索および 管理 できます。管理者は、たとえば、ユーザー アカウントの作成と削除、ユーザー プロファイルの詳細の変更、アカウントの無効化と有効化、パスワードの変更を行うことができます。また、承認用の ロールを作成および管理 し、ユーザーをロールに割り当てることもできます。また、ロール内にロールを作成して、権限階層を管理することもできます。

Sitecore administrators can manage users through the Content Management role.

さまざまなSitecore機能には、ユーザーやロールの管理、分析とレポートの表示、メール マーケティングやマーケティング オートメーションの管理など、機能の管理ツールにアクセスするための 一連のロール が付属しています。

コンテンツ管理の場合、ユーザーはコンテンツレベルで承認を受け取ります。これにより、ロールとユーザーを特定のコンテンツ階層に割り当てることができます。特定のサイト、サイトのセクション、コンテンツの種類などを管理するためのアクセス権を付与または制限できます。各コンテンツで、表示、作成、削除、編集の権限を制御できます。また、コンテンツへのアクセスをさらに細かく制御したり、特定のフィールドや言語へのアクセスを制限または許可したりすることもできます。

セキュリティ・ドメイン

ドメインは、Sitecore管理ユーザーをWebサイト上のユーザーまたはWebサイトへの訪問者から分離します。

セキュリティ・ドメインは、共通のルールと手順を持つユニットとして管理するセキュリティ・アカウント (つまり、ユーザーとロール) の集合です。ドメインは、論理的な関係を持つセキュリティ アカウントのコレクションです。たとえば、デフォルトでは、Sitecore管理インターフェイスを使用するアクセス権を持つすべてのアカウントはSitecoreドメインに属しますが、安全なWebサイトにアクセスできるすべてのアカウントはエクストラネット ドメインに属します。

Sitecoreは、ドメイン内のすべてのユーザーとロールを1つのASP.NETメンバーシップ プロバイダーを通じて管理し、複数のドメインで同じプロバイダーを共有できます。Sitecoreドメインとエクストラネット ドメインはどちらもSQLプロバイダーを使用し、Coreデータベースに保存されます。

Security domains segments users into groups allowing for easier administration. The default Sitecore and Extranet security domains are stored in the Core database.

ウェブサイト上のすべての訪問者は、関連付けられたユーザーアカウントを持っています。認証されていないユーザーのために、匿名ユーザーアカウントがあります。

匿名ユーザーが制限付きページにアクセスしたい場合、アクセス拒否メッセージを表示するか、ログインページにリダイレクトするようにシステムを設定できます。これは完全に構成可能であり、Webサイトのビジネス要件によって決定されます。

ウェブサイトがユーザーログインを許可している場合、ユーザーはユーザー名、パスワード、および場合によっては他のユーザープロファイル情報を提供することでウェブサイトに登録できます。ユーザー アカウントは、ASP.NETメンバーシップ プロバイダーを通じて作成され、Coreデータベースまたは別のASP.NETメンバーシップ プロバイダーに格納されます。

Webサイトのビジネス要件によって、ユーザー名の形式が決まります。ただし、同じドメイン内の2つのユーザー アカウントに同じユーザー名を持つことはできません。ユーザーが作成されると、Security APIを使用して1つ以上のセキュリティ ロールにすぐに関連付けることができます。ロールを使用して、Webサイト上のさまざまなセクションや機能についてユーザーを承認できます。

管理者は、Sitecore管理インターフェースを使用して、ユーザーのロール メンバーシップを変更できます。ユーザーアカウントに関連付けられたユーザープロファイルをカスタマイズしたり、カスタムフィールドを使用して拡張したりできます。企業がユーザーについて収集および保存したい必要な情報は、ユーザーアカウントと一緒にCoreデータベースに保存するか、別のASP.NETメンバーシッププロバイダーを通じて保存できます。Sitecoreユーザー管理ツールでカスタム ユーザー プロファイル フィールドを管理することもできます。

メモ

一部のASP.NETメンバーシップ プロバイダーは、Sitecoreまたは管理者の書き込みアクセスを制限しているため、Webサイトまたは管理ツールによるユーザーの作成と管理へのアクセスが制限されている場合があります。

訪問者がログインしようとすると、指定されたユーザー名とパスワードがユーザーアカウントのCoreデータベースに対して認証されます。成功すると、訪問者は認証されたユーザーアカウントに関連付けられ、ユーザーアカウントのメンバーシップロールに一致する認証を取得します。

すべてのWebサイト訪問者のログイン、登録、またはユーザーアカウントの変更は、コンプライアンスと透明性のために監査ログに記録されます。

Sitecore実装がSitecore Experience Platformを実行している (つまり、xConnectとSitecore Experienceデータベースを使用している) 場合、xConnect Collectionロールを通じてxConnectに対してユーザー アカウントを登録でき、ユーザー アカウントに対するユーザーの行動が追跡されます。連絡先を読み込み、以前の訪問や以前の行動、さらには他のデバイスでの訪問や行動に基づいてコンテンツとエクスペリエンスをパーソナライズすることが可能になりました。

You can track and store a users behavior through the xConnect Collection role if your implementation is running the Sitecore Experience Platform.

訪問者がセキュア・ページに再度アクセスし、ユーザー・アカウント(またはユーザー・アカウントに関連付けられたロール)がページ・コンテンツを読み取る権限を持っている場合、ビジターにはセキュア・ページが表示され、ユーザー・アカウントおよびユーザー・プロファイルに保存されている情報をパーソナライズに使用できます。

その他のセキュリティプロバイダー

ドメインを独自のSQLデータベースに分割できます。また、他の (または組み合わせた) ASP.NETメンバーシップ プロバイダーを使用してSitecoreドメインのActive Directoryに統合したり、他のソースに対してカスタムASP.NETメンバーシップ プロバイダーを作成したりすることもできます。

Sitecore security domains can be separated into their own databases, and you can a mix of ASP.NET membership providers.

Sitecoreは、カスタム認証システムと統合するための一時的なユーザー アカウント システムであるVirtual Usersもサポートしています。仮想ユーザーは、ASP.NETメンバーシップ プロバイダーを通じて取得または格納されるのではなく、プライベート セッション状態ストアに一時的に作成されます。このユーザー認証のアプローチには、当然ながら、Security APIによるカスタムのソリューションコードが必要です。また、Sitecoreユーザー管理ツールでユーザー アカウントを管理することもできなくなります。仮想ユーザーのロールまたはユーザー プロファイル情報も、カスタム ソリューション コードを使用して割り当てる必要があります。

フェデレーション認証

Sitecoreは、ASP.NETメンバーシップ プロバイダーによる認証に加えて、ASP.NET IdentityとOauthおよびOwin標準による フェデレーション認証もサポートしています。フェデレーション認証を使用すると、ユーザーはFacebook、Google、Microsoftアカウント、Twitter、Azure AD、ADFSなどの外部プロバイダーを通じてSitecoreまたはWebサイトにログインできます。フェデレーション認証では、使用する外部プロバイダーに応じて、特定の方法でSitecoreを設定する必要があります。

訪問者がフェデレーション認証を使用してWebサイトにログインする場合、通常、訪問者はプロバイダーへのリンクをクリックするか、Webサイト上の特定のログイン ページにアクセスします。これにより、訪問者は外部プロバイダーの認証ページにリダイレクトされ、そこで訪問者は外部プロバイダーに対して認証されます。

成功した場合、外部プロバイダーは通常、認証トークンを取得し、トークンを使用して認証されたユーザーをSitecoreのフェデレーション認証ハンドラーにリダイレクトします。

外部プロバイダーによっては、Sitecoreは提供されたトークンを使用してユーザーのIDを確認し、クレームと呼ばれる追加情報を外部システムから取得できます。

Sitecoreでは、訪問者は標準のセキュリティAPIを介してログインし、ドメイン内のユーザー アカウントとユーザー プロファイルが付与されます。Sitecoreは、外部システムから取得したクレームをユーザー プロファイルのフィールドにマッピングし、Webサイトでユーザー情報またはパーソナライゼーションとして使用できます。

Federated authentication allows you to use a third party authentication service such as Facebook or Google and store authorize against a virtual or persisted user.

ビジター ユーザ アカウントは、次のように設定できます。

  • 仮想ユーザー – 一時的で、セッションが存在する間のみ存在します。

  • 永続化 – ドメインに設定されたASP.NETメンバーシッププロバイダーを使用してユーザーを格納します。

フェデレーション認証は、WebサイトとSitecoreログインの両方、つまりContent DeliveryロールとContent Managementロールの両方で機能します。

プライバシーとセキュリティ

処理および集計データフローの各ロールのプライバシーおよびセキュリティに関する考慮事項については、アーキテクチャおよびロール のドキュメントを参照してください。

この記事を改善するための提案がある場合は、 お知らせください!