def test_list_user(self): name1 = self.get_user_name() rc = nimbus_new_user.main([name1]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) name2 = self.get_user_name() rc = nimbus_new_user.main([name2]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) name3 = self.get_user_name() rc = nimbus_new_user.main([name3]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) rc = nimbus_list_users.main(["-b", "-r", "display_name", "-O", outFileName, '%']) rc = self.find_in_file(outFileName, name1) self.assertTrue(rc) rc = self.find_in_file(outFileName, name2) self.assertTrue(rc) rc = self.find_in_file(outFileName, name3) self.assertTrue(rc) os.unlink(outFileName)
def test_make_user_twice(self): friendly_name = self.get_user_name() rc = nimbus_new_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) rc = nimbus_new_user.main([friendly_name]) self.assertNotEqual(rc, 0, "should be 0 %d" % (rc)) rc = nimbus_remove_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc))
def test_db_commit_user(self): # insert a new user with an error friendly_name = self.get_user_name(friendly_name="*****@*****.**") rc = nimbus_new_user.main(["--cert", "none", "--key", "none", friendly_name]) self.assertNotEqual(rc, 0, "we expect this one to fail %d" % (rc)) # insert the user without the error to make sure the previous was rolled back friendly_name = self.get_user_name(friendly_name="*****@*****.**") rc = nimbus_new_user.main([friendly_name]) self.assertEqual(rc, 0, "but then this clarification should succeed %d" % (rc))
def test_rest_users(self): for i in range(0, 10): friendly_name = self.get_user_name() rc = nimbus_new_user.main([friendly_name]) self.assertEqual(rc, 0, "should not be 0 %d" % (rc)) dbobj = DB(con_str=self.dbenv) rc = nimbus_reset_state.main(["-u", "-f"]) self.assertEqual(rc, 0) # make sure that none are in there allu = User.find_user_by_friendly(dbobj, '%') self.assertEqual(list(allu), 0)
def test_make_remove_canid_user(self): uu = str(uuid.uuid1()) friendly_name = self.get_user_name() rc = nimbus_new_user.main(["--canonical-id", uu, friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) rc = nimbus_list_users.main(["-b", "-r", "canonical_id", "-O", outFileName, "%"]) rc = self.find_in_file(outFileName, uu) self.assertTrue(rc) rc = nimbus_remove_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc))
def test_new_user(self): friendly_name = self.get_user_name() (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) rc = nimbus_new_user.main([friendly_name]) self.assertNotEqual(rc, 0, "should not be 0 %d" % (rc)) # make sure the user was not added os.environ["NIMBUS_HOME"] = self.nh rc = nimbus_list_users.main(["-b", "-r", "display_name", "-O", outFileName, friendly_name]) rc = self.find_in_file(outFileName, friendly_name) self.assertFalse(rc)
def test_new_user(self): friendly_name = self.get_user_name() (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) rc = nimbus_new_user.main([friendly_name]) self.assertNotEqual(rc, 0, "should not be 0 %d" % (rc)) # make sure the user was not added os.environ['NIMBUS_HOME'] = self.nh rc = nimbus_list_users.main( ["-b", "-r", "display_name", "-O", outFileName, friendly_name]) rc = self.find_in_file(outFileName, friendly_name) self.assertFalse(rc)
def test_make_remove_canid_user(self): uu = str(uuid.uuid1()) friendly_name = self.get_user_name() rc = nimbus_new_user.main(["--canonical-id", uu, friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) rc = nimbus_list_users.main(["-b", "-r", "canonical_id", "-O", outFileName, '%']) rc = self.find_in_file(outFileName, uu) self.assertTrue(rc) rc = nimbus_remove_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc))
def test_no_s3(self): friendly_name = self.get_user_name() (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) s3id = str(uuid.uuid1()) s3pw = str(uuid.uuid1()) rc = nimbus_new_user.main(["--nocert", "-b", "-r", "cert,key,dn", "-O", outFileName, friendly_name]) needle = "None,None,None" rc = self.find_in_file(outFileName, needle) os.unlink(outFileName) self.assertTrue(rc) rc = nimbus_remove_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc))
def test_complex_dn(self): friendly_name = self.get_user_name() rc = nimbus_new_user.main(["-n", "%s/Email=%[email protected]" % (friendly_name, friendly_name), friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) users = self._get_users() found = False for u in users: if users[u]["display_name"] == friendly_name: found = True self.assertEqual( users[u]["dn"], "/O=Auto/OU=CA/CN=%s/Email=%[email protected]" % (friendly_name, friendly_name) ) self.assertTrue(found) rc = nimbus_remove_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc))
def new_user(user, opts): args = ['-s', user['dn'], '-i', user['canonical_id'], '-a', user['access_id'], '-p', user['access_secret'], '-g', _fix_group(user['group']), '-P', '-q', user['display_name']] pynimbusauthz.print_msg(opts, 2, "Calling nimbus-new-user with args: " + str(args)) if opts.dryrun: return "ADDED" ok = False try: ok = nimbus_new_user.main(args) == 0 except: pynimbusauthz.print_msg(opts, 2, "Error: " + traceback.format_exc()) return ok and "ADDED" or "ADD_FAILED"
def test_new_user_s3ids(self): friendly_name = self.get_user_name() (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) s3id = str(uuid.uuid1()) s3pw = str(uuid.uuid1()) rc = nimbus_new_user.main(["-a", s3id, "-p", s3pw, "-b", "-r", "access_id,access_secret", "-O", outFileName, friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) needle = "%s,%s" % (s3id, s3pw) print needle rc = self.find_in_file(outFileName, needle) os.unlink(outFileName) self.assertTrue(rc) rc = nimbus_remove_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc))
def new_user(user, opts): args = [ '-s', user['dn'], '-i', user['canonical_id'], '-a', user['access_id'], '-p', user['access_secret'], '-g', _fix_group(user['group']), '-P', '-q', user['display_name'] ] pynimbusauthz.print_msg(opts, 2, "Calling nimbus-new-user with args: " + str(args)) if opts.dryrun: return "ADDED" ok = False try: ok = nimbus_new_user.main(args) == 0 except: pynimbusauthz.print_msg(opts, 2, "Error: " + traceback.format_exc()) return ok and "ADDED" or "ADD_FAILED"
def test_complex_dn(self): friendly_name = self.get_user_name() rc = nimbus_new_user.main([ "-n", "%s/Email=%[email protected]" % (friendly_name, friendly_name), friendly_name ]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) users = self._get_users() found = False for u in users: if users[u]['display_name'] == friendly_name: found = True self.assertEqual( users[u]['dn'], '/O=Auto/OU=CA/CN=%s/Email=%[email protected]' % (friendly_name, friendly_name)) self.assertTrue(found) rc = nimbus_remove_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc))
def test_remove_user(self): friendly_name = self.get_user_name() (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) # add a good user os.environ["NIMBUS_HOME"] = self.nh rc = nimbus_new_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) os.environ["NIMBUS_HOME"] = "/nope" # remove with an error rc = nimbus_remove_user.main([friendly_name]) self.assertNotEqual(rc, 0, "should not be 0 %d" % (rc)) # relist to see user is still there os.environ["NIMBUS_HOME"] = self.nh rc = nimbus_list_users.main(["-b", "-r", "display_name", "-O", outFileName, friendly_name]) self.assertEqual(rc, 0, "should not be 0 %d" % (rc)) rc = self.find_in_file(outFileName, friendly_name) self.assertTrue(rc)
def test_remove_user(self): friendly_name = self.get_user_name() (tmpFD, outFileName) = tempfile.mkstemp("cumulustests") os.close(tmpFD) # add a good user os.environ['NIMBUS_HOME'] = self.nh rc = nimbus_new_user.main([friendly_name]) self.assertEqual(rc, 0, "should be 0 %d" % (rc)) os.environ['NIMBUS_HOME'] = "/nope" # remove with an error rc = nimbus_remove_user.main([friendly_name]) self.assertNotEqual(rc, 0, "should not be 0 %d" % (rc)) # relist to see user is still there os.environ['NIMBUS_HOME'] = self.nh rc = nimbus_list_users.main( ["-b", "-r", "display_name", "-O", outFileName, friendly_name]) self.assertEqual(rc, 0, "should not be 0 %d" % (rc)) rc = self.find_in_file(outFileName, friendly_name) self.assertTrue(rc)