OpenID 依賴方自訂內容
下表列出 OpenID 依賴方 (RP) 信任關聯攔截程式 (TAI) 的自訂內容。 您可以利用管理主控台,在 OpenID TAI 的「自訂內容」畫面中定義這些內容。
自訂內容用來判斷 OpenID RP 的行為,以及與「OpenID 提供者 (OP)」通訊。
內容分成兩個種類:
- 必要的 OpenID 依賴方自訂內容: 如果未定義這些內容, RP 不會起始設定。
- 選用 OpenID 依賴方自訂內容: 如所記載,這些內容預設為某個值。 它們用來細部調整 RP 的行為。
| 內容名稱 | 值 | 說明 |
|---|---|---|
| providerIdentifier | 您可以指定任何 URL 值。 此內容沒有預設值 | 指定具有「OpenID 提供者」詳細資料的 URL。 |
| effectiveUriList | 您可以在這裡指定以逗點區隔的 URI 型樣清單。 此內容沒有預設值 | 指定 RP 截取的 URI (使用正規表示式) 清單 (以逗點區隔)。 例如, /oidapp.*, /snoop, /dash/dashboard。 |
| axRequiredAttribute | 您可以指定任何字串值。 此內容沒有預設值 | 指定 OpenID 提供者所要求的依賴方所要求的屬性。 其格式為 "alias , uriType"。 例如: 新增以 axRequiredAttribute 開頭且每一個以唯一字尾結尾的內容名稱 (格式為 " axRequiredAttributesuffix") ,可以提供多個屬性給 TAI。 例如: |
| 內容名稱 | 值 | 說明 |
|---|---|---|
| mapAliasAsPrincipal | 您可以指定以逗點區隔的字串值清單。 此內容沒有預設值。 如果未指定內容,則會將 OpenID 要求的 ID 用於身分。 | 指定「OpenID 提供者」回應中的屬性別名清單 (以逗點區隔) ,以便在建立 JAAS 主體時作為主體名稱。 將使用符合回應中別名的第一個項目。 例如,如果此內容設為email, guid, dn,假設回應中有下列屬性別名,則會使用 someone@ibm.com 作為主體名稱。 例如:
|
| excludedUriList | 您可以指定任何 URL 值。 此內容沒有預設值。 | 指定 TAI 不應截取的 URI (使用 regex) 清單 (以逗點區隔)。 例如: " /oidapp. * , /dash.* |
| axOptionalAttribute | 您可以指定任何字串值。 此內容沒有預設值。 | 指定來自 OpenID 提供者的依賴方所要求的屬性。 它的格式為-"alias , uriType"。 例如: email,
http://axschema.org/contact/email。 透過新增以 axOptionalAttribute 開頭且每一個以唯一字尾結尾的內容名稱 (格式為 "axOptionalAttributesuffix") ,可以將多個屬性提供給 TAI ,例如: axRequiredAttribute1: email、 http://axschema.org/contact/email或 axRequiredAttribute2:dn,http://www.ibm.com/axschema/bluepages/dn。 |
| axAttributeCount | 您可以指定任何整數值。 預設值是 1。 | 指定 OpenID RP TAI 針對來自「OpenID 提供者」的所有必要及選用屬性所要求的值數目。 如果這個內容設為 0, TAI 會要求屬性所有可用的值。 比方說,如果「OpenID 提供者」的名字有兩個值,請將 axAttributeCount 設為 2 ,以取得這兩個值。 |
| basicAuthUriList | 您可以在這裡指定以逗點區隔的 URI 型樣清單。 此內容沒有預設值 | 指定以逗點區隔的 URI 清單 (使用 regex) , TAI 應使用基本 (基本鑑別記號) 類型的 HTTP 授權標頭來進行鑑別。 這些 URI 應該在 "effectiveUriList" 中指定的 URI 集內。 會先評估 "effectiveUriList" ,以判斷 TAI 是否應該處理要求。 接下來會評估 "basicAuthUriList"。 |
| tryOpenIDIfBasicAuthFails | 您可以指定下列其中一個值:
|
如果 URI 位於 "basicAuthUriList" 集內,則此內容適用於 URI。 如果使用基本 (基本鑑別記號) 類型的 HTTP 授權標頭進行鑑別失敗, TAI 會嘗試使用 OpenID 來鑑別使用者 (它會將要求重新導向至 OpenID 提供者進行鑑別) |
| mapIdentityToRegistryUser | 您可以指定下列其中一個值:
|
如果此內容設為 false,則 IBM® IdP 使用者不需要在本端儲存庫中,鑑別即可運作。 這是預設行為。 如果內容設為 true,則 IBM IdP 使用者也應該在本端儲存庫中,然後才能進行鑑別。 |
| characterEncoding | 您可以指定任何代表字元編碼的字串值。 預設值是 UTF-8。 | 決定 TAI 收到不包含字元編碼集的要求時要使用的字元編碼。 |
| allowStateless | 您可以指定下列其中一個值:
|
這個旗標向 TAI 指出如果無法建立關聯,它是否可以撤回至 Stateless 模式來接受 OpenID 提供者伺服器的鑑別。 |
| useClientIdentity | 您可以指定下列其中一個值:
|
如果 TAI 可能未選擇任何別名作為主體,則此旗標會向 TAI 指出它是否可以使用用戶端身分作為主體。 |
| authenticationMode | 您可以指定任何字串值。 預設值是 checkid_setup。 | 如需此內容的相關資訊,請檢閱 OpenID 鑑別 2.0 。 它可以使用的另一個值是 checkid_immediate。 |
| maxAssociationAttempts | 您可以指定任何整數值。 預設值是 4。 | 指定 TAI 在停止之前嘗試與 OpenID 提供者伺服器建立關聯的次數。 |
| nonceValidTime | 您可以指定任何整數。 預設值為 300, | 此值以秒為單位。 這是 TAI 預期 OpenID 提供者回應的時間上限。 在要求中傳送並在回應中接收的暫時性要求值會在此給定時間後到期。 |
| sharedKeyEncryptionEnabled | 您可以指定下列其中一個值:
|
將此值指定為 true 會將 OpenID RP 和 OpenID 提供者設為使用共用 HMAC 金鑰進行簽署。 |
| hashAlgorithm | 您可以指定下列其中一個值:
|
OpenID RP 假設這是用來簽署 OpenID 提供者回應的演算法。 |
httpsRequired |
您可以指定下列其中一個值:
|
當這個內容設為 true時, OpenID Connect RP 只會建立與支援 https 通訊之 OP 的連線。 如果此內容設為 true,但 authorizeEndpoint、 tokenEndpoint 或 introspectEndpoint 的架構是 http ,則 TAI 將無法起始設定。如果此內容設為 true, RP 將不會嘗試處理任何不使用該架構的要求,而且如果 OP 端點是 http , RP 將不會接受透過 OP 進行使用者鑑別。 |
| connectTimeout | 您可以指定任何整數值。 預設值是 60。 | 此值以秒為單位。 指定 OpenID RP 在探索階段期間所用的逾時值,同時也會建立與 OpenID 提供者的連線。 |
| socketTimeout | 您可以指定任何整數值。 預設值是 60。 | 此值以秒為單位。 指定 OpenID RP 在探索階段期間所用的逾時值,同時也會與 OpenID 提供者通訊。 |
| hostNameVerificationEnabled | 您可以指定下列其中一個值:
|
指定 OpenID RP 在建立與「OpenID 提供者」的 SSL 連線時,是否也可以驗證它所收到之憑證中的主機名稱。 |
| maxDiscoveryRetry | 您可以指定任何整數值。 預設值是 2。 | RP 嘗試與 OpenID 提供者建立連線的次數。 |
| realmName | 您可以指定任何字串值。 預設值是 OpenIDDefaultRealm。 | 當建立 JAAS 主題時, RP 所用的網域範圍名稱,會使用從 OpenID 提供者收到的 ID。 所用的 realmName ( OpenIDDefaultRealm 或自訂值) 必須配置成授信領域。 |
| maxDiscoveryCacheSize | 您可以指定任何整數值。 預設值是 10000。 | 指定 OpenID RP 使用的內部快取大小上限。 針對 RP 的所有後續要求都會被拒絕,並傳回 HTTP 回應碼503(服務無法使用) 一旦達到快取大小限制。 |
| cacheCleanupFrequency | 您可以指定任何整數值。 預設值為 3600。 | 此值以秒為單位,是清除快取中舊物件的頻率。 |
| jndiCacheName | 當啟用動態快取服務時,會使用名稱為 OIDCRPDistribtedCacheMap 且 KEY_ENABLE_CACHE_REPLICATION=true 和 KEY_REPLICATION_DOMAIN=DynaCacheCluster 的 DistributedObjectCache。 無法變更此快取的屬性 | 如果您想要使用其內容不同於預設值的物件快取實例,請使用此內容來指定由動態快取服務管理的自訂物件快取實例。 如需如何設定自訂物件快取實例的相關資訊,請參閱使用物件快取實例主題。 必須啟用動態快取服務,才能使用物件快取實例或 DistributedObjectCache。 當動態快取服務不在使用中時,會使用伺服器型快取。 當使用動態快取服務時,會忽略 maxDiscoveryCacheSize 和 CacheCleanupFrequency 的值。 |
| realmIdentifier | 您可以指定任何字串值。 此內容沒有預設值 | 這個內容設為 OpenID 提供者伺服器所傳回之其中一個屬性的別名。 此屬性的值是 realmName。 如果 OpenID 提供者針對這個別名傳回多個值,則可以選取任何值。 |
| groupIdentifier | 您可以指定任何字串值。 此內容沒有預設值。 | 這個內容設為 OpenID 提供者伺服器所傳回之其中一個屬性的別名。 此屬性的值是已鑑別使用者所屬的群組。 如果 OpenID 提供者針對這個別名傳回多個值,則會選取所有值。 |
| includeCustomCacheKeyInSubject | 您可以指定下列其中一個值:
|
這個內容的值決定 TAI 所建立的主體是否包含自訂快取索引鍵。 |
httpOnly |
您可以指定下列其中一個值:
|
當這個內容設為 true時,會在 Cookie 上設定 httpOnly 旗標。 |