私が読んだことから、誰かがこれの例を持っていますか?umbracoは少し悪臭を放ちますが、例は見つかりません
2 に答える
フロントエンドのメンバーに対しては実行できますが、バックエンドのユーザーに対しては実行できません。これは非常に簡単です。web.config のプロバイダー セクションを変更するだけです。SQlMembershipProvider で umbraco を使用したほか、自分で実装したカスタム メンバーシップ プロバイダーも使用しました。
はい、絶対に Umbraco で SqlMembershipProvider を使用できます。まず、接続文字列を構成ファイルに追加する必要があります。
<add name="umbracoDbDSN" connectionString="Server=myhost.myexampledomain.com;Database=mydatabasename;User Id=myuserid; Password=myhardtobreakpassword;" providerName="System.Data.SqlClient" />
データベースにアクセスするためのユーザー名とパスワードが実際に Umbraco に適切にアクセスできることを確認してください。
次に、SqlClient データ プロバイダーが system.data の DbProviderFactories セクションに追加されていることを確認する必要があります。
<add name="SqlClient Data Provider"
invariant="System.Data.SqlClient"
description=".Net Framework Data Provider for SqlServer"
type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
3 番目に、SqlServerMembershipProvider を providers セクションに追加する必要があります。
<add name="SqlServerMembershipProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="umbracoDbDSN"
requiresQuestionAndAnswer="false"
applicationName="MyUniqueUmbracoApplication"
requiresUniqueEmail="true"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="7"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression="" />
プロバイダーから参照する接続文字列が、前に定義した接続文字列と一致していることを確認し、アプリケーションに適切な名前を付けます。
4 番目に、SqlServerRoleProvider を roleManager の providers セクションに追加します。
<add name="SqlServerRoleProvider"
type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="umbracoDbDSN"
applicationName="MyUniqueUmbracoApplication"
/>
5 番目に、profie の providers セクションに追加します。
<add name="SqlProfile" type="System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="umbracoDbDSN" applicationName="MyUniqueUmbracoApplication" />
6 番目に、データベースで aspnet_regsql.exe を実行して、SqlMembershipProvider を使用するようにデータベースをセットアップします ( aspnet_regsql.exe を使用したデータベースの構成)。
7 番目に、新しい構成ファイルをロールアウトした後、IIS を再起動します。IIS が新しいプロバイダーを使用するようにセットアップされていることを確認します。
データベースを構成するための別のリソースを次に示します: ASP.NET SqlMembershipProvider の構成。
データベースのアクセス許可を構成するには、次の手順に従います: Umbraco データベース セキュリティの構成。重要な部分は、データ プロバイダーのユーザーを次の場所に追加することです。
- db_datareader
- db_datawriter
- db_ddladmin
- db_securityadmin
- 公衆
構成ファイルが少し異なるように見える場合は、別のバージョンの Umbraco を使用している可能性があります。この例では 7.0.3 を使用しています。