Apache Atlas介绍
Apache Atlas是托管于Apache旗下的一款元数据管理和治理的产品,Apache Atlas提供api和一系列插件可以方便将数据库元数据信息导入到atlas中进行分析,atlas也提供web界面对元数据进行管理,通过atlas,企业可以对数据库元数据建立资产目录,并对这些资产进行分类和治理,为数据分析,数据治理提供高质量的元数据信息。
什么是元数据
企业内部可能运行多种类型数据库,从大类上可以分,大数据平台,sql数据库,nosql数据库,图数据库等,从具体的数据库类型可能是mysql,oracle,mongodb等,不管是什么类型的数据库,终归都是一个目的,存储数据,对怎么管理数据每个数据库有每个数据库的方式,以oracle为例
- schema是一组数据库对象的集合
- table是存储数据的实体
- column列表示数据库的每个属性
- view视图表示虚拟表,表示一组查询的逻辑集合
- materialview物化视图则是对视图的实体化
- 同义词表示数据库对象的别名
- …等等
Read the rest of this entry
atlas
背景
某项目接口采用plsql开发,接口返回用户密码,但要求密码不能是明文返回,因为程序内部需要用到明文密码,所以只能在plsql中对密码进行对称加密,在程序内部进行解密,程序采用java开发。
实现
dbms_crypto是oracle自带的加密包,包含多种加密解密方法,非dba用户需要授权才能进行使用
grant execute on dbms_crypto to xxx;
下面是一个通过DES
算法加密的function
function encrypt_password(p_password in varchar2) return varchar2 is
v_key varchar2(32) := 'TucM2fYDaxnd1UeRL7HVvyshXvXaMKO9';
v_encrypted_raw RAW(256);
begin
v_encrypted_raw := dbms_crypto.Encrypt(src => UTL_RAW.CAST_TO_RAW(p_password),
typ => DBMS_CRYPTO.DES_CBC_PKCS5,
iv=>UTL_RAW.CAST_TO_RAW('12345678'),
key => UTL_RAW.CAST_TO_RAW(v_key));
return utl_raw.cast_to_varchar2(utl_encode.base64_encode(v_encrypted_raw));
end;
DES