Class: Gitlab::Auth::Saml::Config
- Inherits:
-
Object
- Object
- Gitlab::Auth::Saml::Config
- Defined in:
- lib/gitlab/auth/saml/config.rb
Constant Summary collapse
- DEFAULT_NICKNAME_ATTRS =
%w[username nickname].freeze
- DEFAULT_NAME_ATTRS =
%w[ http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name http://schemas.microsoft.com/ws/2008/06/identity/claims/name ].freeze
- DEFAULT_EMAIL_ATTRS =
%w[ http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress http://schemas.microsoft.com/ws/2008/06/identity/claims/emailaddress ].freeze
- DEFAULT_FIRST_NAME_ATTRS =
%w[ http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname http://schemas.microsoft.com/ws/2008/06/identity/claims/givenname ].freeze
- DEFAULT_LAST_NAME_ATTRS =
%w[ http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname http://schemas.microsoft.com/ws/2008/06/identity/claims/surname ].freeze
- DEFAULT_PROVIDER_NAME =
'saml'
Class Method Summary collapse
Instance Method Summary collapse
- #admin_groups ⇒ Object
- #external_groups ⇒ Object
- #groups ⇒ Object
-
#initialize(provider = DEFAULT_PROVIDER_NAME) ⇒ Config
constructor
A new instance of Config.
- #options ⇒ Object
- #upstream_two_factor_authn_contexts ⇒ Object
Constructor Details
#initialize(provider = DEFAULT_PROVIDER_NAME) ⇒ Config
Returns a new instance of Config.
44 45 46 |
# File 'lib/gitlab/auth/saml/config.rb', line 44 def initialize(provider = DEFAULT_PROVIDER_NAME) @provider = provider end |
Class Method Details
.default_attribute_statements ⇒ Object
30 31 32 33 34 35 36 37 38 39 |
# File 'lib/gitlab/auth/saml/config.rb', line 30 def default_attribute_statements defaults = OmniAuth::Strategies::SAML.[:attribute_statements].to_hash.deep_symbolize_keys defaults[:nickname] = DEFAULT_NICKNAME_ATTRS.dup defaults[:name].concat(DEFAULT_NAME_ATTRS) defaults[:email].concat(DEFAULT_EMAIL_ATTRS) defaults[:first_name].concat(DEFAULT_FIRST_NAME_ATTRS) defaults[:last_name].concat(DEFAULT_LAST_NAME_ATTRS) defaults end |
.enabled? ⇒ Boolean
26 27 28 |
# File 'lib/gitlab/auth/saml/config.rb', line 26 def enabled? ::AuthHelper.saml_providers.any? end |
Instance Method Details
#admin_groups ⇒ Object
64 65 66 |
# File 'lib/gitlab/auth/saml/config.rb', line 64 def admin_groups [:admin_groups] end |
#external_groups ⇒ Object
60 61 62 |
# File 'lib/gitlab/auth/saml/config.rb', line 60 def external_groups [:external_groups] end |
#groups ⇒ Object
56 57 58 |
# File 'lib/gitlab/auth/saml/config.rb', line 56 def groups [:groups_attribute] end |
#options ⇒ Object
48 49 50 |
# File 'lib/gitlab/auth/saml/config.rb', line 48 def Gitlab::Auth::OAuth::Provider.config_for(@provider) end |
#upstream_two_factor_authn_contexts ⇒ Object
52 53 54 |
# File 'lib/gitlab/auth/saml/config.rb', line 52 def upstream_two_factor_authn_contexts .args[:upstream_two_factor_authn_contexts] end |