問題タブ [account-management]
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.
active-directory - Active Directory はこれらの要件に適していますか?
会社の新しいアカウント管理システムを構築しようとしています。ユーザーは、Web アプリケーションの一部にアクセスする外部の顧客です。一部のユーザーは、同じ Web アプリケーションにアクセスする内部オペレーターですが、特定の権限を持っています。内部オペレーターは、情報検索のために SQL データベースにアクセスする Java アプリケーションも使用しています。
要件
- ユーザーが自分のパスワードを忘れた場合、ユーザーは、リンクをたどって新しいパスワードを入力できるようにする、一意の ID を含むリセット リンクが記載された電子メールを受け取ることができます。一意の ID は AD システムの一部であり、「有効な」タイムスタンプも持っています。
- システムの一部となる 100000 人のユーザーのリストを受け取った場合、それらを自動的に追加することは管理しやすいはずです。
私は Active Directory を初めて使用しますが、これらの要件に適しているかどうか、または他のシステムで管理しやすいかどうか疑問に思っていますか?
また、Web アプリケーションの認証とシングル サインオンにも CAS を使用します。
c# - groupprincipal.members.add を上書きする
System.DirectoryServices.AccountManagement.GroupPrincipal
オブジェクトの Member.Add メソッドをオーバーライドまたは拡張できるかどうかは誰にもわかりますか?
私はこのようなことをしたいと思います
c# - Active Directory から有効なアカウントだけを取得する
System.DirectoryServices.AccountManagement.dll
「Domain Users」グループ内のすべてのユーザーを取得するために Active Directory を処理するために使用しています。
これはドメイン内のすべてのユーザーを返していますが、有効なユーザーだけを取得する必要があります。
サンプルコードは次のとおりです。
他のグループは正常に機能しますが、グループが "Domain Users" の場合、Enabled
プロパティの値はfalse
すべてのユーザーを対象としています。これにより、各ユーザーに対してさらにクエリを実行しないと、有効なユーザーと無効なユーザーを区別することができなくなります。
c# - AccountManagement拡張クラスを使用するときにバイナリ属性を設定するにはどうすればよいですか?
カスタムクラスを使用して、ActiveDirectoryでカスタムスキーマを公開しています。私はバイナリブロブを保存しています。プロジェクトの要件に従って、このデータはADに保存する必要があり、外部ストアを使用することはできません(可能であれば)。
ユーザーを作成すると、blobが正常に保存されます。また、blobを正常に取得して、すべてのデータを取得することもできます。問題は、値を更新する必要があり、エラーが発生する場合です
小さなサンプルプログラム:
メソッド1を使用すると、update.Save()
操作で次の例外が発生します
this.ExtensionSet
メソッド2を使用すると、呼び出しからの呼び出しから例外が発生しset.BlobData
ます。
要約:現在設定されていない場合は値を設定できますが、既存の値を上書きしたい場合はエラーが発生します。
vb.net - System.DirectoryServices.AccountManagement で新しいユーザーを作成するためのコンテキスト オプションに関する例外
最初のログイン時にリセットする必要があるランダムに生成されたパスワードを使用して、AD に新しいユーザーを作成する必要があります。DirectoryEntry を使用すると問題なく接続できますが、System.DirectoryServices.AccountManagement を使用したいと考えています。SSL 経由でサーバーに接続しようとすると、次の例外が発生します。
渡された ContextOptions は、このストア タイプでは無効です。Negotiate または SimpleBind のいずれかを指定する必要があり、これらを組み合わせることはできません。
ContextOptions.SecureSocketLayer を使用します。
SSL経由で接続する必要があるため、ユーザーパスワードを設定しようとすると、NegotiateとSimpleBindの両方が例外をスローします。
SSL 経由で DirectoryServices に接続できるので、コードに問題があるとは思いませんが、役立つ可能性があるものは何でも投稿します。
active-directory - Active DirectoryからEmailAddressNULLを取得する(AccountManagement UserPrincipal)
問題があり、解決策が見つかりません:
EmailAddress
Webアプリケーションにアクセスしている電子メール()ユーザーを取得するための以下のコードがあります。
一部のユーザー(これまでのところ3人)の場合、電子メール(EmailAddress
)にはnull値が含まれています。
以下のコードも試してみましたが、同じことが起こります。
Exchange Serverと関係があるのではないかと疑っていますが、知識が不足しているとは言えません。
誰か助けてもらえますか?
c#-4.0 - GroupPrincipal が「System.Runtime.InteropServices.COMException (0x8007200A): 指定されたディレクトリ サービスの属性または値が存在しません」をスローします。
ユーザーを照会してSystem.DirectoryServices.AccountManagement
から、そのユーザーのグループを見つけるために使用しています。
基になるオブジェクトを取得してDirectoryEntry
そのプロパティと値をダンプできますが、GroupPrincipal.DisplayName
プロパティ (またはそのプロパティ) にアクセスするとすぐに、次の例外がスローされます。
「System.Runtime.InteropServices.COMException (0x8007200A): 指定されたディレクトリ サービスの属性または値が存在しません。\r\n\r\n で System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)\r\n で System. DirectoryServices.DirectoryEntry.Bind()\r\n で System.DirectoryServices.DirectoryEntry.get_SchemaEntry()\r\n で System.DirectoryServices.AccountManagement.ADStoreCtx.IsContainer(DirectoryEntry de)\r\n で System.DirectoryServices.AccountManagement. ADStoreCtx..ctor(DirectoryEntry ctxBase, Boolean ownCtxBase, String username, String password, ContextOptions options)\r\n System.DirectoryServices.AccountManagement.PrincipalContext.CreateContextFromDirectoryEntry(DirectoryEntry entry) で\r\n System.DirectoryServices.AccountManagement.PrincipalContext で.DoLDAPDirectoryInitNoContainer()\r\n で System.DirectoryServices.AccountManagement.PrincipalContext.DoDomainInit()\r\n で System.DirectoryServices.AccountManagement.PrincipalContext.Initialize() で\r\n System.DirectoryServices.Account Management.PrincipalContext.get_QueryCtx で()\r\n で System.DirectoryServices.AccountManagement.Principal.HandleGet[T](T& currentValue, String name, LoadState& state)\r\n で System.DirectoryServices.AccountManagement.Principal.get_DisplayName()\r\n でConsoleApplication9.Program.Main(文字列[]引数)"AccountManagement.Principal.HandleGet[T](T& currentValue, String name, LoadState& state)\r\n System.DirectoryServices.AccountManagement.Principal.get_DisplayName() で\r\n ConsoleApplication9.Program.Main(String[] args) で"AccountManagement.Principal.HandleGet[T](T& currentValue, String name, LoadState& state)\r\n System.DirectoryServices.AccountManagement.Principal.get_DisplayName() で\r\n ConsoleApplication9.Program.Main(String[] args) で"
基になるの未加工のプロパティをダンプできるのに、DirectoryEntry
で直接プロパティを呼び出すことができないのはGroupPrincipal
なぜですか? この例外の原因は何ですか? これは「Domain Users」グループでは発生せず、後続のグループでは発生することに注意してください...
c# - UserPrincipal.FindByIdentity が PrincipalServerDownException をスローする
認証タスクを実行するために、リモートの顧客の Active Directory に対してバインドする必要があるアプリケーションがあります。
例外は次のとおりです。
PrincipalServerDownException: サーバーは動作していません。
今日まで、物事はうまくいっていました。1 つの変更点は、このコードを実行するアプリケーションが 4 から 4.5 にアップグレードされたことです。問題がアップグレード直後に発生したのか、それとも単なる偶然なのか、はっきりとは言えません。
私は AdFind を使用して顧客の AD に対するバインドをテストしていましたが、問題なく動作しているようです。
もう 1 つの興味深い点は、 が正常にPrincipalContext
初期化され (したがって、リモート ストアとの接続が検証され)、呼び出しをコメント アウトすると、FindByIdentity
呼び出されるだけctx.ValidateCredentials
で正常に動作することです。
android - Android アカウント マネージャーからアプリを削除する「アカウントを追加」
ユーザーがアプリで新しいアカウントを作成すると、Android アカウント マネージャーで新しいアカウントを作成します。そのため、ユーザーは設定 - >アカウントと同期で自分のアカウントを確認できます...
質問: ユーザーがアカウントで [新しいアカウントを追加] をクリックして同期したときに、アプリをリストから削除することは可能ですか? ユーザーはこのリストに自分のアプリを表示する必要はありませんが、アプリでアカウントを作成することはできます。
PS。アカウントの追加をクリックしたときにアクティビティを開きたくありません。アプリのポイントをリストに表示したくないだけです。
私はマニフェストに持っています:
そして私のオーセンティケーター: