次の方法で共有


方法: クライアントの資格情報の種類を指定する

セキュリティ モード (トランスポートまたはメッセージ) を設定してから、クライアント資格情報の種類を指定することができます。 このプロパティでは、クライアントが認証時にサービスに提供する必要のある資格情報の種類を指定します。 セキュリティ モードの設定 (クライアントの資格情報の種類を設定する前に必要な手順) の詳細については、「方法: セキュリティ モードを設定する」を参照してください。

コードでクライアント資格情報の種類を設定するには

  1. サービスで使用されるバインドのインスタンスを作成します。 この例では、WSHttpBinding バインドを使用します。

  2. Mode プロパティに適切な値を設定します。 この例では、メッセージ モードを使用します。

  3. ClientCredentialType プロパティに適切な値を設定します。 この例では、Windows 認証 (Windows) を使用するように設定します。

    ServiceHost myServiceHost = new ServiceHost(typeof(CalculatorService));
    // Create a binding to use.
    WSHttpBinding binding = new WSHttpBinding();
    binding.Security.Mode = SecurityMode.Message;
    binding.Security.Message.ClientCredentialType =
        MessageCredentialType.Windows;
    
    Dim myServiceHost As New ServiceHost(GetType(CalculatorService))
    ' Create a binding to use.
    Dim binding As New WSHttpBinding()
    binding.Security.Mode = SecurityMode.Message
    binding.Security.Message.ClientCredentialType = _
    MessageCredentialType.Windows
    

構成でクライアント資格情報の種類を設定するには

  1. <system.serviceModel> 要素を構成ファイルに追加します。

  2. 子要素として、<bindings> 要素を追加します。

  3. 適切なバインドを追加します。 この例では、<wsHttpBinding> 要素を使用します。

  4. <binding> 要素を追加し、name 属性を適切な値に設定します。 この例では、"SecureBinding" という名前を使用します。

  5. <security> バインドを追加します。 mode 属性を適切な値に設定します。 この例では、"Message" に設定します。

  6. セキュリティ モードによって、<message> 要素と <transport> 要素のどちらかを追加します。 clientCredentialType 属性を適切な値に設定します。 この例では、"Windows" を使用します。

    <system.serviceModel>  
      <bindings>  
        <wsHttpBinding>  
          <binding name="SecureBinding">  
            <security mode="Message">  
                 <message clientCredentialType="Windows" />  
             </security>  
          </binding>  
        </wsHttpBinding>  
      </bindings>  
    </system.serviceModel>  
    

関連項目