def __init__(self, api_version, idp):
        if api_version not in ['v1']:
            raise errors.AnsibleFilterError("|failed api version {0} unknown".format(api_version))

        self._idp = copy.deepcopy(idp)

        if 'name' not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a name")

        if 'kind' not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a kind")

        self.name = self._idp.pop('name')
        self.login = ansible_bool(self._idp.pop('login', False))
        self.challenge = ansible_bool(self._idp.pop('challenge', False))
        self.provider = dict(apiVersion=api_version, kind=self._idp.pop('kind'))

        mm_keys = ('mappingMethod', 'mapping_method')
        mapping_method = None
        for key in mm_keys:
            if key in self._idp:
                mapping_method = self._idp.pop(key)
        if mapping_method is None:
            mapping_method = self.get_default('mappingMethod')
        self.mapping_method = mapping_method

        valid_mapping_methods = ['add', 'claim', 'generate', 'lookup']
        if self.mapping_method not in valid_mapping_methods:
            raise errors.AnsibleFilterError("|failed unkown mapping method "
                                            "for provider {0}".format(self.__class__.__name__))
        self._required = []
        self._optional = []
        self._allow_additional = True
Exemplo n.º 2
0
    def __init__(self, api_version, idp):
        if api_version not in ['v1']:
            raise errors.AnsibleFilterError("|failed api version {0} unknown".format(api_version))

        self._idp = copy.deepcopy(idp)

        if 'name' not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a name")

        if 'kind' not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a kind")

        self.name = self._idp.pop('name')
        self.login = ansible_bool(self._idp.pop('login', False))
        self.challenge = ansible_bool(self._idp.pop('challenge', False))
        self.provider = dict(apiVersion=api_version, kind=self._idp.pop('kind'))

        mm_keys = ('mappingMethod', 'mapping_method')
        mapping_method = None
        for key in mm_keys:
            if key in self._idp:
                mapping_method = self._idp[key]
        if mapping_method is None:
            mapping_method = self.get_default('mappingMethod')
        self.mapping_method = mapping_method

        valid_mapping_methods = ['add', 'claim', 'generate', 'lookup']
        if self.mapping_method not in valid_mapping_methods:
            raise errors.AnsibleFilterError("|failed unkown mapping method "
                                            "for provider {0}".format(self.__class__.__name__))
        self._required = []
        self._optional = []
        self._allow_additional = True
Exemplo n.º 3
0
    def __init__(self, api_version, idp):
        IdentityProviderOauthBase.__init__(self, api_version, idp)
        self._required += [['claims'], ['urls']]
        self._optional += [['ca'], ['extraScopes'],
                           ['extraAuthorizeParameters']]
        if 'claims' in self._idp and 'preferred_username' in self._idp[
                'claims']:
            pref_user = self._idp['claims'].pop('preferred_username')
            self._idp['claims']['preferredUsername'] = pref_user
        if 'urls' in self._idp and 'user_info' in self._idp['urls']:
            user_info = self._idp['urls'].pop('user_info')
            self._idp['urls']['userInfo'] = user_info
        if 'extra_scopes' in self._idp:
            self._idp['extraScopes'] = self._idp.pop('extra_scopes')
        if 'extra_authorize_parameters' in self._idp:
            self._idp['extraAuthorizeParameters'] = self._idp.pop(
                'extra_authorize_parameters')

        if 'extraAuthorizeParameters' in self._idp:
            if 'include_granted_scopes' in self._idp[
                    'extraAuthorizeParameters']:
                val = ansible_bool(self._idp['extraAuthorizeParameters'].pop(
                    'include_granted_scopes'))
                self._idp['extraAuthorizeParameters'][
                    'include_granted_scopes'] = val
Exemplo n.º 4
0
    def __init__(self, api_version, idp):
        if api_version not in ['v1']:
            raise errors.AnsibleFilterError("|failed api version {0} unknown".format(api_version))

        self._idp = copy.deepcopy(idp)

        if 'name' not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a name")

        if 'kind' not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a kind")

        self.name = self._idp.pop('name')
        self.login = ansible_bool(self._idp.pop('login', False))
        self.challenge = ansible_bool(self._idp.pop('challenge', False))
        self.provider = dict(apiVersion=api_version, kind=self._idp.pop('kind'))

        self._required = [['mappingMethod', 'mapping_method']]
        self._optional = []
        self._allow_additional = True
