Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Fontos
2025. május 1-jére az Azure AD B2C már nem lesz elérhető az új ügyfelek számára. További információ a GYIK-ben.
Ez a cikk példákat tartalmaz az Identity Experience Framework-séma dátumjogcímátalakításainak az Azure Active Directory B2C-ben (Azure AD B2C) való használatára. További információ: jogcímátalakítások.
AssertDateTimeIsGreaterThan
Azt állítja, hogy egy dátum későbbi, mint egy második dátum. Meghatározza, hogy az rightOperand érték nagyobb-e, mint a leftOperand. Ha igen, kivételt jelez. Tekintse meg a jogcímátalakítás élő bemutatóját .
| Elem | TransformationClaimType | Adattípus | Jegyzetek |
|---|---|---|---|
| InputClaim | balOperandus | szál/zsinór | Az első jogcím típusa, amelynek később kell lennie, mint a második jogcím. |
| InputClaim | rightOperandus | szál/zsinór | A második jogcím típusa, amelynek az első jogcímnél korábbinak kell lennie. |
| BemenetiParaméter | AssertIfEqualTo | Boolean | Megadja, hogy ennek az állításnak hibát kell-e okoznia, ha a bal operandus egyenlő a jobb operandussal. Lehetséges értékek: true (alapértelmezett) vagy false. |
| BemenetiParaméter | AssertIfRightOperandIsNotPresent | Boolean | Megadja, hogy ez az állítás sikeres legyen-e, ha a megfelelő operandus hiányzik. |
| BemenetiParaméter | TreatAsEqualIfWithinMillseconds | Int | Megadja az ezredmásodpercek számát, amelyek lehetővé teszik a két dátum között az egyenlő időpontok figyelembe vételét (például az óraeltérés figyelembe vételéhez). |
Az AssertDateTimeIsGreaterThan jogcímátalakítás mindig egy érvényesítési műszaki profilból történik, amelyet egy önérvényesített műszaki profil hív meg. A DateTimeGreaterThan ön által érvényesített műszaki profil metaadatai vezérli a felhasználónak a technikai profil által megjelenített hibaüzenetet. A hibaüzenetek honosíthatók.
Példa Az AssertDateTimeIsGreaterThanra
Az alábbi példa összehasonlítja a currentDateTime jogcímet a approvedDateTime jogcímmel. A hiba akkor jelenik meg, ha currentDateTime későbbi, mint approvedDateTime. Az átalakítás egyenlőként kezeli az értékeket, ha 5 percen (30000 ezredmásodpercen) belül vannak. Nem fog hibát okozni, ha az értékek egyenlőek, mert AssertIfEqualTo a beállítás értéke false.
<ClaimsTransformation Id="AssertApprovedDateTimeLaterThanCurrentDateTime" TransformationMethod="AssertDateTimeIsGreaterThan">
<InputClaims>
<InputClaim ClaimTypeReferenceId="approvedDateTime" TransformationClaimType="leftOperand" />
<InputClaim ClaimTypeReferenceId="currentDateTime" TransformationClaimType="rightOperand" />
</InputClaims>
<InputParameters>
<InputParameter Id="AssertIfEqualTo" DataType="boolean" Value="false" />
<InputParameter Id="AssertIfRightOperandIsNotPresent" DataType="boolean" Value="true" />
<InputParameter Id="TreatAsEqualIfWithinMillseconds" DataType="int" Value="300000" />
</InputParameters>
</ClaimsTransformation>
Megjegyzés:
A fenti példában, ha eltávolítja a AssertIfEqualTo bemeneti paramétert, és az currentDateTime egyenlőapprovedDateTime, hibaüzenet jelenik meg. Az AssertIfEqualTo alapértelmezett érték a következő true: .
- Bemeneti jogcímek:
- balOperandus: 2022-01-01T15:00:00
- jobbOperandus: 2022-01-22T15:00:00
- Bemeneti paraméterek:
- AssertIfEqualTo: hamis
- AssertIfRightOperandIsNotPresent: igaz
- TreatAsEqualIfWithinMillseconds: 300000 (30 másodperc)
- Eredmény: Hiba történt
Jogcímátalakítás meghívása
Az alábbi Example-AssertDates érvényesítési műszaki profil meghívja a jogcímek átalakítását AssertApprovedDateTimeLaterThanCurrentDateTime .
<TechnicalProfile Id="Example-AssertDates">
<DisplayName>Unit test</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.ClaimsTransformationProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="ComparisonResult" DefaultValue="false" />
</OutputClaims>
<OutputClaimsTransformations>
<OutputClaimsTransformation ReferenceId="AssertDates" />
</OutputClaimsTransformations>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
</TechnicalProfile>
Az önérvényesített műszaki profil meghívja az érvényesítési Example-AssertDates műszaki profilt.
<TechnicalProfile Id="SelfAsserted-AssertDateTimeIsGreaterThan">
<DisplayName>User ID signup</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
<Item Key="DateTimeGreaterThan">Custom error message if the provided right operand is greater than the right operand.</Item>
</Metadata>
...
<ValidationTechnicalProfiles>
<ValidationTechnicalProfile ReferenceId="ClaimsTransformation-AssertDateTimeIsGreaterThan" />
</ValidationTechnicalProfiles>
</TechnicalProfile>
ConvertDateTimeToDateClaim
Jogcímtípust DateTime jogcímtípussá Date alakít át. A jogcímátalakítás eltávolítja az időformátumot a dátumból. Tekintse meg a jogcímátalakítás élő bemutatóját .
| Elem | TransformationClaimType | Adattípus | Jegyzetek |
|---|---|---|---|
| InputClaim | inputClaim | dátumIdő | A konvertálni kívánt jogcímtípus. |
| OutputClaim | outputClaim | dátum | A jogcímátalakítás meghívása után létrehozott jogcímtípus. |
Példa a ConvertDateTimeToDateClaim-ra
Az alábbi példa a jogcím systemDateTime (dateTime adattípus) másik jogcímre systemDate (dátum adattípus) való konvertálását mutatja be.
<ClaimsTransformation Id="ConvertToDate" TransformationMethod="ConvertDateTimeToDateClaim">
<InputClaims>
<InputClaim ClaimTypeReferenceId="systemDateTime" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="systemDate" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Bemeneti jogcímek:
- inputClaim: 2022-01-03T11:34:22.0000000Z
- Kimeneti jogcímek:
- outputClaim: 2022-01-03
ConvertDateToDateTimeClaim
Jogcímtípust Date jogcímtípussá DateTime alakít át. A jogcímátalakítás átalakítja az időformátumot, és 12:00:00-t ad hozzá a dátumhoz. Tekintse meg a jogcímátalakítás élő bemutatóját .
| Elem | TransformationClaimType | Adattípus | Jegyzetek |
|---|---|---|---|
| InputClaim | inputClaim | dátum | A konvertálni kívánt jogcímtípus. |
| OutputClaim | outputClaim | dátumIdő | A jogcímátalakítás meghívása után létrehozott jogcímtípus. |
Példa a ConvertDateToDateTimeClaim használatára
Az alábbi példa a jogcím dateOfBirth (dátum adattípus) másik jogcímre dateOfBirthWithTime (dateTime adattípus) való átalakítását mutatja be.
<ClaimsTransformation Id="ConvertToDateTime" TransformationMethod="ConvertDateToDateTimeClaim">
<InputClaims>
<InputClaim ClaimTypeReferenceId="dateOfBirth" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="dateOfBirthWithTime" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Bemeneti jogcímek:
- inputClaim: 2022-01-03
- Kimeneti jogcímek:
- outputClaim: 2022-01-03T00:00:00.0000000Z
DateTimeComparison
Két dátumot hasonlít össze, és meghatározza, hogy az első dátum későbbi, korábbi vagy egyenlő-e egy másik dátummal. Az eredmény egy új logikai jogcím, amelynek értéke vagy trueértéke false . Tekintse meg a jogcímátalakítás élő bemutatóját .
| Elem | TransformationClaimType | Adattípus | Jegyzetek |
|---|---|---|---|
| InputClaim | firstDateTime | dátumIdő | Az első olyan dátum, amely összehasonlítja, hogy későbbi, korábbi vagy egyenlő-e a második dátummal. A null érték kivételt eredményez. |
| InputClaim | secondDateTime | dátumIdő | A második összehasonlítandó dátum. A null érték az aktuális dátumként és időpontként lesz kezelve. |
| BemenetiParaméter | timeSpanInSeconds | Int | Az első dátumhoz hozzáadandó időbélyeg. Lehetséges értékek: negatív -2 147 483 648 és pozitív 2 147 483 647 közötti tartomány. |
| BemenetiParaméter | operátor | szál/zsinór | Az alábbi értékek egyike: same, later thanvagy earlier than. |
| OutputClaim | eredmény | Boolean | A jogcímátalakítás meghívása után létrejött jogcím. |
Példa a DateTimeComparisonra
Ezzel a jogcímátalakítás használatával megállapíthatja, hogy az első dátum és a timeSpanInSeconds paraméter későbbi, korábbi vagy egyenlő-e egy másik dátummal. Az alábbi példa azt mutatja, hogy az első dátum (2022-01-01T00:00:00) plusz 90 nap későbbi, mint a második dátum (2022-03-16T00:00:00).
<ClaimsTransformation Id="CompareLastTOSAcceptedWithCurrentDateTime" TransformationMethod="DateTimeComparison">
<InputClaims>
<InputClaim ClaimTypeReferenceId="extension_LastTOSAccepted" TransformationClaimType="secondDateTime" />
<InputClaim ClaimTypeReferenceId="currentDateTime" TransformationClaimType="firstDateTime" />
</InputClaims>
<InputParameters>
<InputParameter Id="operator" DataType="string" Value="later than" />
<InputParameter Id="timeSpanInSeconds" DataType="int" Value="7776000" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="isLastTOSAcceptedGreaterThanNow" TransformationClaimType="result" />
</OutputClaims>
</ClaimsTransformation>
- Bemeneti jogcímek:
- firstDateTime: 2022-01-01T00:00:00.100000Z
- secondDateTime: 2022-03-16T00:00:00.100000Z
- Bemeneti paraméterek:
- operátor: később, mint
- timeSpanInSeconds: 7776000 (90 nap)
- Kimeneti jogcímek:
- eredmény: igaz
IsTermsOfUseConsentRequired
Annak meghatározása, hogy egy dateTime jogcímtípus korábbi vagy nagyobb-e egy adott dátumnál. Az eredmény egy új logikai jogcím, amelynek értéke vagy trueértéke false . Tekintse meg a jogcímátalakítás élő bemutatóját .
| Termék | TransformationClaimType | Adattípus | Jegyzetek |
|---|---|---|---|
| InputClaim | termsOfUseConsentDateTime | dátumIdő | A dateTime jogcím típusa annak ellenőrzéséhez, hogy korábbi vagy későbbi-e, mint a termsOfUseTextUpdateDateTime bemeneti paraméter. A nem definiált érték az eredményt adja true vissza. |
| BemenetiParaméter | termsOfUseTextUpdateDateTime | dátumIdő | A dateTime jogcím típusa annak ellenőrzéséhez, hogy korábbi vagy későbbi-e, mint a termsOfUseConsentDateTime bemeneti jogcím. A dátum idő része nem kötelező. |
| OutputClaim | eredmény | Boolean | A jogcímátalakítás meghívása után létrehozott jogcímtípus. |
Ezzel a jogcímátalakítással meghatározhatja, hogy egy dateTime jogcímtípus korábbi vagy nagyobb-e egy adott dátumnál. Ellenőrizze például, hogy egy felhasználó hozzájárult-e a használati feltételek (TOU) legújabb verziójához vagy a szolgáltatási feltételekhez. Ha ellenőrizni szeretné, hogy a felhasználó mikor járult hozzá utoljára, tárolja az utolsó alkalommal, amikor a felhasználó elfogadta a toU-t egy bővítményattribútumban. Amikor megváltozik a TOU-szöveg, frissítse a termsOfUseTextUpdateDateTime bemeneti paramétert a módosítás időpontjával. Ezután hívja meg ezt a jogcímátalakítást a dátumok összehasonlítása érdekében. Ha a jogcímek átalakítása eredményül ad truevissza, az termsOfUseConsentDateTime érték korábbi, mint az termsOfUseTextUpdateDateTime érték, és megkérheti a felhasználót, hogy fogadja el a frissített TOU-t.
<ClaimsTransformation Id="IsTermsOfUseConsentRequired" TransformationMethod="IsTermsOfUseConsentRequired">
<InputClaims>
<InputClaim ClaimTypeReferenceId="extension_termsOfUseConsentDateTime" TransformationClaimType="termsOfUseConsentDateTime" />
</InputClaims>
<InputParameters>
<InputParameter Id="termsOfUseTextUpdateDateTime" DataType="dateTime" Value="2021-11-15T00:00:00" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="termsOfUseConsentRequired" TransformationClaimType="result" />
</OutputClaims>
</ClaimsTransformation>
IsTermsOfUseConsentRequired példa
- Bemeneti jogcímek:
- termsOfUseConsentDateTime: 2020-03-09T09:15:00
- Bemeneti paraméterek:
- termsOfUseTextUpdateDateTime: 2021-11-15
- Kimeneti jogcímek:
- eredmény: igaz
AzAktuálisDátumIdőpontLekérése
Kérje le az aktuális UTC-dátumot és időpontot, és adja hozzá az értéket egy jogcímtípushoz. Tekintse meg a jogcímátalakítás élő bemutatóját .
| Elem | TransformationClaimType | Adattípus | Jegyzetek |
|---|---|---|---|
| OutputClaim | currentDateTime | dátumIdő | A jogcímátalakítás meghívása után létrehozott jogcímtípus. |
Példa a GetCurrentDateTime-ra
Az alábbi példa bemutatja, hogyan szerezheti be az aktuális adatokat és időt:
<ClaimsTransformation Id="GetSystemDateTime" TransformationMethod="GetCurrentDateTime">
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="systemDateTime" TransformationClaimType="currentDateTime" />
</OutputClaims>
</ClaimsTransformation>
- Kimeneti jogcímek:
- currentDateTime: 2022-01-14T11:40:35.0000000Z
Következő lépések
- További jogcímátalakítási minták keresése az Azure AD B2C-közösség GitHub-adattárában