Пример #1
0
        private string AddSasToUser(WebPortfolioContext _context, string username)
        {
            // Search the user which has added recently
            Users addedUser = (from u in _context.Users
                               where u.Username == username
                               select u).FirstOrDefault();

            // Storage account
            var storageAccount = CloudStorageAccount.Parse(connectionString);

            // Generate a SAS token for the user's container/object to Webportfolio's Storage Account
            SharedAccessAccountPolicy policy = new SharedAccessAccountPolicy()
            {
                Permissions = SharedAccessAccountPermissions.Write |
                              SharedAccessAccountPermissions.Create |
                              SharedAccessAccountPermissions.Read |
                              SharedAccessAccountPermissions.Delete |
                              SharedAccessAccountPermissions.Add |
                              SharedAccessAccountPermissions.List,
                Services               = SharedAccessAccountServices.Blob,
                ResourceTypes          = SharedAccessAccountResourceTypes.Object | SharedAccessAccountResourceTypes.Container,
                SharedAccessStartTime  = DateTime.UtcNow.AddHours(-1),
                SharedAccessExpiryTime = DateTime.UtcNow.AddHours(1),
                Protocols              = SharedAccessProtocol.HttpsOnly,
            };
            string sasToken = storageAccount.GetSharedAccessSignature(policy);

            // Save the SAS token to database
            addedUser.SasToken = sasToken;
            _context.SaveChanges();

            return(sasToken);
        }
 public PortfolioContentController(WebPortfolioContext context)
 {
     _context = context;
 }
Пример #3
0
 public SocialMediaController(WebPortfolioContext context)
 {
     _context = context;
 }
Пример #4
0
 public ImagesController(WebPortfolioContext context)
 {
     _context = context;
 }
Пример #5
0
 public UserController(IOptions <Secrets> appkeys, WebPortfolioContext context)
 {
     Secrets  = appkeys.Value;
     _context = context;
 }
 public QuestbookController(WebPortfolioContext context)
 {
     _context = context;
 }
 public DocumentationController(WebPortfolioContext context)
 {
     _context = context;
 }
Пример #8
0
 public ProjectsController(WebPortfolioContext context)
 {
     _context = context;
 }
Пример #9
0
 public SkillsController(WebPortfolioContext context)
 {
     _context = context;
 }