def next_page(self, load_page_callback): if self.method == 'ad': retval = serverconf.auth_dialog(_('Authentication Required'), _('Please, provide administration credentials for the Active Directory.')) self.server_conf.get_ad_conf().set_user(retval[0]) self.server_conf.get_ad_conf().set_passwd(retval[1]) messages = [] if self.method == 'ad': if not self.server_conf.get_ad_conf().validate(): messages.append({'type': 'error', 'message': 'Please, check the Active Directory parameters.'}) else: if not self.server_conf.get_ldap_conf().validate(): messages.append({'type': 'error', 'message': 'Please, check the LDAP parameters.'}) result = len(messages) == 0 if result == True: result, messages = serverconf.setup_server( server_conf=self.server_conf, link_ldap=self.link_ldap, link_ad=self.link_ad ) load_page_callback(LinkToServerResultsPage, { 'result': result, 'server_conf': self.server_conf, 'messages': messages })
def next_page(self, load_page_callback): auth_conf = self.server_conf.get_auth_conf() auth_conf.set_auth_type(self.method) auth_conf.set_auth_link(True) messages = [] result = True if self.method == 'ad': retval = serverconf.auth_dialog( _('Authentication Required'), _('Please, provide administration credentials for the Active Directory.' )) if self.server_conf.get_auth_conf().get_auth_type() == 'ldap': self.server_conf.get_auth_conf().set_auth_type('ad') ad_conf = self.server_conf.get_auth_conf().get_auth_properties() ad_conf.get_ad_properties().set_user_ad(retval[0]) ad_conf.get_ad_properties().set_passwd_ad(retval[1]) ad_conf.set_specific_conf(False) ad_conf.get_ad_properties().set_domain( self.ui.txtDomain.get_text()) ad_conf.get_ad_properties().set_workgroup( self.ui.txtWorkgroup.get_text()) if not auth_conf.get_auth_properties().validate(): messages.append({ 'type': 'error', 'message': 'Please, check the Active Directory parameters.' }) result = False else: if self.server_conf.get_auth_conf().get_auth_type() == 'ad': self.server_conf.get_auth_conf().set_auth_type('ldap') ldap_conf = self.server_conf.get_auth_conf().get_auth_properties() ldap_conf.set_url(self.ui.txtUrlLDAP.get_text()) ldap_conf.set_basedn(self.ui.txtBaseDN.get_text()) ldap_conf.set_basedngroup(self.ui.txtBaseDNGroup.get_text()) ldap_conf.set_binddn(self.ui.txtBindDN.get_text()) ldap_conf.set_password(self.ui.txtPassword.get_text()) if not ldap_conf.validate(): messages.append({ 'type': 'error', 'message': 'Please, check the LDAP parameters.' }) result = False load_page_callback(LinkToServerResultsPage, { 'result': result, 'messages': messages })
def next_page(self, load_page_callback): auth_conf = self.server_conf.get_auth_conf() auth_conf.set_auth_type(self.method) auth_conf.set_auth_link(True) messages = [] result = True if self.method == 'ad': retval = serverconf.auth_dialog(_('Authentication Required'), _('Please, provide administration credentials for the Active Directory.')) if self.server_conf.get_auth_conf().get_auth_type() == 'ldap': self.server_conf.get_auth_conf().set_auth_type('ad') ad_conf = self.server_conf.get_auth_conf().get_auth_properties() ad_conf.get_ad_properties().set_user_ad(retval[0]) ad_conf.get_ad_properties().set_passwd_ad(retval[1]) ad_conf.set_specific_conf(False) ad_conf.get_ad_properties().set_domain(self.ui.txtDomain.get_text()) ad_conf.get_ad_properties().set_workgroup(self.ui.txtWorkgroup.get_text()) if not auth_conf.get_auth_properties().validate(): messages.append({'type': 'error', 'message': 'Please, check the Active Directory parameters.'}) result = False else: if self.server_conf.get_auth_conf().get_auth_type() == 'ad': self.server_conf.get_auth_conf().set_auth_type('ldap') ldap_conf = self.server_conf.get_auth_conf().get_auth_properties() ldap_conf.set_url(self.ui.txtUrlLDAP.get_text()) ldap_conf.set_basedn(self.ui.txtBaseDN.get_text()) ldap_conf.set_basedngroup(self.ui.txtBaseDNGroup.get_text()) ldap_conf.set_binddn(self.ui.txtBindDN.get_text()) ldap_conf.set_password(self.ui.txtPassword.get_text()) if not ldap_conf.validate(): messages.append({'type': 'error', 'message': 'Please, check the LDAP parameters.'}) result = False load_page_callback(LinkToServerResultsPage, { 'result': result, 'messages': messages })
def next_page(self, load_page_callback): if self.unlink_ldap == True or self.unlink_ad == True: messages = [] auth_flag = open(__AUTH_FLAG__, 'r') content = auth_flag.read() auth_flag.close() auth_flag_json = json.loads(content) server_conf = serverconf.get_server_conf(None) server_conf.get_auth_conf().set_auth_type( auth_flag_json['auth_type']) if auth_flag_json['auth_type'] == 'ad': retval = serverconf.auth_dialog( _('Authentication Required'), _('Please, provide administration credentials for the Active Directory.' )) ad_conf = server_conf.get_auth_conf().get_auth_properties() ad_conf.get_ad_properties().set_user_ad(retval[0]) ad_conf.get_ad_properties().set_passwd_ad(retval[1]) messages += serverconf.unlink_from_sssd() result = len(messages) == 0 if result: server_conf = serverconf.get_server_conf(None) auth_conf = server_conf.get_auth_conf() content = serverconf.get_json_content() if content != None: auth_conf_cached = AuthConf.AuthConf() auth_conf_cached.load_data(content['auth']) server_conf.set_auth_conf(auth_conf_cached) else: server_conf.set_auth_conf(AuthConf.AuthConf()) if self.unlink_ldap: auth_conf.set_auth_type('ldap') #os.remove(__LDAP_FLAG__) else: auth_conf.set_auth_type('ad') #os.remove(__AD_FLAG__) auth_conf.set_auth_link(False) load_page_callback(LinkToServerResultsPage, { 'result': True, 'messages': None }) return if self.ui.radioNone.get_active() or (self.ldap_is_configured or self.ad_is_configured): if self.ui.radioNone.get_active(): server_conf = serverconf.get_server_conf(None) server_conf.set_auth_conf(AuthConf.AuthConf()) self.emit('status-changed', 'linkToServer', True) load_page_callback(firstboot.pages.localUsers) return self.show_status() try: if len(socket.gethostname()) > 15: raise Exception( _("The hostname can't not be longer than 15 characters")) server_conf = serverconf.get_server_conf(None) load_page_callback( LinkToServerConfEditorPage, { 'ldap_is_configured': self.ldap_is_configured, 'auth_method': self.get_auth_method(), 'ad_is_configured': self.ad_is_configured, }) except serverconf.ServerConfException as e: self.show_status(__STATUS_ERROR__, e) except Exception as e: self.show_status(__STATUS_ERROR__, e)