Udostępnij za pośrednictwem


Uwierzytelnianie i autoryzacja w programie LightSwitch

W programie LightSwitch możesz aplikacji bezpieczniejsze poprzez zapobieganie nieautoryzowanym użytkownikom odczytywanie, zmiana lub usuwanie danych.Jeśli zostanie wprowadzona, uwierzytelnianie i autoryzację, użytkownicy muszą udowadnia swoją tożsamość, przed uzyskaniem dostępu aplikacji.Jeśli wielu użytkowników, można również zarządzać dostępu łatwiej tworząc ról użytkowników, które mają różne poziomy dostępu do poszczególnych ekranów i danych, a następnie przypisywanie użytkowników do odpowiedniej roli.

Na przykład, aplikacja do obsługi płac może zezwalać pracownikom na wyświetlanie, ale nie na zmienianie ich informacji o płacach.Jednakże, nadzorca zajmujący się wynagrodzeniami, może posiadać uprawnienie do wyświetlania i zmiany informacji o pracownikach.Pracownikom zostanie przypisana rola Employee, a nadzorcy rola Supervisor.

Możesz także zarządzać uprawnieniami w łatwiejszy sposób, dodając użytkowników do grup zabezpieczeń w usłudze Active Directory, a następnie przypisując uprawnienia do tych grup.Ponieważ członkostwo i uprawnienia są dziedziczone, możesz udzielić i odmówić uprawnień nie tylko grupie, ale również wszystkim jej podgrupom, poprzez pojedynczą zmianę.Na przykład, możesz dodać Boba do grupy Sales w usłudze Active Directory.Jeśli Sales jest podgrupą Marketing, to wszelkie uprawnienia udzielone grupie Marketing, zostaną również udzielone Bobowi.

Uwierzytelnianie

Pierwszym krokiem zabezpieczania aplikacji jest włączenie uwierzytelniania.Możesz użyć uwierzytelniania formularzy lub uwierzytelniania systemu Windows.Uwierzytelnianie formularzy jest zarządzane przez samą aplikację, a użytkownik musi podać nazwę użytkownika i hasło, aby uzyskać dostęp do aplikacji.W przypadku uwierzytelniania systemu Windows, poświadczenia, które zostały użyte do logowania się na komputerze, na którym uruchomiona jest aplikacja, zostaną użyte do uwierzytelniania użytkownika aplikacji i żadna dodatkowa nazwa użytkownika ani hasło nie są wymagane.W obu przypadkach, administrator aplikacji utrzymuje listę autoryzowanych użytkowników; w przypadku uwierzytelniania formularzy, administrator utrzymuje równie zaszyfrowane hasła.

Aby włączyć uwierzytelnianie

  1. W Solution Explorer, otwórz menu skrótów dla Właściwości węzła, a następnie wybierz polecenie Otwórz.

  2. W Projektanta aplikacji, wybierz polecenie Kontroli dostępu kartę.

  3. W Wybierz typ uwierzytelniania: albo wybierz Użyj uwierzytelniania systemu Windows lub Użyj uwierzytelniania formularzy.

    Jeśli została wybrana opcja Użyj uwierzytelniania systemu Windows, wybrać Zezwalaj tylko użytkownikom określonym na ekranie Użytkownicy aplikacji przycisku opcji lub Zezwalaj każdemu uwierzytelnionemu użytkownikowi systemu Windows przycisku opcji.

    Aplikacja będzie teraz wymagać od użytkowników podania poświadczeń, aby uzyskać dostęp do aplikacji.

Aby wyłączyć uwierzytelnianie

  1. W Solution Explorer, otwórz menu skrótów dla Właściwości węzła, a następnie wybierz polecenie Otwórz.

  2. W Projektanta aplikacji, wybierz polecenie Kontroli dostępu kartę.

  3. W Wybierz typ uwierzytelniania: listy, wybierz polecenie nie należy włączać uwierzytelniania.

    Aplikacja nie będzie wymagać od użytkowników podania poświadczeń, aby uzyskać dostęp do aplikacji i każdy użytkownik będzie mógł uzyskać dostęp do każdej części aplikacji.

Uprawnienia

Następnym krokiem zabezpieczania aplikacji jest utworzenie uprawnień.Możesz zdefiniować uprawnienia dla ekranów, poleceń, obiektów danych i zapytań.Najpierw, zdefiniuj obiekt uprawnień w Projektancie aplikacji.Następnie, odwołaj się do obiektu w kodzie, za pomocą jednej z metod Can, takich jak CanRun<NazwaEkranu> lub <NazwaKwerendy>_CanExecute.Kod w tych metodach, zwykle sprawdza, czy bieżący użytkownik lub rola ma uprawnienie, a następnie wyświetla formularz lub wykonuje zapytanie, tylko wtedy, gdy uprawnienie zostanie zweryfikowane.

Aby przetestować kod, uruchom aplikację, zarówno jako użytkownik, który posiada uprawnienie, jak i użytkownik, który go nie ma.Przez ustawienie uprawnień debugowania, możesz personifikować użytkownika podczas testowania i debugowania aplikacji.

Aby utworzyć uprawnienie

  1. W Solution Explorer, otwórz menu skrótów dla Właściwości węzła, a następnie wybierz polecenie Otwórz.

  2. W Projektanta aplikacji, wybierz polecenie Kontroli dostępu kartę.

  3. W Zdefiniuj uprawnienia lub wybierz uprawnienia używane do debugowania siatki, w Nazwa kolumny, wybierz polecenie < Dodaj nowe uprawnienie >, a następnie wprowadź Nazwa programowa o pozwolenie.

    Nazwa musi zaczynać się od znaku alfabetycznego i może zawierać tylko znaki alfabetyczne, numeryczne lub podkreślenia.

  4. W Nazwa wyświetlana kolumny, wprowadź nazwę uprawnienia, jaka ma się pojawiać na ekranie, że administrator aplikacji będzie używał do przypisywania ról.

  5. W Opis kolumny, wprowadź opis uprawnienia.

Aby napisać kod ustawiający uprawnienia do ekranu

  1. W Solution Explorer, otwórz menu skrótów dla węzła ekranu, a następnie wybierz Otwórz.

    Projektanta ekranu dla tego pojawi się ekran.

  2. W Pisanie kodu listy, wybierz polecenie CanRunScreenName, gdzie ScreenName jest nazwą wybranego ekranu.

  3. W Edytor kodu, wprowadź następujący kod w CanRunScreenName metoda:

    If Current.User.HasPermission(Can_View_Products) Then
        result =  True
    Else
        result = False
    End If
    
    if (Current.User.HasPermission(Permissions.Can_View_Products)) 
    {
        result = true;
    } 
    else 
    {
        result = false;
    }
    

    Kod ten będzie wykonywany przy każdym uruchomieniu aplikacji.

    [!UWAGA]

    Zauważ, że przykładowy kod sprawdza uprawnienia o nazwie Can_View_Products.W miejscach, w których się pojawia, podstaw nazwę uprawnienia, które zostało zdefiniowane w aplikacji.

Aby napisać kod ustawiający uprawnienia do polecenia

  1. W Solution Explorer, otwórz menu skrótów dla węzła ekranu, a następnie wybierz Otwórz.

    Projektanta ekranu dla tego pojawi się ekran.

  2. W Drzewa zawartości ekranu okienku rozwiń węzeł polecenia, a następnie wybierz polecenie, dla którego chcesz napisać kod.

  3. Otwórz menu skrótów dla polecenia, a następnie wybierz ButtonName**_CanExecute**, gdzie ButtonName jest nazwą polecenia, który został wybrany.

  4. W Edytor kodu, należy wprowadzić kod, który ma w ButtonName**_CanExecute** metoda.

    [!UWAGA]

    Przykład kodu jest dostępny w sekcji "Aby napisać kod ustawiający uprawnienia do ekranu" wcześniej w tym temacie.

