您可以通过给阿里云创建RAM用户并授予STS权限策略,将DAS控制台免登录嵌套到自建的运维平台中。本文将介绍相关操作步骤。

前提条件

已经创建RAM用户并授予STS权限策略,详情请参见配置RAM用户授权

操作步骤

  1. 通过AssumeRole接口获取用户临时身份。
    说明
  2. 使用安全令牌获取登录令牌。
    说明 :TicketType主要分为normalmini
  3. 构造访问DAS页面免登录链接。
    1. 构造URL格式如下:
      https://signin.aliyun.com/federation?Action=Login                      
      &LoginUrl=<登录失效跳转的地址,一般配置为自建WEB配置302跳转的URL>                      
      &Destination=<实际访问 DAS 服务页面>                      
      &SigninToken=<获取的登录TOKEN>
      说明 Destination对应的DAS服务页面,受到步骤二中的TicketType参数影响。
      • normal对应的DAS域名:https://hdm.console.aliyun.com
      • mini应用于BID虚商对应的DAS域名:https://hdm4service.console.aliyun.com
    2. 如果要嵌入DAS的监控大盘,Destination可以设置为:https://hdm.console.aliyun.com/?hideTopbar=true&isShare=true&hideMenu=true#/dashboard/convoy
      说明 #前面的 isShare=truehideTopbar=true 是必选参数。
      参数 说明
      isShare=true 外部控制台嵌入需要。
      hideTopbar=true 隐藏DAS阿里云控制台边栏。
      hideMenu=true 隐藏DAS外部菜单。
      hideInstanceMenu=true 隐藏DAS实例详情页边栏和外部边栏。
    3. 参考代码如下:
      private static String getHdmLoginUrl(String pageUrl, String signInToken) throws URISyntaxException {  
      URIBuilder builder = new URIBuilder(SIGN_IN_DOMAIN);  
      builder.setParameter("Action", "Login");  
      // 登录失效跳转的地址,一般配置为自建WEB配置302跳转的URL  
      builder.setParameter("LoginUrl", "https://signin.aliyun.com/login.htm");  
      // 实际访问 DAS 的页面,比如全局大盘,实时大盘,某个实例详情等  
      builder.setParameter("Destination", pageUrl);  
      builder.setParameter("SigninToken", signInToken);  
      HttpGet request = new HttpGet(builder.build());  
      return request.getURI().toString();}