2011-11-21 4 views
5

Windows認証を使用するWCFサービスを作成しました。ユーザーがWindowsグループに所属している場合にのみアクセスできるように設定します。私は現在、これは私がグループを変更したい場合、私はそれぞれの方法でそれを行うとコンパイルする必要があると、これはweb.configに設定されたグループに基づいてWCFへのアクセスを許可します。

[PrincipalPermission(SecurityAction.Demand, Role = "Domain\MyGroup")] 

問題を実現するためにコードに次の属性を使用します。設定ファイルとサービス全体にアクセスできるグループを設定する方法はありますか?

私は私の設定ファイルに以下を試してみましたが、これは

<security> 
    <authentication> 
     <windowsAuthentication authPersistSingleRequest="true" enabled="true"/> 
    </authentication> 
    <authorization> 
     <add accessType="Allow" roles="Domain\MyGroup" /> 
    </authorization> 
</security> 

答えて

1

私はそれを理解しました。私はまた、次の

<security> 
    <authentication> 
    <windowsAuthentication enabled="true" /> 
    </authentication> 
    <authorization> 
    <remove users="*" roles="" verbs="" /> 
    <remove users="?" roles="" verbs="" /> 
    <add accessType="Deny" users="?" /> 
    <add accessType="Allow" roles="Domain\MyGroup" /> 
    </authorization> 
</security> 

のように設定され、設定ファイルが

<serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> 

そして、WCFコントラクトを実装して私のクラス

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 

上を設定しなければならなかった私は、これはASPを使用してイムを意味推測しますWCFではなく認証ですが、私のために働いています

+0

これはパフォーマンス上のヒットをもたらしますか? – xr280xr

0

を動作するように表示されませんPrincipalPermission属性は、.NETコードアクセスセキュリティ機能からのものであり、WCFとは関係ありません。 MSDN post. WCFもさまざまなカスタム認証メカニズムをサポートしています。as described here.

+0

あなたは認証と認証を混同しています。 PrincipalPermissionAttributeは後者に関係します。この属性がCASの一部であることは事実ですが、あなたは本当にその質問に答えていません。 – xr280xr

関連する問題