Aby napisać kod ustawiający uprawnienia do obiektu

  1. W Solution Explorer, otwórz menu skrótów dla węzła programu encji, a następnie wybierz Otwórz.

    Projektant obiektów dla otwiera ten podmiot.

  2. W Pisanie kodu listy, wybierz polecenie Nazwa jednostki**_Can**operacji metoda, gdzie Nazwa jednostki jest nazwą podmiotu, i operacji nazywa się operacja, dla którego chcesz napisać kod.

    [!UWAGA]

    Dostępne metody zależy od kontekstu.Przykładami są: CanDelete i CanUpdate.

  3. W Edytor kodu, należy wprowadzić kod, który ma w Nazwa jednostki**_Can**operacji metoda.

    [!UWAGA]

    Przykład kodu jest dostępny w sekcji "Aby napisać kod ustawiający uprawnienia do ekranu" wcześniej w tym temacie.

Aby napisać kod ustawiający uprawnienia do zapytania

  1. W Solution Explorer, otwórz menu skrótów dla węzła kwerendy, a następnie wybierz Otwórz.

    Projektant kwerend dla tej kwerendy zostanie otwarty.

  2. W Pisanie kodu listy, wybierz jedną z Nazwa_kwerendy**_CanExecute** metod, gdzie Nazwa_kwerendy jest nazwą kwerendy.

  3. W Edytor kodu, należy wprowadzić kod, który ma w Nazwa_kwerendy**_CanExecute** metoda.

    [!UWAGA]

    Przykład kodu jest dostępny w sekcji "Aby napisać kod ustawiający uprawnienia do ekranu" wcześniej w tym temacie.

Aby włączyć uprawnienia do debugowania

  1. W Solution Explorer, otwórz menu skrótów dla Właściwości węzła, a następnie wybierz polecenie Otwórz.

  2. W Projektanta aplikacji, wybierz polecenie Kontroli dostępu kartę.

  3. W Zdefiniuj uprawnienia lub wybierz uprawnienia używane do debugowania siatki, wybierz uprawnienia, które chcesz włączyć do debugowania, a następnie wybierz uprawnione do debugowania pole wyboru.

Publikowanie

Podczas zabezpieczania aplikacji ostatnim krokiem jest go opublikować.Podczas publikowania po raz pierwszy, musisz podać informacje uwierzytelniania dla domyślnego administratora.Gdy ponownie publikujesz, nie trzeba Powtórz ten krok.

Aby podać informacje uwierzytelniające podczas publikowania aplikacji

  1. W Kreatora publikowania aplikacji LightSwitch, wybierz polecenie Ustawienia zabezpieczeń strony, a następnie wybierz Tak, utwórz administratora aplikacji przycisku opcji.

    [!UWAGA]

    Pozostałe kroki należy wykonać tylko wtedy, gdy publikujesz bezpośrednio do serwera.Tworząc pakiet zostanie monit o dodanie konta administracyjnego, podczas wdrażania pakietu.

  2. W Nazwa użytkownika tekst Wprowadź nazwę użytkownika.

    Jeśli używasz uwierzytelniania systemu Windows, należy określić prawidłową nazwę logowania systemu Windows, który ma postać domeny\Nazwa użytkownika.

    PoradaPorada

    Możesz również przypisać grupy zabezpieczeń w usłudze Active Directory, jako administrator domyślny.

  3. W Imię i nazwisko tekst Wprowadź pełną nazwę użytkownika lub grupy, który będzie domyślnym administratorem.

  4. W hasło tekst Wprowadź hasło.

    [!UWAGA]

    Jeśli używasz uwierzytelniania systemu Windows, Imię i nazwisko, hasło i Potwierdź hasło pól nie są wyświetlane.

  5. W Potwierdź hasło tekst Wprowadź hasło ponownie.

    Należy pamiętać nazwy użytkownika i hasła, ponieważ będzie potrzebne do określenia ich przy pierwszym uruchomieniu aplikacji.

  6. Zakończ publikowanie aplikacji.

Role i użytkownicy

Jeśli administrator aplikacji, należy uruchomić aplikacji opublikowanych po raz pierwszy.Następnie należy użyć role ekranu i Użytkownicy ekranu do definiowania ról, przypisywania uprawnień do ról i przypisywania ról do użytkowników lub grup użytkowników.Mają dostęp do tych ekranów, w działającej aplikacji w czasie projektowania lub kiedy jest wdrożony.W czasie projektowania, w celu uzyskania dostępu do ekranów, należy ustawić uprawnienie debugowania.We wdrożonej aplikacji, każdy użytkownik z przyznanymi uprawnieniem Administrator zabezpieczeń, będzie miał dostęp do ekranów.

