0

私のシステムでは、特定のフォルダーにアクセスするために管理者アカウントのみが必要です。

したがって、クライアントが自分としてログインし、ファイルを開くリンクをクリックすると、一時的に管理者アカウントに切り替えてファイルを開くことができます。オープニングファイルを閉じた後、アカウントはクライアントの元のアカウントに戻ります。

このリンクを使用して、ASP.NET の C# で実行できることがわかりました。

ログインしているユーザーを別のユーザーに変更するにはどうすればよいですか?

Javaでそれができるかどうか疑問に思っていますか?

4

2 に答える 2

2

Runetim.exec() 経由で RUNAS を呼び出すことにより、別のユーザーとしてタスクを実行できます。

RUNAS USAGE:

RUNAS [ [/noprofile | /profile] [/env] [/savecred | /netonly] ]
        /user:<UserName> program

RUNAS [ [/noprofile | /profile] [/env] [/savecred] ]
        /smartcard [/user:<UserName>] program

RUNAS /trustlevel:<TrustLevel> program

   /noprofile        specifies that the user's profile should not be loaded.
                     This causes the application to load more quickly, but
                     can cause some applications to malfunction.
   /profile          specifies that the user's profile should be loaded.
                     This is the default.
   /env              to use current environment instead of user's.
   /netonly          use if the credentials specified are for remote
                     access only.
   /savecred         to use credentials previously saved by the user.
                     This option is not available on Windows 7 Home or Windows 7 Starter Editions
                     and will be ignored.
   /smartcard        use if the credentials are to be supplied from a
                     smartcard.
   /user             <UserName> should be in form USER@DOMAIN or DOMAIN\USER
   /showtrustlevels  displays the trust levels that can be used as arguments
                     to /trustlevel.
   /trustlevel       <Level> should be one of levels enumerated
                     in /showtrustlevels.
   program         command line for EXE.  See below for examples

Examples:
> runas /noprofile /user:mymachine\administrator cmd
> runas /profile /env /user:mydomain\admin "mmc %windir%\system32\dsa.msc"
> runas /env /user:user@domain.microsoft.com "notepad \"my file.txt\""

http://ss64.com/nt/runas.html

于 2012-11-05T17:09:18.103 に答える
0

Java EE を使用している場合は、@RunAs アノテーションを使用できると思います (ただし、試したことはありません): http://docs.oracle.com/javaee/6/api/javax/annotation/security/RunAs.html

編集:

そして、JAAS「doAs」についての詳細へのリンクがありますが、私はまだ勉強していません: http://docs.oracle.com/javase/7/docs/technotes/guides/security/jaas/JAASRefGuide.html

于 2012-11-05T17:45:57.977 に答える