問題タブ [impersonation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
silverlight - Silverlightユニットテストのユーザーになりすます
Silverlightユニットテストフレームワーク(サポートされていない非公式のMSライブラリMicrosoft.Silverlight.Testing)を使用していくつかのテストを作成しようとしています。アプリケーションの一部の機能をテストするときに、3人の異なるユーザーになりすます必要があります。
私たちのアプリケーションは当社の内部使用のためのものであるため、認証されたユーザーは、メンバーであるセキュリティグループに基づいて異なる機能を取得する可能性があります(たとえば、読み取り/書き込み許可、読み取り専用、アクセスなし)。
Microsoft.VisualStudio.TestTools.UnitTesting.Web名前空間には、ASP.NETアプリをテストするときにさまざまなユーザーになりすますためのCredentialAttributeがありますが、Microsoft.Silverlight.Testingでは使用できません。
これを達成する方法について何か提案はありますか?最も単純な解決策が賞を獲得します(私の終わりのない感謝)!
c# - プログラムで (Windows プログラムの) ビジュアル コンポーネントのデータを取得/設定する方法は?
Windows GUI プログラムについて話しています。プログラム ウィンドウに、ユーザー入力を求めるダイアログ ボックス (または確認ボタン) があるとします。自分のプログラム (たとえば、C#、Java、または Python で記述) を使用して、そのプログラムに入力を提供するにはどうすればよいですか。または、プログラム ウィンドウのパネルの 1 つに画像が表示されているとします。他の(私の)プログラムからそれを取得するにはどうすればよいですか。これは一種のなりすまし (またはプログラム間メッセージング?) です。spy ++を使用して実行できると誰かが私に言いました。しかし、どのように?説明できますか?どんなコードを書く?spy++ をどうするか?
asp.net - 現在の HTTP コンテキストから NetworkCredential オブジェクトを作成することは可能ですか?
これは、SharpSVN のコンテキストではあまり成功していないこの質問に関連しているため、純粋な .NET セキュリティ コンテキストで言い換えています。ユーザー名とパスワードを明示的に要求せずに、ASP.NET アプリで現在ログオンしているユーザーに基づいて NetworkCredential オブジェクトを作成できるかどうか疑問に思っています (これは統合認証アプリです)。
これを Web コンテキストの外で実行する例はたくさんありますが ( this oneなど)、現在の HTTP コンテキストでこのオブジェクトを作成することに関連するものは見つかりません。本質的に、現在のユーザーに対して次のものを自動的に導出しようとしています (ちなみに、これはハードコードされた方法で非常にうまく機能します)。
注: System.Net.CredentialCache.DefaultCredentials を参照する例は、HTTP コンテキストで現在のユーザー資格情報を返しません。
.net - プログラムでファイル共有の「ネット使用」を行うことはできますか?
VB.NET プログラム内で、ファイル システムからファイルを読み取り、別の資格情報を使用して、それらのファイルの圧縮バージョンをリモートの安全なファイル共有に書き込みたいと考えています。
cmd プロンプトでの同様の操作は次のとおりです。
これは可能ですか?どのように?(圧縮とファイル I/O について心配する必要はありません。私の関心はセキュリティ部分にあります。)
でやりWindowsImpersonationContext
ますか?
編集:そうです、私は本当にドライブをマップしたくありません。私がやりたいのは、デフォルトの資格情報ではない資格情報で共有にアクセスすることです。アプリはあらゆる種類のユーザーによって実行され、通常、共有への書き込みアクセス権はありません。この単一のファイルのために、ユーザーが共有に書き込めるようにしたいと考えています。
では、代替の資格情報を使用して、単一のファイルを共有に書き込むにはどうすればよいでしょうか? 圧縮への入力として機能するファイルを読み取るには、既定の資格情報または ID が必要であることに注意してください。
これは理にかなっていますか?
共有に直接ファイルを作成できることを知っています。問題は、代替資格情報を使用してそれを行う方法ですか? 共有を作成するときに代替資格情報を渡す方法を知っているので、共有を作成するというアイデアを紹介しました。共有は単一のファイルに対してのみ、プログラム内でのみ行われるため、実際には必要ありません。
そして、最初にファイルを作成してから、そのファイルを共有にコピーできることを知っています。それは大きなファイルであり、一度ストリーミングしたいので、私はそれをしたくありません。
c# - ASP.NETMVCでのなりすまし
イントラネット上にMVCWebアプリケーションがあり、FTPサーバー上にファイルを作成して外部のパートナーに送信できるようにしたいと考えています。
偽装のコードはWindowsImpersonationContextを使用します。
何が起こっているのか、そして私の質問の理由は次のとおりです。
なりすまし前
User.Identity.Name:[私のWindowsクレデンシャル]
System.Security.Principal.WindowsIdentity.GetCurrent()。Name:NT AUTHORITY \ NETWORK SERVICE
なりすまし後
User.Identity:[私のWindowsクレデンシャル]
GetCurrent.Name:[私のWindowsクレデンシャル]
元になります
User.Identity:[私のWindowsクレデンシャル]
GetCurrent.Name:NT AUTHORITY \ NETWORK SERVICE
したがって、偽装する前は、現在のユーザーはシステムアカウントですが、偽装後は、FTPサーバー上にテキストファイルを作成する権限を持つWindowsドメインアカウントを使用しています。コードは、Visual Studio Webサーバーを使用してローカルで機能しますが、テストサーバーのIISに展開した場合は機能しません。
アクセス拒否エラーが発生します。正しいユーザーが偽装されている場合のエラーの理由は何ですか?
sql-server - SQL Server 2000 での sp_OA* の偽装
sp_OA* 呼び出しを偽装する方法はありますか? 私はこれを特にファイル システム管理に使用しています。2005 にアップグレードする可能性があり、このソリューションをクロスバージョンにしたいので、DTS を回避するために TSQL ですべてを行っています。残念ながら、リモート ファイル システムにアクセスする必要がありますが、いずれかのサーバーのシステム アカウントに AD 権限を追加することはできません (運用 ETL サイクルを実行していますが、AD ではなくレーダーの下にあります)。これを偽装する方法はありますか?私も xp_cmdshell ソリューションを使用します。DTS と SSIS の両方の開発と 2 つのコード ベースのジャグリングを回避できるようにしたいだけです。
繰り返しますが、これは SQL Server オブジェクトの実行に対する偽装ではありません。これは、SQL Server システム アカウント以外のアカウントを使用して、SQL Server 以外のリソースにアクセスするためのものです。私が見つけた唯一の解決策は、2005年以降のSQLCLRに関係しており、とにかくアセンブリを展開できるということではありません。(私は IT 以外のコンサルタントであり、政治的なものがあります。)
security - Windows 認証が有効な場合に IIS アカウントで従来の ASP ページを実行する
現在のユーザーのユーザー名を取得できるように、ASP ページで Windows 認証を有効にしました。これにより、ASP ページがそのユーザーとして実行されます。そのページによって現在アクセスされているいくつかのファイルをロックダウンしたいと考えています。Windows 認証を有効にして、IIS を実行しているアカウントでページを実行する方法はありますか?
c# - Active Directory でトークン ベースの認証を使用できますか?
Active Directory の Windows PC からユーザー名パスワードを入力しなくても、システムに安全にログオンできるようにしたいと考えています。アイデアは、私(ログオンしたWindowsマシンで実行されているクライアントソフトウェア)が、私が誰であるかをサーバーに証明する何らかのトークンを持っているということです(サーバーはADと通信して、トークンと私の身元を確認します身元)。これは .net 3 で可能ですか?
C# で使用されている言語。
impersonation - 倫理となりすまし:代替案?
顧客のためにトラブルシューティングを行い、障害が発生した場合に設定を確認するために顧客の資格情報を要求した(または本当にしたい)ことがありますか?これに対する私たちの解決策は、偽装機能を実装して、任意のユーザーとしてログインし、ユーザーが行うすべてのことにアクセスできるようにすることです。この場合、メールアプリケーションです。なりすましにパスワードは必要ありませんが、ユーザーのプライバシーに不安を感じています。主に2つのこと:彼らのメールとPOP3 / IMAP設定(偽装者はユーザーのgmail / yahoo/etcユーザーとパスワードを取得できます。
これに関する他の良い選択肢/提案は何ですか?
いくつかの提案されたログ。もちろん、これは必須のコンポーネントですが、すべてをログに記録することはできません。特に、ユーザーの設定に関係なく、ログに記録することが非常に多いためです。