[!UWAGA]

Aby zalogować się, należy kliknąć nazwę użytkownika i hasło, które zostało określone podczas publikowania aplikacji.

Aby zdefiniować rolę i przypisać uprawnienia

  1. W opublikowanej aplikacji, która jest uruchomiona w ramach uprawnień administratora, na pasku menu wybierz polecenie role.

  2. W role okienka, wybierz polecenie +... Przycisk (Dodaj).

  3. W Dodawanie nowej roli okno dialogowe, należy wprowadzić nazwę roli, a następnie wybierz OK przycisk.

  4. W uprawnienia okienka, wybierz polecenie +... Przycisk (Dodaj).

    Na siatce Uprawnienia pojawi się nowy wiersz.

  5. W pierwszej kolumnie siatki wybierz uprawnienie z listy.

    Lista zawiera wszystkie uprawnienia dostępne dla aplikacji.Można dodać liczbę uprawnień potrzebujesz, ale musisz wybrać +... Przycisk (Dodaj) dla każdego z nich go dodać.

  6. Na pasku narzędzi aplikacji wybierz zapisać przycisk, aby zapisać zmiany.

Aby dodać użytkownika lub grupę użytkowników

  1. Na pasku menu wybierz polecenie Użytkownicy do wyświetlania Użytkownicy ekranu.

  2. W użytkowników i grup okienka, wybierz polecenie +... Przycisk (Dodaj).

  3. W Nazwa tekst Wprowadź nazwę użytkownika.

    Jeśli używasz uwierzytelniania systemu Windows, należy określić prawidłową nazwę użytkownika w formie alias (frotte), domeny i alias (example\terry), alias i domena (terry@example.com), lub w pełni kwalifikowaną nazwę domeny i alias (northamerica.corp.example.com\terry).Cały ciąg musi zawierać mniej niż niż 256 znaków.Można również określić nazwę grupy zabezpieczeń w usłudze Active Directory.Jeśli używasz uwierzytelniania formularzy, nazwa użytkownika musi być unikatowa i zawierać mniej niż 256 znaków.

  4. W Imię i nazwisko tekst Wprowadź pełną nazwę użytkownika.

    Informacje z pola Pełna nazwa są używane tylko w celach wyświetlania.

    [!UWAGA]

    W przypadku uwierzytelniania systemu Windows Imię i nazwisko pole jest wypełniane automatycznie w oparciu o nazwę użytkownika i nie można edytować.

  5. W hasło tekst Wprowadź hasło.

    [!UWAGA]

    Hasło i Potwierdź hasło pól nie są wyświetlane, jeśli używasz uwierzytelniania systemu Windows.

  6. W Potwierdź hasło tekst wprowadź to samo hasło.

  7. W role okienka, wybierz polecenie Dodaj przycisk, a następnie wybierz rolę w role listy.

    Użytkownika można przypisać do wielu ról, powtarzając ten krok dla każdej roli.

  8. Na pasku narzędzi aplikacji wybierz zapisać przycisk, aby zapisać zmiany.

Aby usunąć użytkownika lub grupę użytkowników

  1. Na pasku menu wybierz polecenie Użytkownicy do wyświetlania Użytkownicy ekranu.

  2. W użytkowników i grup okienka, wybierz konto które chcesz usunąć, a następnie wybierz X przycisk (Usuń).

    [!UWAGA]

    Jeśli użytkownik jest zalogowany przy użyciu konta, który zostanie usunięty, użytkownik nie będzie można zapisać lub uzyskać dostęp do danych na serwerze.Jeśli użytkownik próbuje uzyskać dostęp do danych z serwera, zostanie wyświetlony komunikat Odmowa dostępu.

    [!UWAGA]

    Jeśli zostanie usunięte konto grupy, każdy użytkownik, którego rola dziedziczyła po tej grupie, utraci uprawnienia dla tej roli.

  3. Na pasku narzędzi aplikacji wybierz zapisać przycisk, aby zapisać zmiany.

Zobacz też

Koncepcje

Zagadnienia zabezpieczeń dotyczące LightSwitch

Inne zasoby

Projekty: Kontener dla aplikacji

Grupy zabezpieczeń usługi Active Directory