問題タブ [asp.net-identity-3]
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.
c# - HttpContext.User.Identity を拡張して、より多くのデータを asp.net に保存できますか?
私はasp.net IDを使用しています。ユーザー ID を実装する既定の asp.net mvc アプリケーションを作成します。アプリケーションは HttpContext.User.Identity を使用してユーザー ID とユーザー名を取得します。
AspNetUsers テーブルをカスタマイズできます。このテーブルにいくつかのプロパティを追加しましたが、これらのプロパティを HttpContext.User から取得できるようにしたいと考えています。それは可能ですか?可能であれば、どうすればよいですか?
asp.net-web-api - web api - asp.net id トークンは、後続の要求でも期限切れになります
Web API でトークン ベースの認証に asp.net ID を使用しています。
リフレッシュトークンについては、次のリンクに基づいて実装しました
次の 2 つのクラスを追加し、スタートアップ構成で言及しました。
APIを介してユーザー名とパスワードだけで呼び出したUIから
上記の API を呼び出すと、リクエストはメソッドValidateClientAuthenticationに直接送られます。
しかし、このメソッドのロジックは、クライアント ID とクライアント シークレットを送信する必要があるということです。
特定のユーザーのユーザーがログインする前に、これらの 2 つをどのように知ることができますか?
ワークフローは、ユーザー名とパスワードをデータベースに対してチェックし、アクセス トークンとリフレッシュ トークンを生成する必要があると考えました。
しかし、ここで私はこのロジックをどこで行いますか。
サンプルで言及されているこのシステムのワークフローは何ですか?
このシステムの前に、アプリケーションで Common/login API を呼び出し、検証が成功した後、
ユーザーをログイン状態にするコードを呼び出します
上記のコードの後、ユーザー ID からアクセス トークンを生成します。
私は次の実装で何度も試しましたが、フローにうんざりしています。
ここに記載されているロジックとフローについて教えてください。
SimpleAuthorizationServerProvider
SimpleRefreshTokenProvider
claims-based-identity - タイプ「ロール」のクレームは抽象的すぎます
asp.net ID とベアラー トークン認証を使用して Web API を構築しました。
ロールの結果は真/偽であり、クレームはユーザーに関するより詳細なステートメントであることを理解しています。
しかし、タイプ ロールのクレームは、「ProjectManager」のような名前だけの抽象的なものであり、タイプ ロールのこのクレームが持つ権限はどこにも書かれていません。これを行うサンプルは見たことがありませんが、2010年にクレームが存在する前に、Roles N ---- M Permissions.
アクセス許可は
ロール クレームを使用したこの古いアプローチはどこで確認できますか?
webforms - クラウドベースのアプリケーション用の ASP.NET Identity + WebForms?
概要:私の仕事は、古い WebForms アプリケーションから進化させる必要があるクラウドベースのプロジェクトにユーザー認証を実装する方法を決定することです。私は決定プロセスの最初にいますが、すぐに決定する必要があります。ですから、あなたの経験に感謝します。
Web フォームを使用する理由 アプリケーションは古い WebForms コードに基づいているため、WebForms コードから開始する必要があります。問題は、アプリケーションをかなり迅速に準備する必要があるため、コードを可能な限り再利用する必要があることです。また、MVC に関する実用的な知識を持つ開発者もいません。いくつかのトレードオフが必要です。ただし、ログイン プロセスは新しくなり、MVC アプローチを使用して実装できます。
新機能:古いコードはイントラネット Web サーバーで実行するように構築されており、ユーザーは単純なログイン名を使用してサインインしていました。セキュリティの問題はそれほど複雑ではありませんでした。アプリケーションは、ASP.NET 以前の ID を使用しています。非常に古いため、アプリケーションのその部分を置き換える必要があります。別のワークスペースで作業する必要があるユーザーのグループが増えます (会社を考えてみてください)。
新しいアカウント -- 認証:ユーザーは有効な電子メール アドレスを使用して登録を要求する必要があります。新しいユーザーの場合、電子メールが既存のものとして検証され、グループ専用の管理者によって承認される必要があります。
承認:ユーザーは、一部のデータのみを操作することが許可されます。1 つのグループのユーザーがそのグループ専用の部分のみにアクセスできる単一のデータベースを使用するという観点から考えてみてください。ただし、より多くの権限を持つパワー ユーザーがいる場合もあります。
ASP.NET Identity の使用に集中する必要がありますか? はいの場合、(古いバージョンに依存していない) 現在 3.0.0-beta7 にある ASP.NET Identity 3 から開始する必要があります ( https://github.com/aspnet/Identity.gitを参照)。バージョン 2 に固執しますか?
asp.net - Entity Framework に Identity User を含めても機能しない
クエリ結果に Identity User を含めることができません。他のエンティティは、レベルの深さに関係なく、問題なく含まれています。
使用しているモデルはこちら。
そして文脈:
と の両方Building
にCity
次のプロパティがあります。
データを取得するために使用しているクエリ:
結果では、City は問題なく入力されていますが、ApplicationUser はそうではありません。
これはネーミングの問題でしょうか?私はすでにUserId
/User
とAspNetUserId
/AspNetUser
をプロパティ名として試しましたが、成功しませんでした。
Migrations を使用してデータベースを作成しています。ユーザー用に作成されるテーブル名は AspNetUsers です。
私はエンティティ フレームワーク 7 ベータ 7 を使用していますが、これが他のバージョンにも当てはまるかどうかはわかりません。
これらは、EF 移行によって生成されたファイルです。
ApplicationDbContextModelSnapshot.cs
20150929181902_Init.Designer.cs
(アップロード用のファイルを生成するときに Building > City リレーションを含めるのを忘れていたことに気付きましたが、この例では問題になりません)