Grupy reguł i reguły
Zaktualizowano: 19 czerwca 2015 r.
Dotyczy: Azure
W Microsoft Azure Active Directory Access Control (znanym również jako usługa Access Control service lub ACS) grupa reguł jest nazwanym zestawem reguł oświadczeń definiujących, które oświadczenia tożsamości są przekazywane od dostawców tożsamości do aplikacji jednostki uzależnionej. W usłudze ACS grupy reguł są skojarzone z aplikacjami jednostki uzależnionej. Grupa reguł może być używana przez więcej niż jedną aplikację jednostki uzależnionej, a aplikacja jednostki uzależnionej może odwoływać się do więcej niż jednej grupy reguł.
Gdy usługa ACS odbiera żądanie tokenu lub token od dostawcy tożsamości, jest uruchamiana przez wszystkie grupy reguł skojarzone z aplikacją jednostki uzależnionej w celu przetworzenia oświadczeń w tokenie. Wszystkie grupy reguł są uruchamiane jednocześnie, podobnie jak wszystkie reguły w każdej grupie reguł (kolejność nie ma znaczenia). Jeśli reguły powodują wystawienie nowych oświadczeń po zakończeniu przebiegu, grupy reguł skojarzone z aplikacją jednostki uzależnionej są uruchamiane ponownie. Proces uruchamiania reguły i grupy reguł zatrzymuje się, gdy nie są wystawiane żadne nowe oświadczenia po zakończeniu procesu uruchamiania lub po zakończeniu działania usługi ACS dziesięć przebiegów (w zależności od tego, co nastąpi wcześniej).
Grupy reguł i reguły można tworzyć i edytować ręcznie przy użyciu portalu zarządzania ACS lub programowo przy użyciu usługi ZARZĄDZANIA ACS.
Konfigurowanie reguł za pomocą portalu zarządzania usługą ACS
Tworzenie grup reguł
Po dodaniu i skonfigurowaniu właściwości nowej aplikacji jednostki uzależnionej w portalu zarządzania USŁUG ACS można również utworzyć grupę reguł skojarzona z tą aplikacją jednostki uzależnionej, ponieważ domyślnie opcja Utwórz nową grupę reguł jest zaznaczona na stronie Dodawanie aplikacji jednostki uzależnionej w portalu zarządzania ACS. Zdecydowanie zalecamy, aby zachować tę opcję zaznaczoną, a tym samym utworzyć domyślną grupę reguł dla nowej aplikacji jednostki uzależnionej. (Aby uzyskać więcej informacji, zobacz "Grupy reguł" w aplikacjach jednostki uzależnionej). Grupy reguł można również dodać przy użyciu sekcji Grupy reguł w portalu zarządzania usługą ACS. Następnie po dodaniu aplikacji jednostki uzależnionej przy użyciu strony Dodaj aplikację jednostki uzależnionej można skojarzyć je z co najmniej jedną istniejącą grupą reguł.
Generowanie reguł
Po utworzeniu grupy reguł można użyć strony Edytuj grupę reguł w portalu zarządzania USŁUGAMI ACS, aby automatycznie generować reguły. Jeśli zdecydujesz się automatycznie wygenerować reguły, zostanie wyświetlony monit o wybranie dostawców tożsamości, dla których chcesz wygenerować reguły. Gdy grupa reguł jest połączona z co najmniej jedną aplikacją jednostki uzależnionej, dostawcy tożsamości używany przez te aplikacje jednostki uzależnionej są domyślnie wybierani.
Uwaga
W przypadku WS-Federation dostawców tożsamości jest tworzona reguła dla każdego typu oświadczenia oferowanego w WS-Federation metadanych dostawcy tożsamości, a ta reguła przechodzi przez typ oświadczenia i wartość. W przypadku innych dostawców tożsamości reguły przekazywania są generowane na podstawie listy wstępnie określonych typów oświadczeń.
Wyświetlanie, dodawanie i edytowanie reguł
Na stronie Edytowanie grupy reguł w portalu zarządzania usługAMI ACS są wyświetlane wszystkie reguły w tabeli, w której kolumny zawierają oświadczenie wyjściowe dla reguły, wystawcę oświadczeń (może być dostawcą tożsamości lub usługą ACS) i opisem.
Jeśli klikniesz daną regułę w tabeli, nastąpi przekierowanie do strony Edytowanie reguły oświadczenia , gdzie reguła może być edytowana. Aby ręcznie dodać nową regułę, możesz kliknąć przycisk Dodaj.
Reguły oświadczeń
Reguły oświadczeń opisują logikę przekształcania oświadczeń wejściowych w oświadczenia wyjściowe przez usługę ACS. Reguły są zawarte w grupach reguł, które są skojarzone z aplikacjami jednostki uzależnionej i są uruchamiane za każdym razem, gdy token jest wystawiany przez usługę ACS dla aplikacji. Jeśli grupa reguł nie zawiera żadnych reguł, token nie zostanie wystawiony dla aplikacji jednostki uzależnionej. Zazwyczaj jedna reguła jest wymagana dla każdego typu oświadczenia, który ma być wystawiany w aplikacji jednostki uzależnionej. Istnieje możliwość utworzenia i użycia tylko jednej reguły do przekazywania wszystkich typów i wartości oświadczeń. Jednak użycie reguły dla każdego typu oświadczenia zwiększa bezpieczeństwo i zapewnia większą kontrolę nad danymi przekazywanymi do aplikacji.
W usłudze ACS można skonfigurować regułę tak, aby przekazywać oświadczenie odebrane od dostawcy tożsamości lub klienta do aplikacji jednostki uzależnionej bez zmiany typu oświadczenia, wystawcy lub wartości. Te reguły są nazywane regułami przekazywania . Na przykład tokeny wystawione przez Windows Live ID (konto Microsoft) zawierają typ oświadczenia nameidentifier. Aby przekazać to oświadczenie bez zmian do aplikacji jednostki uzależnionej, należy skonfigurować regułę przekazywania, która przetwarza typ oświadczenia input nameidentifier z wystawcy oświadczenia, Windows live ID i tworzy identyczne oświadczenie wyjściowe.
W poniższej tabeli przedstawiono oświadczenia przekazywane z fikcyjnego dostawcy tożsamości usług AD FS 2.0 o nazwie Contoso.com.
Oświadczenia wejściowe | Oświadczenia wyjściowe | ||||
---|---|---|---|---|---|
Wystawca |
Typ |
Wartość |
Wystawca |
Typ |
Wartość |
Contoso.com |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier |
123456789 |
Access Control Service |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier |
123456789 |
Contoso.com |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress |
john@contoso.com |
Access Control Service |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress |
john@contoso.com |
Contoso.com |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/name |
Jan Kowalski |
Access Control Service |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/name |
Jan Kowalski |
Aparat reguł ACS zapewnia również możliwość przekształcania oświadczeń wejściowych w zupełnie inne oświadczenia wyjściowe na podstawie wystawcy oświadczeń, typu oświadczenia wejściowego i wartości. Innymi słowy aparat reguł ACS umożliwia przekształcanie tokenów wejściowych w różne tokeny wyjściowe przez dodanie, usunięcie lub zmianę oświadczeń, które zawierają tokeny. Ta forma transformacji oświadczeń sprawia, że usługa ACS może implementować podstawową autoryzację na podstawie wartości wejściowych oświadczeń. W poniższym przykładzie pokazano typ oświadczenia "role" z wartością "administrator" jest wynikiem, jeśli oświadczenie wejściowe "nameidentifier" pasuje do określonej wartości.
Oświadczenia wejściowe | Oświadczenia wyjściowe | ||||
---|---|---|---|---|---|
Wystawca |
Typ |
Wartość |
Wystawca |
Typ |
Wartość |
Contoso.com |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier |
123456789 |
Access Control Service |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier |
administrator |
Aparat reguł ACS zapewnia również możliwość tworzenia oświadczeń wyjściowych na podstawie połączenia dwóch oświadczeń wejściowych. W poniższym przykładzie oświadczenie wyjściowe jest typu "action" z wartością "write", jeśli zarówno "nameidentifier" i "role" oświadczenia wejściowe z Contoso.com pasują do określonych wartości. Gdy dwie oświadczenia wejściowe są określone w regule, obie wartości muszą być zgodne w celu wygenerowania oświadczenia wyjściowego.
Oświadczenia wejściowe | Oświadczenia Ouutput | ||||
---|---|---|---|---|---|
Wystawca |
Typ |
Wartość |
Wystawca |
Typ |
Wartość |
Contoso.com |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier |
123456789 |
Access Control Service
|
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/action
|
zapis
|
Contoso.com |
https://schemas.xmlsoap.org/ws/2005/05/identity/claims/role |
administrator |
Aby uzyskać więcej informacji i kroków dotyczących implementowania przekształcania tokenu przy użyciu reguł, zobacz Instrukcje: implementowanie logiki przekształcania tokenu przy użyciu reguł.
Podczas dodawania nowych lub edytowania istniejących reguł oświadczeń za pomocą portalu zarządzania USŁUGAMI ACS należy skonfigurować następujące ustawienia:
Warunki reguły (jeśli) — dodawanie oświadczenia wejściowego
Ta sekcja zawiera warunki, które muszą być spełnione, aby reguła wystawiała oświadczenie wyjściowe. Te warunki obejmują następujące warunki:
Wystawca oświadczeń — odwołuje się do jednostki, która wystawiła oświadczenie wejściowe. Może to być skonfigurowany dostawca tożsamości (na przykład ) lub ACS. ACS jest wystawcą, jeśli oświadczenie wejściowe pochodzi z tożsamości usługi lub oświadczenia wejściowego pochodzi z innej reguły oświadczenia. Aby uzyskać więcej informacji, zobacz Tożsamości usługi.
Typ oświadczenia wejściowego — odwołuje się do typu oświadczenia wejściowego odebranego od wystawcy oświadczenia. Na przykład pełny typ oświadczenia dla "nameidentifier" to https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier. Opcje dla tego pola obejmują:
Dowolne — zwraca wartość true, jeśli jakikolwiek typ oświadczenia został odebrany od wystawcy.
Wybierz typ — zwraca wartość true, jeśli typ oświadczenia wejściowego jest zgodny z typem wybranym w menu rozwijanym. To menu jest wypełniane dostępnymi typami oświadczeń dla wybranego wystawcy oświadczenia.
Wpisz typ — zwraca wartość true, jeśli typ oświadczenia wejściowego jest zgodny z dokładną wartością wprowadzoną w polu.
Ważne
To pole ma wielkość liter.
Wartość oświadczenia wejściowego — odwołuje się do wartości odebranego oświadczenia wejściowego. Na przykład typ oświadczenia "nameidentifier" używa adresu e-mail jako jego wartości, a to pole może służyć do sprawdzania określonego adresu e-mail. Opcje dla tego pola obejmują:
Dowolne — zwraca wartość true, jeśli jakakolwiek wartość oświadczenia zostanie odebrana od wystawcy.
Wprowadź wartość — zwraca wartość true, jeśli typ oświadczenia wejściowego jest zgodny z dokładną wartością wprowadzoną w polu. Ta opcja wymaga wybrania lub wprowadzenia określonego typu oświadczenia wejściowego w polu Typ oświadczenia wejściowego .
Ważne
To pole ma wielkość liter.
Warunki reguły (jeśli) — dodawanie drugiego oświadczenia wejściowego
Aby dodać drugie oświadczenie do reguły, kliknij przycisk Dodaj drugie oświadczenie wejściowe. Umożliwia to określenie dodatkowych warunków przedstawionych poniżej. Należy pamiętać, że w regule z dwoma oświadczeniami wejściowymi wszystkie warunki muszą być prawdziwe, aby wygenerować oświadczenie wyjściowe.
Wystawca oświadczeń — odwołuje się do jednostki, która wydała drugie oświadczenie wejściowe. Może to być ten sam dostawca tożsamości wybrany dla pierwszego oświadczenia lub może to być ACS. Wybierz pozycję ACS, aby określić oświadczenia wygenerowane na podstawie innych reguł oświadczeń podczas przetwarzania reguł.
Ważne
Nie można wybrać dwóch różnych dostawców tożsamości dla pierwszych i drugich oświadczeń, ponieważ przetwarzanie reguł występuje tylko dla jednego tokenu wystawionego przez jednego dostawcę tożsamości naraz.
Typ oświadczenia wejściowego — odwołuje się do typu oświadczenia wejściowego odebranego od wystawcy oświadczenia. Na przykład pełny typ oświadczenia dla "nameidentifier" to https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier. Opcje dla tego pola obejmują:
Wybierz typ — zwraca wartość true, jeśli typ oświadczenia wejściowego jest zgodny z typem wybranym w menu rozwijanym. To menu jest wypełniane dostępnymi typami oświadczeń dla wybranego wystawcy oświadczenia.
Wpisz typ — zwraca wartość true, jeśli typ oświadczenia wejściowego jest zgodny z dokładną wartością wprowadzoną w polu.
Ważne
To pole ma wielkość liter.
Wartość oświadczenia wejściowego — odwołuje się do wartości odebranego oświadczenia wejściowego. Na przykład typ oświadczenia "nameidentifier" używa adresu e-mail jako jego wartości, a to pole może służyć do sprawdzania określonego adresu e-mail. Zwraca wartość true, jeśli typ oświadczenia wejściowego jest zgodny z dokładną wartością wprowadzoną w polu.
Ważne
To pole ma wielkość liter.
Akcje reguły (następnie)
Ta sekcja określa oświadczenie wyjściowe, które jest wystawiane przez usługę ACS, jeśli warunki w sekcji If reguły są prawdziwe. Opcje oświadczenia wyjściowego obejmują następujące elementy:
Typ oświadczenia wyjściowego — typ oświadczenia wystawiony przez usługę ACS. Opcje tego pola obejmują następujące elementy:
Typ oświadczenia wejściowego przekazywanego — wystawia oświadczenie wyjściowe o tym samym typie co oświadczenie wejściowe.
Wybierz typ — problemy z oświadczeniem wyjściowym określonego typu. Menu rozwijane zawiera listę typowych typów oświadczeń.
Wpisz typ — wystawia oświadczenie wprowadzonego typu. Jeśli oświadczenie wyjściowe ma być obecne w tokenie SAML, ta wartość musi być identyfikatorem URI (na przykład https://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier).
Ważne
To pole ma wielkość liter.
Wartość oświadczenia wyjściowego — odwołuje się do wartości oświadczenia wyjściowego wystawionego przez usługę ACS. Opcje tego pola obejmują następujące elementy:
Wartość oświadczenia wejściowego przekazywanego — wystawia oświadczenie wyjściowe o wartości identycznej z wartością oświadczenia wejściowego.
Wprowadź wartość — wystawia oświadczenie, które ma wartość wprowadzoną w tym polu. Ta opcja wymaga wybrania lub wprowadzenia określonego typu oświadczenia wejściowego w polu Typ oświadczenia wyjściowego .
Ważne
To pole ma wielkość liter.
Informacje o regule
Możesz użyć tej sekcji, aby utworzyć opis reguły.
Uwaga
W usłudze ACS opisy reguł nie są tworzone automatycznie dla wygenerowanych reguł.
Konfigurowanie reguł za pomocą usługi zarządzania ACS
Reguły w przestrzeni nazw Access Control można skonfigurować programowo przy użyciu usługi zarządzania ACS. Przykład konfigurowania reguł przy użyciu ASP.NET można znaleźć w temacie Code Sample: Management Service (Przykład kodu: usługa zarządzania). Poniżej przedstawiono ważne elementy, które należy wziąć pod uwagę podczas używania usługi zarządzania ACS do konfigurowania reguł:
Podczas edytowania i usuwania reguł w grupie reguł zaleca się, aby najpierw wykonać zapytanie o usługę ACS dla wszystkich reguł w tej grupie reguł i użyć identyfikatorów reguł zwracanych przez zapytanie, aby wykonać operacje edytowania lub usuwania. Nie zaleca się przechowywania identyfikatorów zwracanych przez usługę zarządzania na potrzeby przyszłych operacji, ponieważ te identyfikatory nie mają gwarancji trwałości.
Jeśli piszesz logikę automatycznego ponawiania prób do tworzenia reguł (takich jak w przypadku przekroczenia limitu czasu), zaleca się, aby najpierw wykonać zapytanie o istnienie identycznej reguły w bieżącej grupie reguł przed próbą dodania go po raz drugi.