州通判、开封府推官。出知洪州（今江西省南昌市），修筑长江石堤，防止水患，整顿吏治。加直集贤院、知青州（今山东省青州市），不久罢官。后来复官担任监密州（今山东省诸城市）酒、知滁州（今安徽省滁州市）。入京修起居注，纠察在京刑狱、知制诰、翰林学士。曾同包拯共审冷青一案。皇祐三年（1051年）出使契丹国，兼侍读学士。以龙图阁学士知郓州（今山东省东平县）、应天府（治所在今河南省商丘市），为御史中丞。嘉祐五年（1060年），擢升为枢密使，嘉祐六年（1061年），拜参知政事。宋英宗时，多次因为年老请求辞官。宋神宗熙宁