|
| 1 | +# https://github.com/zmartzone/mod_auth_openidc/blob/master/auth_openidc.conf |
| 2 | +type Apache::OIDCSettings = Struct[ |
| 3 | + { |
| 4 | + Optional['RedirectURI'] => Variant[Stdlib::HTTPSUrl,Stdlib::HttpUrl], |
| 5 | + Optional['CryptoPassphrase'] => String, |
| 6 | + Optional['MetadataDir'] => String, |
| 7 | + Optional['ProviderMetadataURL'] => Stdlib::HTTPSUrl, |
| 8 | + Optional['ProviderIssuer'] => String, |
| 9 | + Optional['ProviderAuthorizationEndpoint'] => Stdlib::HTTPSUrl, |
| 10 | + Optional['ProviderJwksUri'] => Stdlib::HTTPSUrl, |
| 11 | + Optional['ProviderTokenEndpoint'] => Stdlib::HTTPSUrl, |
| 12 | + Optional['ProviderTokenEndpointAuth'] => Enum['client_secret_basic','client_secret_post','client_secret_jwt','private_key_jwt','none'], |
| 13 | + Optional['ProviderTokenEndpointParams'] => Pattern['/^[A-Za-z0-9\-\._%]+=[A-Za-z0-9\-\._%]+(&[A-Za-z0-9\-\._%]+=[A-Za-z0-9\-\._%]+)*$/'], |
| 14 | + Optional['ProviderUserInfoEndpoint'] => Stdlib::HTTPSUrl, |
| 15 | + Optional['ProviderCheckSessionIFrame'] => Stdlib::HTTPSUrl, |
| 16 | + Optional['ProviderEndSessionEndpoint'] => Stdlib::HTTPSUrl, |
| 17 | + Optional['ProviderRevocationEndpoint'] => Stdlib::HTTPSUrl, |
| 18 | + Optional['ProviderBackChannelLogoutSupported'] => Enum['On','Off'], |
| 19 | + Optional['ProviderRegistrationEndpointJson'] => String, |
| 20 | + Optional['Scope'] => Pattern['/^[A-Za-z0-9\-\._\s]+$/'], |
| 21 | + Optional['AuthRequestParams'] => Pattern['/^[A-Za-z0-9\-\._%]+=[A-Za-z0-9\-\._%]+(&[A-Za-z0-9\-\._%]+=[A-Za-z0-9\-\._%]+)*$/'], |
| 22 | + Optional['SSLValidateServer'] => Enum['On','Off'], |
| 23 | + Optional['UserInfoRefreshInterval'] => Integer, |
| 24 | + Optional['JWKSRefreshInterval'] => Interger, |
| 25 | + Optional['UserInfoTokenMethod'] => Enum['authz_header','post_param'], |
| 26 | + Optional['ProviderAuthRequestMethod'] => Enum['GET','POST'], |
| 27 | + Optional['PublicKeyFiles'] => String, |
| 28 | + Optional['ResponseType'] => Enum['code','id_token','id_token token','code id_token','code token','code id_token token'], |
| 29 | + Optional['ResponseMode'] => Enum['fragment','query','form_post'], |
| 30 | + Optional['ClientID'] => String, |
| 31 | + Optional['ClientSecret'] => String, |
| 32 | + Optional['ClientTokenEndpointCert'] => String, |
| 33 | + Optional['ClientTokenEndpointKey'] => String, |
| 34 | + Optional['ClientName'] => String, |
| 35 | + Optional['ClientContact'] => String, |
| 36 | + Optional['PKCDMethod'] => Enum['plain','S256','referred_tb'], |
| 37 | + Optional['TokenBindingPolicy'] => Enum['disabled','optional','required','enforced'], |
| 38 | + Optional['ClientJwksUri'] => Stdlib::HTTPSUrl, |
| 39 | + Optional['IDTokenSignedResponseAlg'] => Enum['RS256','RS384','RS512','PS256','PS384','PS512','HS256','HS384','HS512','ES256','ES384','ES512'], |
| 40 | + Optional['IDTokenEncryptedResponseAlg'] => Enum['RSA1_5','A128KW','A256KW','RSA-OAEP'], |
| 41 | + Optional['IDTokenEncryptedResponseAlg'] => Enum['A128CBC-HS256','A256CBC-HS512','A256GCM'], |
| 42 | + Optional['UserInfoSignedResposeAlg'] => Enum['RS256','RS384','RS512','PS256','PS384','PS512','HS256','HS384','HS512','ES256','ES384','ES512'], |
| 43 | + Optional['UserInfoEncryptedResponseAlg'] => Enum['RSA1_5','A128KW','A256KW','RSA-OAEP'], |
| 44 | + Optional['UserInfoEncryptedResponseEnc'] => Enum['A128CBC-HS256','A256CBC-HS512','A256GCM'], |
| 45 | + Optional['OAuthServerMetadataURL'] => Stdlib::HTTPSUrl, |
| 46 | + Optional['AuthIntrospectionEndpoint'] => Stdlib::HTTPSUrl, |
| 47 | + Optional['OAuthClientID'] => String, |
| 48 | + Optional['OAuthClientSecret'] => String, |
| 49 | + Optional['OAuthIntrospectionEndpointAuth'] => Enum['client_secret_basic','client_secret_post','client_secret_jwt','private_key_jwt','bearer_access_token','none'], |
| 50 | + Optional['OAuthIntrospectionClientAuthBearerToken'] => String, |
| 51 | + Optional['OAuthIntrospectionEndpointCert'] => String, |
| 52 | + Optional['OAuthIntrospectionEndpointKey'] => String, |
| 53 | + Optional['OAuthIntrospectionEndpointMethod'] => Enum['POST','GET'], |
| 54 | + Optional['OAuthIntrospectionEndpointParams'] => Pattern['/^[A-Za-z0-9\-\._%]+=[A-Za-z0-9\-\._%]+(&[A-Za-z0-9\-\._%]+=[A-Za-z0-9\-\._%]+)*$/'], |
| 55 | + Optional['OAuthIntrospectionTokenParamName'] => String, |
| 56 | + Optional['OAuthTokenExpiryClaim'] => Pattern['/^[A-Za-z0-9\-\._]+\s(absolute|relative)\s(mandatory|optional)$/'], |
| 57 | + Optional['OAuthSSLValidateServer'] => Enum['On','Off'], |
| 58 | + Optional['OAuthVerifySharedKeys'] => String, |
| 59 | + Optional['OAuthVerifyCertFiles'] => String, |
| 60 | + Optional['OAuthVerifyJwksUri'] => Stdlib::HTTPSUrl, |
| 61 | + Optional['OAuthRemoteUserClaim'] => String, |
| 62 | + Optional['OAuthAcceptTokenAs'] => Pattern['/^((header|post|query|cookie\:[A-Za-z0-9\-\._]+|basic)\s?)+$/'], |
| 63 | + Optional['OAuthAccessTokenBindingPolicy'] => Enum['disabled','optional','required','enforced'], |
| 64 | + Optional['Cookie'] => String, |
| 65 | + Optional['SessionCookieChunkSize'] => Integer, |
| 66 | + Optional['CookieHTTPOnly'] => Enum['On','Off'], |
| 67 | + Optional['CookieSameSite'] => Enum['On','Off'], |
| 68 | + Optional['PassCookies'] => String, |
| 69 | + Optional['StripCookies'] => String, |
| 70 | + Optional['StateMaxNumberOfCookies'] => Pattern['/^[0-9]+\s(false|true)$/'], |
| 71 | + Optional['SessionInactivityTimeout'] => Integer, |
| 72 | + Optional['SessionMaxDuration'] => Integer, |
| 73 | + Optional['SessionType'] => Pattern['/^(server-cache(:persistent)?|client-cookie(:persistent)?)$/'], |
| 74 | + Optional['SessionCacheFallbackToCookie'] => Enum['On','Off'], |
| 75 | + Optional['CacheType'] => Enum['shm','memcache','file','redis'], |
| 76 | + Optional['CacheEncrypt'] => Enum['On','Off'], |
| 77 | + Optional['CacheShmMax'] => Integer, |
| 78 | + Optional['CacheShmEntrySizeMax'] => Integer, |
| 79 | + Optional['CacheFileCleanInterval'] => Integer, |
| 80 | + Optional['MemCacheServers'] => String, |
| 81 | + Optional['RedisCacheServer'] => String, |
| 82 | + Optional['RedisCachePassword'] => String, |
| 83 | + Optional['DiscoverURL'] => Variant[Stdlib::HTTPSUrl,Stdlib::HttpUrl], |
| 84 | + Optional['HTMLErrorTemplate'] => String, |
| 85 | + Optional['DefaultURL'] => Variant[Stdlib::HTTPSUrl,Stdlib::HttpUrl], |
| 86 | + Optional['PathScope'] => Pattern['/^[A-Za-z0-9\-\._\s]+$/'], |
| 87 | + Optional['PathAuthRequestParams'] => Pattern['/^[A-Za-z0-9\-\._%]+=[A-Za-z0-9\-\._%]+(&[A-Za-z0-9\-\._%]+=[A-Za-z0-9\-\._%]+)*$/'], |
| 88 | + Optional['IDTokenIatSlack'] => Integer, |
| 89 | + Optional['ClaimPrefix'] => String, |
| 90 | + Optional['ClaimDelimiter'] => Pattern['/^.$/'], |
| 91 | + Optional['RemoteUserClaim'] => String, |
| 92 | + Optional['PassIDTokenAs'] => Pattern['/^((claims|payload|serialized)\s?)+$/'], |
| 93 | + Optional['PassUserInfoAs'] => Pattern['/^((claims|json|jwt)\s?)+$/'], |
| 94 | + Optional['PassClaimsAs'] => Enum['none','headers','environment','both'], |
| 95 | + Optional['AuthNHeader'] => String, |
| 96 | + Optional['HTTPTimeoutLong'] => Integer, |
| 97 | + Optional['HTTPTimeoutShort'] => Integer, |
| 98 | + Optional['StateTimeout'] => Integer, |
| 99 | + Optional['ScrubRequestHeaders'] => Enum['On','Off'], |
| 100 | + Optional['OutgoingProxy'] => String, |
| 101 | + Optional['UnAuthAction'] => Enum['auth','pass','401','410'], |
| 102 | + Optional['UnAuthzAction'] => Enum['401','403','auth'], |
| 103 | + Optional['PreservePost'] => Enum['On','Off'], |
| 104 | + Optional['PassRefreshToken'] => Enum['On','Off'], |
| 105 | + Optional['RequestObject'] => String, |
| 106 | + Optional['ProviderMetadataRefreshInterval'] => Integer, |
| 107 | + Optional['InfoHook'] => Pattern['/^((iat|access_token|access_token_expires|id_token|userinfo|refresh_token|session)\s?)+$/'], |
| 108 | + Optional['BlackListedClaims'] => String, |
| 109 | + Optional['WhiteListedClaims'] => String, |
| 110 | + Optional['RefreshAccessTokenBeforeExpiry'] => Pattern['/^[0-9]+(\slogout_on_error)?$/'], |
| 111 | + } |
| 112 | +] |
0 commit comments