Google AppsをIDPとして使用してUmbraco SAML SSOを設定するためのガイド
概要
Umbraco SAML シングルサインオン (SSO)プラグインを使用すると、Umbraco アプリケーションでSAML シングルサインオンを有効にできます。シングルサインオンを使用すると、1 つのパスワードだけでUmbraco アプリケーションとサービスにアクセスできます。このプラグインは、すべてのSAML 準拠の ID プロバイダーと互換性があります。ここでは、 Google Apps をIDプロバイダーとして、 UmbracoとGoogle Apps間でシングルサインオン (SSO) を設定する手順を順を追って説明します。
SSO を構成する umbraco バージョンを選択してください:
前提条件: ダウンロードとインストール
- NuGet ストアからインストールする
- 手動インストール
- NuGet ストアからインストールする
- 手動インストール
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 9.2.3
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 9.2.3
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 スタートアップ.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 スタートアップ.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
namespace Application
{
public class Startup
{
// Add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddUmbraco(_env, _config)
.AddBackOffice()
.AddWebsite()
.AddComposers()
.Build();
services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseInstallerEndpoints();
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
}
}
}
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 10.2.3
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 10.2.3
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 スタートアップ.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 スタートアップ.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
namespace Application
{
public class Startup
{
// Add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddUmbraco(_env, _config)
.AddBackOffice()
.AddWebsite()
.AddComposers()
.Build();
services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseInstallerEndpoints();
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
}
}
}
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 11.2.3
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 11.2.3
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 プログラム.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 プログラム.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 12.2.3
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 12.2.3
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 プログラム.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 プログラム.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 13.2.3
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 13.2.3
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 プログラム.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 プログラム.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 14.2.3
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 14.2.3
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 プログラム.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 プログラム.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 15.2.4
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 15.2.4
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 プログラム.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 プログラム.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 16.2.4
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 16.2.4
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 プログラム.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 プログラム.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 17.2.4
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 17.2.4
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 プログラム.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 プログラム.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- 構成が完了したら、アプリケーションを実行します。
PM> NuGet\Install-Package miniOrange.Umbraco.SAML.SSO.Login - バージョン 18.0.0
> dotnet パッケージ miniOrange.Umbraco.SAML.SSO.Login を追加 -- バージョン 18.0.0
- ダウンロード Umbraco SAML シングル サインオン (SSO) ミドルウェア。
- ミドルウェアを設定するには、以下の名前空間、サービス、ミドルウェアをに追加する必要があります。 プログラム.cs ファイル(緑色でマークされています)の下にサンプル例を示します。
以下のハイライトされた部分のみを含めてください。 プログラム.cs アプリケーションのファイル。
using miniOrange.saml;
using System.Reflection;
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.CreateUmbracoBuilder()
.AddBackOffice()
.AddWebsite()
.AddDeliveryApi()
.AddComposers()
.Build();
// Add services to the container.
builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
WebApplication app = builder.Build();
await app.BootUmbracoAsync();
app.UseUmbraco()
.WithMiddleware(u =>
{
u.UseBackOffice();
u.UseWebsite();
u.AppBuilder.UseminiOrangeSAMLSSOMiddleware();
})
.WithEndpoints(u =>
{
u.UseBackOfficeEndpoints();
u.UseWebsiteEndpoints();
});
await app.RunAsync();
- 構成が完了したら、アプリケーションを実行します。
構成手順
Google AppsをIDプロバイダーとして使用したUmbraco SAML SSOの手順ガイド。
1. Umbraco SAMLプラグインダッシュボードにアクセスします。
- 統合後、ブラウザを開き、以下の URL でコネクタ ダッシュボードを参照します。
https://<umbraco-base-url>/?ssoaction=config
- 登録ページまたはログイン ページがポップアップ表示されたら、アプリケーションに miniOrange SAML SSO ミドルウェアが正常に追加されています。
- をクリックしてアカウントに登録またはログインします。 会員登録する ボタンをクリックしてミドルウェアを設定します。
- 登録が完了すると、登録したメールアドレスに試用ライセンス キーが送信されます。
- ミドルウェアをアクティブ化するには、次のいずれかを実行します。
- 入力する ライセンスキー 指定された入力フィールドに電子メールで受信されます。
- ダウンロードしたライセンスファイルをアップロードするには、 詳細
OR
- 次に、「上記の条件を読み、ミドルウェアを有効化します」のボックスにチェックを入れ、 ライセンス認証
2. UmbracoアプリケーションのメタデータをGoogle IDプロバイダーに提供する
以下に、SAML SP メタデータを取得して ID プロバイダー側で構成する方法が 2 つあります。
A] SAMLメタデータURLまたはメタデータファイルを使用する
- プラグイン設定メニュー、 探す サービスプロバイダーの設定その下には、メタデータのURLと、SAMLメタデータをダウンロードするオプションがあります。
- メタデータ URL をコピーするか、メタデータ ファイルをダウンロードして、ID プロバイダー側で同じものを構成します。
- 以下のスクリーンショットを参照してください。
B] メタデータを手動でアップロードする
- ノーザンダイバー社の サービスプロバイダーの設定 セクションでは、サービスプロバイダのメタデータを手動でコピーすることができます。 SP エンティティ ID、ACS URL、シングル ログアウト URL そして、それを構成のためにアイデンティティプロバイダーと共有します。
- 以下のスクリーンショットを参照してください。
- に行く https://admin.google.com G Suite でログインします 管理者 アカウント。
- に移動します アプリ 左側のメニューのタブをクリックし、 Webおよびモバイルアプリ.
- 以下を行うには、 アプリを追加 ボタンをクリックし、ドロップダウンで選択します カスタム SAML アプリを追加する タブをクリックして、新しい saml アプリを作成します。
- カスタム SAML アプリの詳細を入力し、クリックします 続ける
- ソフトウェアの制限をクリック メタデータをダウンロード ボタン。メタデータのURLは後で設定する際に必要になるので、手元に控えておいてください。
- 次のような G Suite の詳細をコピーすることもできます SSO URL、エンティティID、および証明書 サービスプロバイダーを手動で設定し、 をクリックします。 続ける
- から詳細を入力します。 サービスプロバイダーのメタデータ Umbraco SAMLプラグインのタブ。
| ACSのURL | コピーして貼り付けます ACSのURL Umbraco SAMLプラグインより。 |
| エンティティID | コピーして貼り付けます SPエンティティID/発行者 Umbraco SAMLプラグインより。 |
| 署名付き応答 | 署名された応答を確認する ✓ |
| 名前ID形式 | Eメール |
- ソフトウェアの制限をクリック 続ける
- ソフトウェアの制限をクリック マッピングを追加
- Google ディレクトリでユーザー フィールドを追加して選択し、サービス プロバイダーの属性にマッピングして、 仕上げ
- に行く SAML アプリ もう一度クリックしてください 全員オフ.
- 次に、 みんなのためにオン をクリックして SSO を有効にします。
Umbracoのシングルサインオン(SSO)を実現するために、G Suite / Google AppsをSAML IDP(アイデンティティプロバイダー)として正常に設定しました。
3. UmbracoアプリケーションでGoogle IDプロバイダのメタデータを設定する
- 以下を行うには、 新しい IDP を追加 新しい ID プロバイダーを構成するためのボタン。
- 下 プラグインの設定 タブ、選択 Google Appsの 表示されるリストから ID プロバイダーとして選択します。
ミドルウェアで SAML ID プロバイダーのメタデータを構成するには、以下に説明する 2 つの方法があります。
A] [IDP メタデータのアップロード] ボタンを使用してメタデータをアップロードします。
- ID プロバイダーがメタデータ URL またはメタデータ ファイル (.xml 形式のみ) を提供している場合は、ミドルウェアで ID プロバイダーのメタデータを簡単に構成できます。 IDPメタデータのアップロード オプションを選択します。
- メタデータ URL をコピーするか、メタデータ ファイルをダウンロードして、ID プロバイダー側で同じものを構成します。
- 以下のスクリーンショットを参照してください。
- 使用可能なメタデータ形式に応じて、オプションのいずれかを選択できます。
B] ID プロバイダーのメタデータを手動で構成します。
- を構成した後 ID プロバイダー、それはあなたに提供します IDPエンティティID、IDPシングルサインオンURL (NAIST) と SAML X509証明書 それぞれフィールド。
- 詳しくはこちら Save IDP の詳細を保存します。
4. SAML SSO のテスト
- メタデータの詳細をアップロードした後、 ID プロバイダーの設定 セクション。 アクションの選択 ドロップダウンをクリックして テスト構成.
- 以下のスクリーンショットは、成功した結果を示しています。 クリック SSO統合 SSO 統合をさらに続行します。
- ミドルウェア側でエラーが発生した場合は、以下のようなウィンドウが表示されます。
- エラーのトラブルシューティングを行うには、次の手順に従います。
- 解決します タブで、プラグイン ログを受信するためのトグルを有効にします。
- 有効にすると、次の場所に移動してプラグイン ログを取得できるようになります。 プラグインの設定 タブをクリックしてクリックします テスト構成.
- ダウンロード ログファイル 解決します タブをタップして、何が問題だったのかを確認してください。
- あなたは共有することができます ログファイル 私たちと一緒に umbracosupport@xecurify.com 私たちのチームが問題を解決するためにご連絡いたします。
Umbracoログインタイプ
- この後、 ログインタイプ IDプロバイダー設定ページの右側にあるドロップダウンメニューから選択します。
- あなたはから選ぶことができます バックオフィス, Memberまたは カスタム属性ベース.
- 注意: その カスタム属性ベース ログインタイプは プレミアムサーマルバッグ (NAIST) と Enterprise バージョン。
5. 属性マッピング
- 属性マッピング、ロールマッピング、ドメイン制限は、 プレミアムサーマルバッグ (NAIST) と Enterprise ミドルウェアのバージョン。
6. ログイン設定
- ホバーオン アクションの選択 をクリックします。入力したコードが正しければ、MFAの設定は正常に完了します SSO リンクをコピーします。
- SSO を実行するアプリケーション内のリンクとして次の URL を使用します。
https://<umbraco-base-url>/?ssoaction=login
- たとえば、次のように使用できます。
<a href="https://<umbraco-base-url>/?ssoaction=login">Log in</a>
7. ログアウト設定
- SLO を実行するアプリケーションへのリンクとして次の URL を使用します。
https://<umbraco-base-url>/?ssoaction=logout
- たとえば、次のように使用できます。
<a href="https://<umbraco-base-url>/?ssoaction=logout">Log out</a>
関連記事
ご返信ありがとうございます。近日中にご連絡させていただきます。
何か問題が発生しました。 もう一度質問を送信してください
