2009-07-22 30 views
14

ActiveDirectoryMembershipProviderを設定しようとしていますが、「サーバとの安全な接続を確立できません」というメッセージが表示され続けます。ActiveDirectoryMembershipProvider - 「セキュアな接続を確立できません」

MSDNのWebサイトで、信頼レベルを自分のサイトで制限なしに設定する必要があると私は見てきました。あなたはADへの接続を行う際に使用されるコンテナの代わりに、実際のユーザー名どのように見えるかを供給している

<connectionStrings> 

    <add name="LocalAD" connectionString="LDAP://example.com/dc=example,dc=com" /> 

</connectionStrings> 


<membership defaultProvider="AspNetActiveDirectoryMembershipProvider"> 

    <providers> 

     <add name="AspNetActiveDirectoryMembershipProvider" 
      type="System.Web.Security.ActiveDirectoryMembershipProvider" 
      applicationName="adtest" 
      connectionUsername="cn=Users" 
      connectionPassword="password" 
      connectionStringName="LocalAD" > 

     </add> 
    </providers> 
</membership> 

<trust level="Full" /> 

<authentication mode="Forms"> 
     <forms loginUrl="login.aspx" 
      protection="All" 
      timeout="30" 
      name="miBenefitsAdminToolCookie" 
      path="/" 
      requireSSL="false" 
      slidingExpiration="true" 
      defaultUrl="Default.aspx" 
      cookieless="UseCookies" 
      enableCrossAppRedirects="false" /> 

</authentication> 

<authorization> 
     <deny users="?" /> 
     <allow users="*" /> 
</authorization> 

答えて

5

はここに私の例です。 ADにアクセスするのに十分な資格情報を持つユーザーの正規名を指定します。サーバが同じドメインにある場合、ワーカープロセスが実行されているネットワークシステムユーザはすでに十分な特権を持っている可能性があり、名前/パスワードをまったく指定する必要はありません。

<add name="AspNetActiveDirectoryMembershipProvider" 
     type="System.Web.Security.ActiveDirectoryMembershipProvider" 
     applicationName="adtest" 
     connectionUsername="cn=actualUser" 
     connectionPassword="actualUsersPassword" 
     connectionStringName="LocalAD"> 

    </add> 
+0

ありがとうございました。これは私を一歩前進させました。 「提供された資格情報が無効です」というエラーが発生しました。 これは、「フォーム」で認証モードを許可した場合にのみ発生します。 "Windows"に変更すると、自動的に認証されます。 – Pablo

1

接続のユーザ名は、設定方法によって異なる形式にすることができます。ユーザーがDN(識別名)としてユーザーロールに追加された場合、CN = username、DC = containerの形式を使用できます。

ユーザーがWindowsユーザーとしてユーザーロールに追加された場合、ユーザー名はユーザー名のみにすることができます。

この説明が役立ちますようにお願いいたします。

関連する問題