0

データベース設計に従ってデータベースを作成するために、Linq to SQL を使用して Sharepoint Provider でホストされるアプリをコーディングしています。アプリの認証と承認を実装する必要があります。ユーザーの認証/承認方法には、いくつかのロジックが関係しています。

ユーザーが SharePoint でアプリをクリックすると:

  1. ユーザーの電子メール アドレスは、SharePoint コンテキストから読み取られます。
  2. アプリは、ユーザーのメール アドレスがAccountsテーブル (カスタム データベース) にあるかどうかを調べます。
  3. アプリは、ユーザーがテーブルで見つかった場合、アカウントAccountsテーブルでどのロールを持っているかを判断します。
  4. Viewユーザーに応じてレンダリングRole
  5. ユーザーがテーブルに見つからなかった場合Accounts、ログイン ページにリダイレクトする代わりにエラー メッセージを表示します。

: ユーザーが SharePoint からアクセスした場合、ログイン ページは表示されません。

ユーザーがログイン ページの URL を直接呼び出した場合:

  1. ログインページを表示
  2. ユーザーが資格情報を入力します (パスワード付きの SharePoint からの電子メール)
  3. アプリは、テーブルをチェックして、これらの資格情報が有効かどうかを確認しAccountsます。
  4. 資格情報が有効な場合は、Role fromAccountsテーブルも確認してください。
  5. Viewユーザーの役割に応じてレンダリングします。

これはAccountsテーブルです:

**Accounts**
------------
UserName (string, SharePoint E-Mail)
Password
Role (string, value from struct)

これは私のカスタムRoles構造体です:

public struct Roles
{
    public struct UserRoles
    {
        public const string NormalUser= "NormalUser";
        public const string PrivilegedUser = "PrivilegedUser ";
    }

    public struct AdminRoles
    {
        public const string SuperAdmin = "SuperAdmin ";
        public const string ProjectsAdmin = "ProjectsAdmin ";
        public const string UsersAdmin = "UsersAdmin ";
    }
}

基本的に、これは私が取り組まなければならないものです。いろいろな可能性があるので、少し戸惑います。ロールをカスタム データベースに保持したくないので、RoleProvider.

4

0 に答える 0