問題タブ [userprincipal]

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.

0 投票する
1 に答える
288 参照

c# - フォーム認証 - 操作エラーが発生しました

私はフォーム認証を持っています:

ログインページがあり、資格情報を確認するために次のことを行います。

これは機能します。次に、メンバーグループを確認したいと思います。したがって、私は:

ローカルホストでは機能しますが、公開すると機能せず、次のエラーが発生します。

追加してみました

そしてまた

次に、プールの ID をNetworkServiceandに変更しようとしましLocalSystemたが、何も変わりませんでした。自分の PC でApplicationPoolIdentity.. を使用してもすべてが正常に機能する理由がわかりません。

0 投票する
1 に答える
1555 参照

c# - ASP.NET MVC 5: アプリケーション プール、Windows 認証、および Active Directory

バックグラウンド:

外部 API に接続する MVC 5/C# アプリがあります。Active DirectoryユーザーのPrincipal Context認証を使用します。アプリUserPrincipal.Currentは、Un/Pw コンボが Db に格納されているかどうかを確認し、後で外部 API での操作に使用できるようにします。

  • UserPrincipal.Currentデフォルトでアプリケーション プールの ID が返されることを理解しています。
  • また、Impersonate を True IIS に設定すると、次のように現在のユーザーのコンテキストが使用されることも理解しています。 <system.web> <identity impersonate="true"/>...

ただし、偽装をオン (true) にすると、次のようになります。

したがって、app pool「クラシック」を使用するように変更します(これは、私が取るべき答えまたはパスではないと思います)。次のエラーが表示されます。

明らかに、これは IIS Express でうまく機能します。私 (ドメイン\ユーザー名) は問題なく認識されます。しかし、IIS に切り替えるか、実際の Web サーバーにデプロイすると、これらの問題が発生します。

現在のユーザー/プリンシパルを取得して、ID と資格情報を外部 API にデータベースに保存できるようにする必要があります。次に、サイト/アプリを使用すると、自動的に資格情報を使用して、必要に応じて API で作業を行います。

次のいずれかを行うにはどうすればよいですか。

  • 偽装が機能するように IIS をセットアップする
  • 同じことをするようにコードを調整します
0 投票する
1 に答える
7347 参照

jsp - pageContext.request.userPrincipalはセッションに保存されていますか? パスワードも取得できますか?

私はSpringのセキュリティを学んでrequest.getUserPrincipal() ます.pageContext.request.userPrincipal.name

これは私のコードです(すべてが機能しています):

私の質問は次のとおりです。

1)。この名前pageContext.request.userPrincipal.name セッションから取得されていますか? <%@page session="true"%>フォームの上部にあるので

2)。パスワードも取得できますか?pageContext.request.userPrincipal.passwordフォームでパスワードを取得するにはどうすればよいですか?

スプリングの本を買うお金がないので、このフレームワークを理解するためにあなたの助けを本当に感謝しています.

0 投票する
1 に答える
331 参照

c# - C# Active Directory - 失敗したログイン試行のクエリ

C# を使用して Active Directory ログイン試行のリストを返す方法はありますか? たとえば、どうにかして次を含むリストを返したいと思います

  • DC名
  • サイト
  • ユーザー状態
  • 不正な Pwd カウント
  • 最後の不正なパスワード
  • PWD ラスト セット
  • ロックアウト時間

基本的に、パスワードの更新時に、Active Directory にアクセスしているどのデバイスがパスワードのロックアウトを引き起こしているかを知りたいです。

UserPrincipalクラスの使用を調べましたSystem.DirectoryServices.AccountManagementが、DC 間で集約できるメソッドが見つかりません。

助けやアドバイスをよろしくお願いします!

0 投票する
0 に答える
2445 参照

c# - UserPrincipal から WindowsPrincipal を取得する

目標

さまざまな Windows ユーザー メカニクスを抽象化するクラスを作成しています。私のクラスは、ユーザーのアカウント名とドメインがあれば知っています。ユーザーが属するドメインまたはローカル環境の管理者権限をユーザーが持っているかどうかを示すプロパティをハイドレートしようとしています。

問題

WindowsPrincipalクラスは を介し​​てその情報を提供しますがIsInRole、コンストラクターには が必要WindowsIdentityです。これは、ユーザー プリンシパル名 (UPN) なしで確立する方法が見つかりません。ドメイン ユーザーはUserPrincipal.UserPrincipalNameプロパティを使用できますが、ローカル ユーザーは null です。WindowsPrincipalからを取得する別の方法はありUserPrincipalますか? または、それなしで目標を達成する別の方法はありますか?

起源

前もって感謝します。

0 投票する
0 に答える
533 参照

c# - c# UserPrincipal GetGroups は SSL を使用しません

SSL とポート 696 を介して Active Directory 操作を実行し、次のテスト コードを使用したいと考えています。

で例外が発生しp.GetGroups(context)ます:

Ein Ausnahmefehler des Typs "System.Runtime.InteropServices.COMException" は System.DirectoryServices.dll aufgetreten にあります。

参考情報: Der Server ist nicht funktionstüchtig.

ファイアウォールでチェックした結果、最初の部分は LDAPS と SSL で処理され、getGroups 呼び出しは SSL を使用しない LDAP で処理され、ファイアウォールによってブロックされていることがわかりました。

私も試しました

と他の多くのバリエーション。しかし、私は問題を理解していません。

編集 20160614 - 回避策:

