belvg / sso-fpbundle
Integration with knpuniversity/oauth2-client-bundle to provide services
Installs: 83
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Type:symfony-bundle
Requires
README
Configure routes
Copy file src/config/sso_fp.yaml
to config/routes
Configure knp_client bundle
copy file src/config/knpu_oauth2_client.yaml
to config/packages/knpu_oauth2_client.yaml
Security
add to src/config/security.yaml
add next lines:
providers: # used to reload user from session & other features (e.g. switch_user) app_user_provider: id: SSO\FpBundle\Provider\FactoryPortalUserProvider firewalls: main: lazy: true provider: app_user_provider custom_authenticators: - SSO\FpBundle\Security\FactoryPortalAuthenticator logout: path: app_logout target: factory_portal_logout # add to access_controll section access_control: # - { path: ^/admin, roles: ROLE_ADMIN } # - { path: ^/profile, roles: ROLE_USER } - { path: ^/connect/factoryportal, roles: PUBLIC_ACCESS } - { path: ^/fp_logout, roles: PUBLIC_ACCESS } - { path: ^/connect/factoryportal/check, roles: PUBLIC_ACCESS } - { path: ^/, roles: IS_AUTHENTICATED_FULLY }
Services
add to config/service.yaml
add next lines:
SSO\FpBundle\Provider\FactoryOauth2ClientProvider: arguments: $options: { clientId: '%env(OAUTH_FACTORY_PORTAL_ID)%', clientSecret: '%env(OAUTH_FACTORY_PORTAL_SECRET)%' } public: true # app.factory.provider: alias: SSO\FpBundle\Provider\FactoryOauth2ClientProvider # # # KnpU\OAuth2ClientBundle\Client\OAuth2Client: arguments: $provider: '@app.factory.provider'
Configure env
OAUTH_FACTORY_PORTAL_ID='<factory_portal_id>' OAUTH_FACTORY_PORTAL_SECRET='<factory_portal_secret>'