ADFS 3.0 – Kopiowanie reguł

ADFS, jedni się go boją, inni uwielbiają. Jak można się domyślić zaliczam się do tych drugich. Sama administracja relacjami zaufania jednostek, w zasadzie nie jest trudna. Z GUI mamy możliwość wszystko ładnie sobie wyklikać, podobierać reguły oświadczeń wedle własnego uznania. Niemniej jednak, graficzna konsola wg mnie ma jedną dość poważną ułomność. Mianowicie brak możliwości kopiowania poszczególnych reguł oświadczeń, chociażby pomiędzy poszczególnymi zaufanymi jednostkami.

Na szczęście, nie jest to niewykonalne, a do całej procedury przydaje się niezastąpiony PowerShell wraz z intuicyjnie nazwanym modułem ADFS. Cała procedura kopiowania reguł oświadczeń jest banalnie prosta i w zasadzie wiąże się z wykorzystaniem tylko dwóch poleceń. Zaliczają się do nich Get-AdfsRelyingPartyTrust – służący do pobierania informacji o relacjach zaufanych jednostek; oraz analogicznie Set-AdfsRelyingPartyTrust, aby dopisać żądane informacje do innej relacji zaufanej jednostki.

Poszczególne reguły oświadczeń zapisywane są w ramach atrybutów intuicyjnie wskazujących na konkretne typy reguł. Z doświadczenia najczęściej wykorzystywane są IssuanceTransformRules służące do transformacji i przekazywania oświadczeń do końcowej webaplikacji oraz IssuanceAuthorizationRules, które służą do zarządzania dostępem na bazie zdefiniowanych reguł.

W celu skopiowania reguł oświadczeń, w pierwszej kolejności należy pobrać informacje ze źródłowej relacji zaufanych jednostek. Dokonujemy tego poprzez w/w polecenie Get-AdfsRelyingPartyTrust, na przykład:

$RTP = Get-AdfsRelyingPartyTrust -Name "ADFS test"

Jak możemy zaobserwować cały obiekt relacji zapisaliśmy do dedykowanej zmiennej. Następnie pozostaje nam tylko wkleić odpowiednie reguły do żądanej relacji. W tym celu wykorzystujemy drugie poleceniem Set-AdfsRelyingPartyTrust, na przykład:

Set-AdfsRelyingPartyTrust -TargetName "ADFS test2" -IssuanceTransformRules $RTP.IssuanceTransformRules

Jedyną różnicą jest samo wskazywanie docelowej jednostki uzależnionej. Mianowicie, nie wskazujemy jej poprzez parametr Name, ale w tym celu wykorzystujemy TargetName.

W celu weryfikacji czy reguły oświadczeń zostały skopiowane wystarczy posłużyć się pierwszym z poleceń:

Get-AdfsRelyingPartyTrust -Name "ADFS test2" | select *Rules

Źródła:
https://technet.microsoft.com/en-us/library/ee892326.aspx
https://technet.microsoft.com/en-us/library/ee892363.aspx

Reklamy

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj / Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj / Zmień )

Zdjęcie na Google+

Komentujesz korzystając z konta Google+. Wyloguj / Zmień )

Connecting to %s