Ejemplo n.º 1
0
Status Command::checkAuthorization(Command* c,
                                   OperationContext* txn,
                                   const std::string& dbname,
                                   const BSONObj& cmdObj) {
    namespace mmb = mutablebson;
    Status status = _checkAuthorizationImpl(c, txn, dbname, cmdObj);
    if (!status.isOK()) {
        log(LogComponent::kAccessControl) << status;
    }
    audit::logCommandAuthzCheck(txn->getClient(), dbname, cmdObj, c, status.code());
    return status;
}
Ejemplo n.º 2
0
Status Command::_checkAuthorization(Command* c,
                                    ClientBasic* client,
                                    const std::string& dbname,
                                    const BSONObj& cmdObj) {
    namespace mmb = mutablebson;
    Status status = _checkAuthorizationImpl(c, client, dbname, cmdObj);
    if (!status.isOK()) {
        log(LogComponent::kAccessControl) << status << std::endl;
    }
    audit::logCommandAuthzCheck(client, dbname, cmdObj, c, status.code());
    return status;
}
Ejemplo n.º 3
0
Status Command::_checkAuthorization(Command* c,
                                    ClientBasic* client,
                                    const std::string& dbname,
                                    const BSONObj& cmdObj,
                                    bool fromRepl) {
    namespace mmb = mutablebson;
    Status status = _checkAuthorizationImpl(c, client, dbname, cmdObj, fromRepl);
    if (!status.isOK()) {
        log() << status << std::endl;
    }
    mmb::Document cmdToLog(cmdObj, mmb::Document::kInPlaceDisabled);
    c->redactForLogging(&cmdToLog);
    audit::logCommandAuthzCheck(client,
                                NamespaceString(c->parseNs(dbname, cmdObj)),
                                cmdToLog,
                                status.code());
    return status;
}