0 投票する
2 に答える
3432 参照

c# - UserPrincipal.FindByIdentity で COM エラー 0x80005000 が発生する

最近 .Net 4 から 4.6.1 にアップグレードした MVC イントラネット アプリがあります。このアプリは、Active Directory からユーザーの詳細を照会して、Controller の User.Identity プロパティでは利用できなかった詳細をロードします。最近まで問題なく実行されていました。コードは次のようになります。

コードは、Visual Studio 2015 でのデバッグ時には正常に実行されますが、IIS ボックス (Windows Server 2008 R2 上の v6.1 SP1) で実行されている場合、UserPrincipal.FindByIdentity() の呼び出し時に COMException (0x80005000) がスローされます。

Web アプリは専用のアプリ プールで実行されており、その設定は次のとおりです。

  • .Net フレームワーク バージョン = v4.0
  • ID = MyDomain\MyAppServiceUser (非インタラクティブ AD ユーザー アカウント)
  • ユーザー プロファイルの読み込み = false

その他の設定はすべてデフォルトのままです。アプリケーション自体は、匿名認証と Windows 認証の両方を有効にして実行されています。サーバーには .Net 4.6.1 がインストールされており、イントラネット アプリの他のすべての要素は正常に動作しているようです。

これをグーグルで検索した結果、ほとんどの回答は、AD を照会するサービス アカウントのアクセス許可に問題があることを示しているようです。アプリケーション プールが実行されているサービス アカウントが Active Directory をクエリするアクセス権を持っていることを確認するために、上記のコードをコンソール アプリケーションで使用し、自分自身とサーバー上のサービス アカウントの両方として実行しました。インスタンスは問題なく動作します。IIS で実行している場合にのみ爆発します。

プリンシパル コンテキスト (OU コンテナー パスなどを含む) を作成するさまざまなバリエーションを試しましたが、結果は常に同じです。

私はこれに夢中になっているので、どんな助けでも大歓迎です。

更新 - 追加情報

  • 例外の種類: System.Runtime.InteropServices.COMException
  • 例外メッセージ: 不明なエラー (0x80005000)
  • スタックトレース:

System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail) で System.DirectoryServices.DirectoryEntry.Bind() で System.DirectoryServices.DirectoryEntry.get_AdsObject() で System.DirectoryServices.PropertyValueCollection.PopulateList() で System.DirectoryServices.PropertyValueCollection.. System.DirectoryServices.AccountManagement.PrincipalContext.DoLDAPDirectoryInitNoContainer() の System.DirectoryServices.AccountManagement.PrincipalContext.DoDomainInit() の System.DirectoryServices.AccountManagement の System.DirectoryServices.PropertyCollection.get_Item(String propertyName) の ctor(DirectoryEntry entry, String propertyName) System.DirectoryServices.AccountManagement.PrincipalContext.get_QueryCtx() で System.DirectoryServices.AccountManagement.Principal で .PrincipalContext.Initialize()。FindByIdentityWithTypeHelper (PrincipalContext コンテキスト、型 principalType、Nullable`1 identityType、文字列 identityValue、DateTime refDate) System.DirectoryServices.AccountManagement.Principal.FindByIdentityWithType (PrincipalContext コンテキスト、型 principalType、IdentityType identityType、文字列 identityValue) で System.DirectoryServices.AccountManagement.UserPrincipal Apollo.Security.ActiveDirectoryUser.Find(String identityName) での .FindByIdentity(PrincipalContext context, IdentityType identityType, String identityValue)DirectoryServices.AccountManagement.UserPrincipal.FindByIdentity(PrincipalContext context, IdentityType identityType, String identityValue) at Apollo.Security.ActiveDirectoryUser.Find(String identityName)DirectoryServices.AccountManagement.UserPrincipal.FindByIdentity(PrincipalContext context, IdentityType identityType, String identityValue) at Apollo.Security.ActiveDirectoryUser.Find(String identityName)

0 投票する
0 に答える
803 参照

c# - UserPrincipal.FindByIdentity タイプ 'GroupPrincipal' のオブジェクトをタイプ 'UserPrincipal' にキャストできません

おはようございます、

Active Directory でユーザーを検索しようとしていますが、次の例外が発生します。

私のコードは次のとおりです。過去に機能していたようですが、何が変わったのかわかりません。私は凝視してデバッグしてきましたが、問題を見つけることができません。助けてください。

ここで、uContext は: "CN=Users,DC=my,DC=eh,DC=tech,DC=com" 、host は: my.eh.tech.com、ユーザー名は:madamzuzu です。

ADでユーザーを探すと、次のように正しく表示されますDN:CN=madamzuzu;CN=Users,DC=my,DC=eh,DC=tech,DC=com

「グループプリンシパル」がどこから来ているのか理解できませんか?

0 投票する
0 に答える
110 参照

asp.net - DirectoryServices.AccountManagement UserPrincipal - パスワードの変更またはリセット後、5 分間は古いパスワードが引き続き機能する

パスワードのリセットは正常に機能し、ユーザーは新しいパスワードでログインできますが、古いパスワードは引き続き機能します。古いパスワードは 5 分後に期限切れになります。ユーザーがパスワード ポリシー グループに追加されます。set password メソッドを2回呼び出して、古いパスワードの検証を停止しようとしました。ただし、パスワードの最小有効期間を 1 日に設定したためです。このトリックは機能しません。

どんな助けでも大歓迎です。