1 | <?php namespace Limoncello\Passport\Package; |
||
29 | class PassportSettings implements SettingsInterface |
||
30 | { |
||
31 | use CheckCallableTrait; |
||
32 | |||
33 | /** Config key */ |
||
34 | const KEY_IS_LOG_ENABLED = 0; |
||
35 | |||
36 | /** Config key */ |
||
37 | const KEY_APPROVAL_URI_STRING = self::KEY_IS_LOG_ENABLED + 1; |
||
38 | |||
39 | /** Config key */ |
||
40 | const KEY_ERROR_URI_STRING = self::KEY_APPROVAL_URI_STRING + 1; |
||
41 | |||
42 | /** Config key */ |
||
43 | const KEY_DEFAULT_CLIENT_ID = self::KEY_ERROR_URI_STRING + 1; |
||
44 | |||
45 | /** Config key */ |
||
46 | const KEY_CODE_EXPIRATION_TIME_IN_SECONDS = self::KEY_DEFAULT_CLIENT_ID + 1; |
||
47 | |||
48 | /** Config key */ |
||
49 | const KEY_TOKEN_EXPIRATION_TIME_IN_SECONDS = self::KEY_CODE_EXPIRATION_TIME_IN_SECONDS + 1; |
||
50 | |||
51 | /** Config key */ |
||
52 | const KEY_RENEW_REFRESH_VALUE_ON_TOKEN_REFRESH = self::KEY_TOKEN_EXPIRATION_TIME_IN_SECONDS + 1; |
||
53 | |||
54 | /** Config key */ |
||
55 | const KEY_USER_TABLE_NAME = self::KEY_RENEW_REFRESH_VALUE_ON_TOKEN_REFRESH + 1; |
||
56 | |||
57 | /** Config key */ |
||
58 | const KEY_USER_PRIMARY_KEY_NAME = self::KEY_USER_TABLE_NAME + 1; |
||
59 | |||
60 | /** |
||
61 | * Config key |
||
62 | * |
||
63 | * Value should be a static callable for user credentials validator (login and password). |
||
64 | * |
||
65 | * Examples ['SomeNamespace\ClassName', 'staticMethodName'] or 'SomeNamespace\ClassName::staticMethodName' |
||
66 | * |
||
67 | * Method signature |
||
68 | * |
||
69 | * public static function validateUser(ContainerInterface $container, string $userName, string $password) |
||
70 | * |
||
71 | * which returns either user ID (int|string) or null if user not found/invalid credentials. |
||
72 | */ |
||
73 | const KEY_USER_CREDENTIALS_VALIDATOR = self::KEY_USER_PRIMARY_KEY_NAME + 1; |
||
74 | |||
75 | /** Config key */ |
||
76 | const KEY_FAILED_CUSTOM_UNAUTHENTICATED_FACTORY = self::KEY_USER_CREDENTIALS_VALIDATOR + 1; |
||
77 | |||
78 | /** |
||
79 | * Config key |
||
80 | * |
||
81 | * Value should be a static callable for user scope validator (allowed scope identities). |
||
82 | * |
||
83 | * Examples ['SomeNamespace\ClassName', 'staticMethodName'] or 'SomeNamespace\ClassName::staticMethodName' |
||
84 | * |
||
85 | * Method signature |
||
86 | * |
||
87 | * public static function validateScope(ContainerInterface $container, int $userId, array $scopeIds = null): ?array |
||
88 | * |
||
89 | * which returns either changed allowed scope IDs or null if scope was not changed or throws auth exception. |
||
90 | */ |
||
91 | const KEY_USER_SCOPE_VALIDATOR = self::KEY_FAILED_CUSTOM_UNAUTHENTICATED_FACTORY + 1; |
||
92 | |||
93 | /** |
||
94 | * Config key |
||
95 | * |
||
96 | * A custom properties provider for auth token. All the values returned from the provider |
||
97 | * will be added to the token. |
||
98 | * |
||
99 | * Value should be a static callable. |
||
100 | * |
||
101 | * Examples ['SomeNamespace\ClassName', 'staticMethodName'] or 'SomeNamespace\ClassName::staticMethodName' |
||
102 | * |
||
103 | * Method signature |
||
104 | * |
||
105 | * public static function getExtraProps(ContainerInterface $container, TokenInterface $token): array |
||
106 | */ |
||
107 | const KEY_TOKEN_CUSTOM_PROPERTIES_PROVIDER = self::KEY_USER_SCOPE_VALIDATOR + 1; |
||
108 | |||
109 | /** Config key */ |
||
110 | const KEY_LAST = self::KEY_TOKEN_CUSTOM_PROPERTIES_PROVIDER; |
||
111 | |||
112 | /** |
||
113 | * @inheritdoc |
||
114 | */ |
||
115 | 1 | final public function get(): array |
|
191 | |||
192 | /** |
||
193 | * @return array |
||
194 | */ |
||
195 | 1 | protected function getSettings(): array |
|
204 | } |
||
205 |