]> BookStack Code Mirror - bookstack/blob - config/services.php
310ea295fd61531df398d4093302c6e4210a2f79
[bookstack] / config / services.php
1 <?php
2
3 return [
4
5     /*
6     |--------------------------------------------------------------------------
7     | Third Party Services
8     |--------------------------------------------------------------------------
9     |
10     | This file is for storing the credentials for third party services such
11     | as Stripe, Mailgun, Mandrill, and others. This file provides a sane
12     | default location for this type of information, allowing packages
13     | to have a conventional place to find your various credentials.
14     |
15     */
16
17     // Single option to disable non-auth external services such as Gravatar and Draw.io
18     'disable_services' => env('DISABLE_EXTERNAL_SERVICES', false),
19     'gravatar' => env('GRAVATAR', !env('DISABLE_EXTERNAL_SERVICES', false)),
20     'drawio' => env('DRAWIO', !env('DISABLE_EXTERNAL_SERVICES', false)),
21
22     'gravatar_url' => env('GRAVATAR_URL', false),
23
24     'callback_url' => env('APP_URL', false),
25
26     'mailgun'  => [
27         'domain' => '',
28         'secret' => '',
29     ],
30
31     'mandrill' => [
32         'secret' => '',
33     ],
34
35     'ses'      => [
36         'key'    => '',
37         'secret' => '',
38         'region' => 'us-east-1',
39     ],
40
41     'stripe'   => [
42         'model'  => \BookStack\Auth\User::class,
43         'key'    => '',
44         'secret' => '',
45     ],
46
47     'github'   => [
48         'client_id'     => env('GITHUB_APP_ID', false),
49         'client_secret' => env('GITHUB_APP_SECRET', false),
50         'redirect'      => env('APP_URL') . '/login/service/github/callback',
51         'name'          => 'GitHub',
52         'auto_register' => env('GITHUB_AUTO_REGISTER', false),
53         'auto_confirm' => env('GITHUB_AUTO_CONFIRM_EMAIL', false),
54     ],
55
56     'google'   => [
57         'client_id'     => env('GOOGLE_APP_ID', false),
58         'client_secret' => env('GOOGLE_APP_SECRET', false),
59         'redirect'      => env('APP_URL') . '/login/service/google/callback',
60         'name'          => 'Google',
61         'auto_register' => env('GOOGLE_AUTO_REGISTER', false),
62         'auto_confirm' => env('GOOGLE_AUTO_CONFIRM_EMAIL', false),
63         'select_account' => env('GOOGLE_SELECT_ACCOUNT', false),
64     ],
65
66     'slack'   => [
67         'client_id'     => env('SLACK_APP_ID', false),
68         'client_secret' => env('SLACK_APP_SECRET', false),
69         'redirect'      => env('APP_URL') . '/login/service/slack/callback',
70         'name'          => 'Slack',
71         'auto_register' => env('SLACK_AUTO_REGISTER', false),
72         'auto_confirm' => env('SLACK_AUTO_CONFIRM_EMAIL', false),
73     ],
74
75     'facebook'   => [
76         'client_id'     => env('FACEBOOK_APP_ID', false),
77         'client_secret' => env('FACEBOOK_APP_SECRET', false),
78         'redirect'      => env('APP_URL') . '/login/service/facebook/callback',
79         'name'          => 'Facebook',
80         'auto_register' => env('FACEBOOK_AUTO_REGISTER', false),
81         'auto_confirm' => env('FACEBOOK_AUTO_CONFIRM_EMAIL', false),
82     ],
83
84     'twitter'   => [
85         'client_id'     => env('TWITTER_APP_ID', false),
86         'client_secret' => env('TWITTER_APP_SECRET', false),
87         'redirect'      => env('APP_URL') . '/login/service/twitter/callback',
88         'name'          => 'Twitter',
89         'auto_register' => env('TWITTER_AUTO_REGISTER', false),
90         'auto_confirm' => env('TWITTER_AUTO_CONFIRM_EMAIL', false),
91     ],
92
93     'azure'   => [
94         'client_id'     => env('AZURE_APP_ID', false),
95         'client_secret' => env('AZURE_APP_SECRET', false),
96         'tenant'       => env('AZURE_TENANT', false),
97         'redirect'      => env('APP_URL') . '/login/service/azure/callback',
98         'name'          => 'Microsoft Azure',
99         'auto_register' => env('AZURE_AUTO_REGISTER', false),
100         'auto_confirm' => env('AZURE_AUTO_CONFIRM_EMAIL', false),
101     ],
102
103     'okta' => [
104         'client_id' => env('OKTA_APP_ID'),
105         'client_secret' => env('OKTA_APP_SECRET'),
106         'redirect' => env('APP_URL') . '/login/service/okta/callback', 
107         'base_url' => env('OKTA_BASE_URL'), 
108         'name'          => 'Okta',
109         'auto_register' => env('OKTA_AUTO_REGISTER', false),
110         'auto_confirm' => env('OKTA_AUTO_CONFIRM_EMAIL', false),
111     ],
112
113     'gitlab' => [
114         'client_id'     => env('GITLAB_APP_ID'),
115         'client_secret' => env('GITLAB_APP_SECRET'),
116         'redirect'      => env('APP_URL') . '/login/service/gitlab/callback',
117         'instance_uri'  => env('GITLAB_BASE_URI'), // Needed only for self hosted instances
118         'name'          => 'GitLab',
119         'auto_register' => env('GITLAB_AUTO_REGISTER', false),
120         'auto_confirm' => env('GITLAB_AUTO_CONFIRM_EMAIL', false),
121     ],
122
123     'twitch' => [
124         'client_id' => env('TWITCH_APP_ID'),
125         'client_secret' => env('TWITCH_APP_SECRET'),
126         'redirect' => env('APP_URL') . '/login/service/twitch/callback',
127         'name'          => 'Twitch',
128         'auto_register' => env('TWITCH_AUTO_REGISTER', false),
129         'auto_confirm' => env('TWITCH_AUTO_CONFIRM_EMAIL', false),
130     ],
131
132     'discord' => [
133         'client_id' => env('DISCORD_APP_ID'),
134         'client_secret' => env('DISCORD_APP_SECRET'),
135         'redirect' => env('APP_URL') . '/login/service/discord/callback',
136         'name' => 'Discord',
137         'auto_register' => env('DISCORD_AUTO_REGISTER', false),
138         'auto_confirm' => env('DISCORD_AUTO_CONFIRM_EMAIL', false),
139     ],
140
141     'ldap' => [
142         'server' => env('LDAP_SERVER', false),
143         'dn' => env('LDAP_DN', false),
144         'pass' => env('LDAP_PASS', false),
145         'base_dn' => env('LDAP_BASE_DN', false),
146         'user_filter' => env('LDAP_USER_FILTER', '(&(uid=${user}))'),
147         'version' => env('LDAP_VERSION', false),
148         'email_attribute' => env('LDAP_EMAIL_ATTRIBUTE', 'mail'),
149         'follow_referrals' => env('LDAP_FOLLOW_REFERRALS', false),
150                 'user_to_groups' => env('LDAP_USER_TO_GROUPS',false),
151                 'group_attribute' => env('LDAP_GROUP_ATTRIBUTE', 'memberOf'),
152                 'remove_from_groups' => env('LDAP_REMOVE_FROM_GROUPS',false),
153                 'tls_insecure' => env('LDAP_TLS_INSECURE', false),
154         ]
155
156 ];