basicHttpBindingは、その名前が示すように、提供するものにおいて非常に基本的です。セキュリティに関しては特に基本的です。
私の知る限り、あなたは自分がやろうとしていることを達成することはできません。BasicHttpBindingは、Windowsクレデンシャル(カスタムユーザーのインターネットでは適切ではありません)またはデジタル証明書を使用したトランスポートセキュリティ(httpsプロトコルを使用)、またはデジタル証明書を使用したメッセージセキュリティ(明示的に除外します-なぜ??)のみをサポートします。
このCodeProjectの記事8ステップを確認して、WCF BasicHttpBindingまたはGoogleで「basicHttpBindingセキュリティ」のWindows認証を有効にします。多くの記事がありますが、要件に対する実際の解決策はおそらくありません。basicHttpBindingではこれを行うことはできません。
更新:デフォルトでは、WCFでは、呼び出しごとに呼び出し元の資格情報を渡す必要がありますが、サービスメソッドのパラメーターとしてではなく、クライアント側で生成されたサービスプロキシでクライアントの資格情報を指定する必要があります。何かのようなもの:
myService.ClientCredentials.UserName.UserName = "username";
myService.ClientCredentials.UserName.Password = "p@ssw0rd";