The problem is right there in your question: You confuse “nice” with “passive.”
It is possible to be as nice as you want without being passive.
There are plenty of assertive people who are very, very nice.
Try becoming more assertive one small step at a time.
For instance, next time someone asks you to do something you don’t want to do, say, “No.”
Don’t water down the “no” by saying “I wish I could” or “If I had the time, I would do it,” or anything like that.
Like if someone says, “Would you consider swapping parking spaces with me while I am pregnant so I don’t have as far to walk?” and IF you don’t want to do that, just say, “No.”
DON’T say, “No, I got that parking space because of a medical condition,” or “No, I think exercise is good for pregnant women,” or anything else. Just no, I won’t. Or, better yet, “No, I like parking near the door.”
Say this pleasantly, without meanness or indignation, AND without being apologetic. And then change the subject, making it clear that you are giving an answer, not agreeing to initiate a debate.
More mini-assertions:
Your son asks you to pass the remote. You say, “No, I’m watching this show.”
Your skinny dinner partner suggests you share a dessert. You say, “No, I want a whole slice of pie.”
A stranger on the phone asks you to solicit your neighbors for charitable donations. You say, “No, I don’t do that.”
Once you’ve asserted yourself on a couple of little things, it will get easier to speak up for yourself on bigger things.
Remember: You can still be “nice.” And you can also still say “YES”—but only when you WANT to.