Exemplo n.º 5
0
    def __init__(self, api_version, idp):
        if api_version not in ['v1']:
            raise errors.AnsibleFilterError("|failed api version {0} unknown".format(api_version))

        self._idp = copy.deepcopy(idp)

        if 'name' not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a name")

        if 'kind' not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a kind")

        self.name = self._idp.pop('name')
        self.login = ansible_bool(self._idp.pop('login', False))
        self.challenge = ansible_bool(self._idp.pop('challenge', False))
        self.provider = dict(apiVersion=api_version, kind=self._idp.pop('kind'))

        self._required = [['mappingMethod', 'mapping_method']]
        self._optional = []
        self._allow_additional = True
    def __init__(self, api_version, idp):
        if api_version not in ["v1"]:
            raise errors.AnsibleFilterError("|failed api version {0} unknown".format(api_version))

        self._idp = copy.deepcopy(idp)

        if "name" not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a name")

        if "kind" not in self._idp:
            raise errors.AnsibleFilterError("|failed identity provider missing a kind")

        self.name = self._idp.pop("name")
        self.login = ansible_bool(self._idp.pop("login", False))
        self.challenge = ansible_bool(self._idp.pop("challenge", False))
        self.provider = dict(apiVersion=api_version, kind=self._idp.pop("kind"))

        self._required = [["mappingMethod", "mapping_method"]]
        self._optional = []
        self._allow_additional = True
    def __init__(self, api_version, idp):
        IdentityProviderBase.__init__(self, api_version, idp)
        self._allow_additional = False
        self._required += [["attributes"], ["url"], ["insecure"]]
        self._optional += [["ca"], ["bindDN", "bind_dn"], ["bindPassword", "bind_password"]]

        self._idp["insecure"] = ansible_bool(self._idp.pop("insecure", False))

        if "attributes" in self._idp and "preferred_username" in self._idp["attributes"]:
            pref_user = self._idp["attributes"].pop("preferred_username")
            self._idp["attributes"]["preferredUsername"] = pref_user
Exemplo n.º 8
0
    def __init__(self, api_version, idp):
        IdentityProviderBase.__init__(self, api_version, idp)
        self._allow_additional = False
        self._required += [['attributes'], ['url'], ['insecure']]
        self._optional += [['ca'],
                           ['bindDN', 'bind_dn'],
                           ['bindPassword', 'bind_password']]

        self._idp['insecure'] = ansible_bool(self._idp.pop('insecure', False))

        if 'attributes' in self._idp and 'preferred_username' in self._idp['attributes']:
            pref_user = self._idp['attributes'].pop('preferred_username')
            self._idp['attributes']['preferredUsername'] = pref_user
Exemplo n.º 9
0
    def __init__(self, api_version, idp):
        IdentityProviderBase.__init__(self, api_version, idp)
        self._allow_additional = False
        self._required += [['attributes'], ['url'], ['insecure']]
        self._optional += [['ca'], ['bindDN', 'bind_dn'],
                           ['bindPassword', 'bind_password']]

        self._idp['insecure'] = ansible_bool(self._idp.pop('insecure', False))

        if 'attributes' in self._idp and 'preferred_username' in self._idp[
                'attributes']:
            pref_user = self._idp['attributes'].pop('preferred_username')
            self._idp['attributes']['preferredUsername'] = pref_user
    def __init__(self, api_version, idp):
        IdentityProviderOauthBase.__init__(self, api_version, idp)
        self._required += [["claims"], ["urls"]]
        self._optional += [["ca"], ["extraScopes"], ["extraAuthorizeParameters"]]
        if "claims" in self._idp and "preferred_username" in self._idp["claims"]:
            pref_user = self._idp["claims"].pop("preferred_username")
            self._idp["claims"]["preferredUsername"] = pref_user
        if "urls" in self._idp and "user_info" in self._idp["urls"]:
            user_info = self._idp["urls"].pop("user_info")
            self._idp["urls"]["userInfo"] = user_info
        if "extra_scopes" in self._idp:
            self._idp["extraScopes"] = self._idp.pop("extra_scopes")
        if "extra_authorize_parameters" in self._idp:
            self._idp["extraAuthorizeParameters"] = self._idp.pop("extra_authorize_parameters")

        if "extraAuthorizeParameters" in self._idp:
            if "include_granted_scopes" in self._idp["extraAuthorizeParameters"]:
                val = ansible_bool(self._idp["extraAuthorizeParameters"].pop("include_granted_scopes"))
                self._idp["extraAuthorizeParameters"]["include_granted_scopes"] = val
Exemplo n.º 11
0
    def __init__(self, api_version, idp):
        IdentityProviderOauthBase.__init__(self, api_version, idp)
        self._required += [['claims'], ['urls']]
        self._optional += [['ca'],
                           ['extraScopes'],
                           ['extraAuthorizeParameters']]
        if 'claims' in self._idp and 'preferred_username' in self._idp['claims']:
            pref_user = self._idp['claims'].pop('preferred_username')
            self._idp['claims']['preferredUsername'] = pref_user
        if 'urls' in self._idp and 'user_info' in self._idp['urls']:
            user_info = self._idp['urls'].pop('user_info')
            self._idp['urls']['userInfo'] = user_info
        if 'extra_scopes' in self._idp:
            self._idp['extraScopes'] = self._idp.pop('extra_scopes')
        if 'extra_authorize_parameters' in self._idp:
            self._idp['extraAuthorizeParameters'] = self._idp.pop('extra_authorize_parameters')

        if 'extraAuthorizeParameters' in self._idp:
            if 'include_granted_scopes' in self._idp['extraAuthorizeParameters']:
                val = ansible_bool(self._idp['extraAuthorizeParameters'].pop('include_granted_scopes'))
                self._idp['extraAuthorizeParameters']['include_granted_scopes'] = val