汉昭帝的皇后上官氏是陇西(今甘肃省天水市西南)人,上官桀的孙女,也是霍光的外孙女。她在年幼的六岁时期就嫁给了十一岁的汉昭帝,可惜的是汉昭帝病死的早,那时上官氏才十五岁,由于继位的汉宣帝刘询比汉昭帝小两辈,因此要叫上官氏为太皇太后,太皇太后上官氏最终守寡四十年,死于长乐宫。
公元前87年(后元二年)二月,汉武帝驾崩,年仅八岁的皇太子刘弗陵继位为汉昭帝。昭帝年仅八岁,未谙世事,于是,群臣商量决定由鄂邑公主养护昭帝,并以昭帝的名义下诏,尊鄂邑公主为鄂邑长公主,让她入住皇宫,养护昭帝。
汉武帝遗命霍光为大司马大相国,金日磾为车骑将军,桑弘羊为御史大夫,上官桀为左将国,共同辅佐皇太子,三年后顾命大臣金日磾去世,霍、上官两家结亲,霍光的女儿嫁给上官桀的儿子上官安为妻。由于这层关系,上官桀的权势仅次于霍光。
尽管如此上官父子犹不满足,仍然寻找一切机会千方百计的往上爬,他们讨好昭帝的姐姐鄂邑长公主,并取得信任。
昭帝年十二岁拟立皇后,鄂邑长公主为其选皇后,钓挑选,最后,鄂邑长公主看中了一个姓周的女孩,打算让昭帝娶其为后。上官安的女儿当时年仅六岁,上官安早就有心让女儿入主后宫,上官桀更是如此,父以女贵的这个道理,这聪明的父子自然明白,。上官父子见公主选了周家女儿入宫,上官安便风风火火地去找岳父大人霍光,恳求岳父出面,让自己的女儿,即霍光的外孙女入主后宫。霍光也有他的打算,一来他觉得昭帝还是个乳臭未干的毛孩子,还不到立皇后的年龄;二来外孙女也太小,另外,他也不愿让上官安的后代做皇帝,尽管是她的外孙女,故没有答应。
上官安的妻子霍氏(霍光的女儿)仍不死心,知道汉昭帝是他的姐姐长公主(即鄂邑长公主)养大的,对鄂邑长公主的话,言听计从,更通过鄂邑长公主的情夫丁外人的关系,上官安讨好地对丁外人说:“听说公主有选立皇后的打算,我有个女儿,容貌端丽,请长公主垂爱。这事成与不成,全仰仗阁下。汉家惯例,列侯尚公主,阁下何愁不封侯?”丁外喜,这是两全其美的好事,想凭自己与公主的关系,这还是是小事一件吗。于是他马上去找鄂邑长公主,长公主对丁外人向来是言听计从,于是二话不说遂改初衷,答应立上官安之女为皇后。
随即六岁的上官氏被迎入皇宫,封为婕妤。婕妤是后宫中的第二等级,位次于皇后位视上卿,爵比例侯,于公元前83年,上官氏封为皇后,成为汉代年龄最小的一位皇后。上官氏年公六岁就结婚,自然没有生育能力,
上官父子感恩丁外人,上官安天天去为丁外人求封,霍光就是不答应。无奈上官安只得退一步恳求霍光给丁外人一封光禄大夫,霍光仍不答应。上官父子极为恼怒。
鄂邑长公主听说霍光拒绝封她的情夫,也甚为怨恨。
于是联合对霍光心怀怨恨的四顾全大臣之一的桑弘羊,并拉拢上燕王,联合一起,准备除去霍光,他们收集霍光的材料,由燕王刘旦遣人上疏,霍光道:“霍光去了长安东的广明亭检阅御林军,道上驻跸,太官供备的包含,僭用了一辈子礼仪;他任人唯亲,长吏杨敞无才无功,却封其为搜栗都尉;霍光专权自恣,擅自调动校尉。臣怀疑他图谋不轨。臣愿归王玺,宿卫京师,保卫皇上。”不料,昭帝识破了他们的计谋,把燕王的奏疏留下,不肯下发。
上官桀一伙仍不甘心失败,决定铤而走险。他们密谋后定计:由鄂邑长公主出面请霍光,伏兵格杀霍光,同时除掉燕王刘旦,废除昭帝,拥立上官桀为帝。
不料,他们的阴谋被稻田使者燕仓听到,后又奏告昭帝与霍光,霍光发兵,果敢地逮杀上官父子、丁外人,燕王刘旦、鄂邑长公主身亡。
上官皇后年仅八岁,没有参与祖父的阴谋活动,加上她是霍光的外孙女,所以不但保全了性命,而且皇后的凤冠也没有被摘掉,这场后,朝政安定。
霍光的政敌在这场中均被铲除,为了待续霍氏家族与刘氏家族的皇亲关系,霍光急于想让外孙女生个皇储,此时宫廷的一切大权全由霍光把持,所以大臣和御医都看霍光的眼色行事,他们领会霍光的用意,马上上书昭帝,建议皇帝除上皇后外,应当少近女色才能保证龙体安康。于是他们让皇后下一道命令,为了龙体圣安,后宫的宫女不得侍宿皇上,这样除了上官皇后外,后宫佳丽没人侍宿昭帝。可惜,虽然上官皇后专房擅宠,却没能如愿以偿为昭帝生儿育女。
公元前74年(汉昭帝元平元年),昭帝死,因为没有儿子,遂立汉武帝的孙子昌邑王刘贺(李夫人的孙子)为帝,尊上官氏为皇太后。移居长乐宫。
刘贺荒淫无道,只做了二十七天皇帝,就被霍光废去,另立戾太子(汉武帝与卫子夫的长子刘据)之孙刘病已为汉宣帝,刘病已改名刘询,刘询是汉武帝的曾孙,上官氏论辈份是汉宣帝的祖母,这样,上官氏年仅十五岁,就尊为太皇太后,成为中国历史上最年轻的太皇太后。
从此,上官太皇太后不问政事,在长乐宫中颐养天年。建昭二年(前37年),上官太皇太后寿终正寝,时年五十二岁。与昭帝合葬于平陵。